學會使用linux中的vsftpd服務

內(nèi)容要點:

創(chuàng)新互聯(lián)公司長期為數(shù)千家客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為鳳臺企業(yè)提供專業(yè)的成都網(wǎng)站設計、成都網(wǎng)站建設,鳳臺網(wǎng)站改版等技術服務。擁有十多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

一、vsftpd概述

二、ftp、sftp、vsftp、vsftpd這四個的區(qū)別

三、匿名用戶登陸ftp

四、利用本地用戶登錄ftp

五、建立虛擬用戶賬戶使用ftp

一、vsftpd概述

vsftpd 是“very secure FTP daemon”的縮寫,安全性是它的一個最大的特點。vsftpd 是一個 UNIX 類操作系統(tǒng)上運行的服務器的名字,它可以運行在諸如 Linux、BSD、Solaris、 HP-UNIX等系統(tǒng)上面,是一個完全免費的、開放源代碼的ftp服務器軟件,支持很多其他的 FTP 服務器所不支持的特征。


1、特點

非常高的安全性需求、帶寬限制、良好的可伸縮性、可創(chuàng)建虛擬用戶、支持IPv6、速率高
小巧輕快,安全易用。


二、ftp、sftp、vsftp、vsftpd這四個的區(qū)別

  • ftp?是File Transfer Protocol的縮寫,文件傳輸協(xié)議,用于在網(wǎng)絡上進行文件傳輸?shù)囊惶讟藴蕝f(xié)議,使用客戶/服務器模式。它屬于網(wǎng)絡傳輸協(xié)議的應用層。

  • sftp?是SSH File Transfer Protocol的縮寫,安全文件傳輸協(xié)議;

  • vsftp?是一個基于GPL發(fā)布的類Unix系統(tǒng)上使用的ftp服務器軟件,它的全稱是Very Secure FTP從此名稱可以看出來,編制者的初衷是代碼的安全;

  • vsftpd?是very secure FTP daemon的縮寫,安全性是它的一個最大的特點。vsftpd 是一個 UNIX 類操作系統(tǒng)上運行的服務器的名字,它可以運行在諸如 Linux、BSD、Solaris、 HP-UNIX等系統(tǒng)上面,是一個完全免費的、開放源代碼的ftp服務器軟件;


三,匿名用戶登錄ftp(文件在/var/ftp)


1,安裝vsftpd服務

[root@localhost?~]#?yum?install?vsftpd?-y???##安裝服務
[root@localhost?~]#?cd?/etc/vsftpd/????##此目錄是配置文件目錄
[root@localhost?vsftpd]#?ls
ftpusers??user_list??vsftpd.conf??vsftpd_conf_migrate.sh
[root@localhost?vsftpd]#?systemctl?start?vsftpd?????##開啟vsftpd服務[root@localhost?vsftpd]#?systemctl?stop?firewalld.service????##關閉防火墻[root@localhost?vsftpd]#?setenforce?0????##關閉增強功能
[root@localhost?vsftpd]#?ls?/var/ftp/????????##切換到ftp目錄下pub
[root@localhost?vsftpd]#?echo?"this?is?test"?>?/var/ftp/test.txt???##添加一個文本文件


2,用測試機cmd訪問vsftpd服務(cmd連接ftp)并下載文件

C:\Users\xy007>ftp?192.168.13.140????##訪問ftp服務
連接到?192.168.13.140。
220?(vsFTPd?3.0.2)
200?Always?in?UTF8?mode.
用戶(192.168.13.140:(none)):?ftp???????##匿名訪問
331?Please?specify?the?password.
密碼:????????????????????????????????????????????????##密碼無?回車
230?Login?successful.
ftp>?pwd????????????##查看當前路徑
257?"/"???????????????##ftp服務的根目錄
ftp>?ls?-a???????????##查看目錄中的內(nèi)容
200?PORT?command?successful.?Consider?using?PASV.
150?Here?comes?the?directory?listing.
.
..
pub
test.txt???????????????##服務器中的文件
226?Directory?send?OK.
ftp:?收到?25?字節(jié),用時?0.00秒?25000.00千字節(jié)/秒。
ftp>?get?test.txt??##下載文件到本地(在哪個磁盤的訪問就下載到哪里,可以切換磁盤來下載e:)200?PORT?command?successful.?Consider?using?PASV.
150?Opening?BINARY?mode?data?connection?for?test.txt?(13?bytes).
226?Transfer?complete.
ftp:?收到?13?字節(jié),用時?0.00秒?13000.00千字節(jié)/秒。
ftp>?put?test1.txt???##在c盤中創(chuàng)建一個test1.txt然后上傳到Linux中200?PORT?command?successful.?Consider?using?PASV.
550?Permission?denied.????##此時是權限受限的

學會使用linux中的vsftpd服務


3,修改vsftpd配置文件將匿名訪問開啟最大權限

[root@localhost?ftp]#?cd?/etc/vsftpd/
[root@localhost?vsftpd]#?vim?vsftpd.conf
##在配置文件中查找開啟下列選項
anonymous_enable=YES???????##開啟匿名用戶
local_enable=YES????##本地用戶
write_enable=YES????##寫入權限
local_umask=022?????##本地用戶反掩碼
anon_upload_enable=YES???##上傳權限開啟
anon_mkdir_write_enable=YES???##開啟創(chuàng)建目錄并且能夠寫入
anon_other_write_enable=YES???##添加一個other的重命名和刪除的權限

[root@localhost?vsftpd]#?systemctl?restart?vsftpd??##重啟服務
[root@localhost?vsftpd]#?cd?/var/ftp/????##切換到ftp目錄下
[root@localhost?ftp]#?ls
pub??test.txt
[root@localhost?ftp]#?ls?-l
總用量?4
drwxr-xr-x.?2?root?root??6?10月?31?2018?pub
-rw-r--r--.?1?root?root?13?11月??5?19:14?test.txt
[root@localhost?ftp]#?chmod?777?pub???##將pub目錄權限給最大,注意不能直接給ftp權限最大


4,用測試機cmd訪問ftp并上傳本地文件到Linux上

C:\Users\xy007>ftp?192.168.13.140???##訪問ftp服務
連接到?192.168.13.140。
220?(vsFTPd?3.0.2)
200?Always?in?UTF8?mode.
用戶(192.168.13.140:(none)):?ftp
331?Please?specify?the?password.
密碼:
230?Login?successful.ftp>?cd?pub/?????????????????????????????##切換到pub目錄下250?Directory?successfully?changed.
ftp>?put?test1.txt??????????????????????##上傳文件
200?PORT?command?successful.?Consider?using?PASV.
150?Ok?to?send?data.
226?Transfer?complete.
ftp:?發(fā)送?13?字節(jié),用時?0.03秒?0.41千字節(jié)/秒。
ftp>?by?????##退出
221?Goodbye.
##你也可以使用delete刪除文件


5,查看上傳的文件

[root@localhost?ftp]#?cd?/var/ftp/pub??##切換到pub目錄下
[root@localhost?pub]#?ls?????##查看上傳的文件
test1.txt


四,利用本地用戶登錄ftp(文件在家目錄)

防止本地用戶訪問系統(tǒng)目錄,限制僅訪問用戶家目錄


1,創(chuàng)建系統(tǒng)用戶

[root@localhost?pub]#?useradd?zhangsan???##創(chuàng)建用戶并設置用戶密碼
[root@localhost?pub]#?passwd?zhangsan
[root@localhost?pub]#?useradd?lisi???##創(chuàng)建用戶并設置用戶密碼
[root@localhost?pub]#?passwd?lisi


2,測試機上cmd使用用戶登錄ftp

C:\Users\xy007>ftp?192.168.13.140???##登錄ftp服務
連接到?192.168.13.140。
220?(vsFTPd?3.0.2)
200?Always?in?UTF8?mode.
用戶(192.168.13.140:(none)):?zhangsan???##使用本地用戶
331?Please?specify?the?password.
密碼:230?Login?successful.
ftp>?ls?/???????##查看用戶/下的目錄文件,直接到系統(tǒng)根目錄下
200?PORT?command?successful.?Consider?using?PASV.
150?Here?comes?the?directory?listing.
/bin
/boot
/dev
/etc
/home
/lib
/lib64
/media
/mnt
/opt
/proc
/root
/run
/sbin
/srv
/sys
/tmp
/usr
/var226?Directory?send?OK.
ftp:?收到?126?字節(jié),用時?0.02秒?7.88千字節(jié)/秒。


3,防止本地用戶訪問系統(tǒng)目錄,限制僅訪問用戶家目錄

[root@localhost?pub]#?vim?/etc/vsftpd/vsftpd.conf????##修改配置文件

chroot_local_user=YES???##開啟限制本地訪問系統(tǒng)目錄模塊
allow_writeable_chroot=YES?##添加寫的權限

[root@localhost?pub]#?systemctl?restart?vsftpd???##重啟服務


4,測試機cmd訪問

C:\Users\xy007>ftp?192.168.13.140???##訪問ftp
連接到?192.168.13.140。
220?(vsFTPd?3.0.2)
200?Always?in?UTF8?mode.
用戶(192.168.13.140:(none)):?zhangsan???##用戶zhangsan
331?Please?specify?the?password.
密碼:
230?Login?successful.
ftp>?cd?/????##切換到系統(tǒng)根目錄
250?Directory?successfully?changed.
ftp>?ls?????##查看發(fā)現(xiàn)還是在用戶的家目錄中,訪問不到系統(tǒng)的其他目錄了,增強了安全性200?PORT?command?successful.?Consider?using?PASV.
150?Here?comes?the?directory?listing.
226?Directory?send?OK.


設置允許,拒絕指定用戶訪問ftp

1,設置user-list(默認拒絕),允許或者拒絕特定用戶登錄ftp

[root@localhost?pub]#?cd?/etc/vsftpd/??##切換到vsftpd配置文件目錄
[root@localhost?vsftpd]#?vim?vsftpd.conf

userlist_enable=YES?##確認user-list開啟

[root@localhost?vsftpd]#?ls
ftpusers??user_list??vsftpd.conf??vsftpd_conf_migrate.sh
[root@localhost?vsftpd]#?echo?"zhangsan"?>>?user-list???##將zhangsan用戶添加到列表中[root@localhost?vsftpd]#?systemctl?restart?vsftpd????##重啟服務


2,用測試機cmd測試

C:\Users\xy007>ftp?192.168.13.140
連接到?192.168.13.140。
220?(vsFTPd?3.0.2)
200?Always?in?UTF8?mode.
用戶(192.168.13.140:(none)):?zhangsan???##使用zhangsan登錄
530?Permission?denied.
登錄失敗。????????????????????????????????????????##直接拒絕登錄
ftp>


3,設置列表為僅允許

[root@localhost?ftp]#?cd?/etc/vsftpd/
[root@localhost?vsftpd]#?vim?vsftpd.conf??##配置vsftpd配置文件
userlist_enable=YES
userlist_deny=NO???##添加列表允許

[root@localhost?vsftpd]#?systemctl?restart?vsftpd???##重啟服務


4,測試機cmd測試

C:\Users\xy007>ftp?192.168.13.140
連接到?192.168.13.140。
220?(vsFTPd?3.0.2)
200?Always?in?UTF8?mode.
用戶(192.168.13.140:(none)):?zhangsan???##用zhangsan去登錄
331?Please?specify?the?password.
密碼:
230?Login?successful.????????##登錄成功
ftp>?by
221?Goodbye.

C:\Users\xy007>ftp?192.168.13.140
連接到?192.168.13.140。
220?(vsFTPd?3.0.2)
200?Always?in?UTF8?mode.
用戶(192.168.13.140:(none)):?lisi???????##用lisi去登錄
530?Permission?denied.
登錄失敗。???????????????????????????##登錄失敗


五,建立虛擬用戶賬戶使用ftp(文件在系統(tǒng)用戶vuser家目錄)


1,創(chuàng)建虛擬用戶文件

[root@localhost?vsftpd]#?cd?/etc/vsftpd/??##切換到配置文件目錄下
[root@localhost?vsftpd]#?vim?vuser??????##創(chuàng)建虛擬用戶文件

lisa???????????##奇數(shù)行為用戶名
123123????##偶數(shù)行為密碼
tom
123123


2,轉換數(shù)據(jù)庫文件,設置安全權限

[root@localhost?vsftpd]#?db_load?-T?-t?hash?-f?vuser?vuser.db????##將vuser轉換成數(shù)據(jù)庫文件##T轉換,t類型,f指定文件
[root@localhost?vsftpd]#?chmod?600?vuser??????##安全起見,不讓別人看到,設置權限[root@localhost?vsftpd]#?chmod?600?vuser.db


3,編輯pam認證模塊支持虛擬用戶登錄

[root@localhost?vsftpd]#?useradd?-d?/opt/vuser?-s?/sbin/nologin?vuser??##創(chuàng)建系統(tǒng)用戶,指定家目錄,不能登錄[root@localhost?vsftpd]#?vim?/etc/pam.d/vsftpd.vu???##編譯pam認證模塊auth?required?pam_userdb.so?db=/etc/vsftpd/vuser????##識別轉換過的數(shù)據(jù)庫文件account?required?pam_userdb.so?db=/etc/vsftpd/vuser???##連接的密碼服務


4,開啟虛擬用戶,使用pam模塊認證登錄

[root@localhost?vsftpd]#?vim?vsftpd.conf??##修改配置文件
##G到末行
#pam_service_name=vsftpd???##注釋
##添加下面三行內(nèi)容guest_enable=YES???????????##開啟來賓用戶訪問
guest_username=vuser??????##使用vuser用戶名
pam_service_name=vsftpd.vu???##pam模塊
[root@localhost?vsftpd]#?systemctl?restart?vsftpd???##重啟服務


5,測試機cmd測試

C:\Users\xy007>ftp?192.168.13.140
連接到?192.168.13.140。
220?(vsFTPd?3.0.2)
200?Always?in?UTF8?mode.
用戶(192.168.13.140:(none)):?tom???##使用虛擬用戶tom登錄
331?Please?specify?the?password.
密碼:
230?Login?successful.
ftp>?put?test1.txt??????##上傳一個文件
200?PORT?command?successful.?Consider?using?PASV.
150?Ok?to?send?data.
226?Transfer?complete.
ftp:?發(fā)送?13?字節(jié),用時?0.00秒?13000.00千字節(jié)/秒。
##查看文件的權限為600
[root@localhost?vsftpd]#?ls?-l?/opt/vuser/
總用量?4
-rw-------.?1?vuser?vuser?13?11月??5?22:51?test1.txt


6,單獨用戶配置,指定上傳文件的權限644

[root@localhost?vsftpd]#?vim?vsftpd.conf?
##大G末行添加
user_config_dir=/etc/vsftpd/vu_dir???##單獨用戶配置文件夾

[root@localhost?vsftpd]#?mkdir?vu_dir??##創(chuàng)建文件夾
[root@localhost?vsftpd]#?cd?vu_dir/
[root@localhost?vu_dir]#?vim?lisa?????##在配置文件夾里創(chuàng)建用戶配置文件
anon_umask=022??##指定上傳文件的權限

[root@localhost?vu_dir]#?systemctl?restart?vsftpd??##重啟服務


7,測試機cmd使用lisa用戶登錄,查看上傳文件權限

C:\Users\xy007>ftp?192.168.13.140
連接到?192.168.13.140。
220?(vsFTPd?3.0.2)
200?Always?in?UTF8?mode.
用戶(192.168.13.140:(none)):?lisa????##使用lisa登錄
331?Please?specify?the?password.
密碼:
230?Login?successful.
ftp>?put?111.txt????????##上傳文件
200?PORT?command?successful.?Consider?using?PASV.
150?Ok?to?send?data.
226?Transfer?complete.
ftp:?發(fā)送?13?字節(jié),用時?0.00秒?13000.00千字節(jié)/秒。

[root@localhost?vu_dir]#?ls?-l?/opt/vuser/???##查看上傳文件的權限
總用量?8
-rw-r--r--.?1?vuser?vuser?13?11月??5?22:58?111.txt????##lisa上傳文件權限644
-rw-------.?1?vuser?vuser?13?11月??5?22:51?test1.txt??##tom上傳文件權限600

當前文章:學會使用linux中的vsftpd服務
標題鏈接:http://bm7419.com/article12/igsidc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信公眾號虛擬主機、App設計網(wǎng)站排名、用戶體驗品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)