IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當前所在位置: 首頁服務(wù)器FTP服務(wù)器 → redhat linux 9.0 VSFTP配置大全

redhat linux 9.0 VSFTP配置大全

時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(0)

3.2.1 VSFTP 概述


FTP,file transfer protocol,這是檔案傳輸?shù)耐ㄓ崊f(xié)議,也是一般最常用來傳送檔案的方式。讀者在使用RedHat9 的時候,可能會感受到ftp server 有一些改變:第一,就是ftp server 只剩下vsftp,原有的wuftp 等都沒放入﹔第二,就是vsftp 從XINETD 中獨立出來,并將設(shè)定檔從/etc/vsftpd.conf 之中移到/etc/vsftpd/vsftpd.conf。


為什么做這樣的改變?可以想見的是vsftp 已有獨立運作的能力,不需要XINETD 來做更進一步的管控,并且類似sendmail、httpd、ssh、samba 等,將設(shè)定文件的放入/etc 下獨立的目錄。


FTP 分為兩類,一種為PORT FTP,也就是一般的FTP﹔另一類是PASVFTP,分述如下:


PORT FTP


這是一般形式的FTP,首先會建立控制頻道,默認值是port 21,也就是跟port 21 建立聯(lián)機,并透過此聯(lián)機下達指令。第二,由FTP server 端會建立數(shù)據(jù)傳輸頻道,默認值為20,也就是跟port 20 建立聯(lián)機,并透過port 20 作數(shù)據(jù)的傳輸。


PASV FTP


跟PORT FTP 類似,首先會建立控制頻道,默認值是port 21,也就是跟port 21 建立聯(lián)機,并透過此聯(lián)機下達指令。第二,會由client 端做出數(shù)據(jù)傳輸?shù)恼埱螅〝?shù)據(jù)傳輸port 的數(shù)字。


這兩者的差異為何?PORT FTP 當中的數(shù)據(jù)傳輸port 是由FTP server 指定,而PASV FTP 的數(shù)據(jù)傳輸port 是由FTP client 決定。通常我們使用PASV FTP,是在有防火墻的環(huán)境之下,透過client 與server 的溝通,決定數(shù)據(jù)傳輸?shù)膒ort。


3.2.2 范例


3.2.1. 直接啟動VSFTP 服務(wù)


這個范例是套用RedHat 的預(yù)設(shè)范例,直接啟動vsftp。


[root@relay vsftpd]# /sbin/service vsftpd start
Starting vsftpd for vsftpd: OK ]


3.2.2. 更換port 提供服務(wù):將預(yù)設(shè)的port 21 更換為2121


為了安全,或是以port 來區(qū)隔不同的ftp 服務(wù),我們可能會將ftp port 改為21 之外的port,那么,可參考以下步驟。


Step1. 修改/etc/vsftpd/vsftpd.conf


新增底下一行


listen_port=2121


Step2. 重新啟動vsftpd


[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]


3.2.3. 特定使用者peter、john 不得變更目錄


使用者的預(yù)設(shè)目錄為/home/username,若是我們不希望使用者在ftp 時能夠切換到上一層目錄/home,則可參考以下步驟。


Step1. 修改/etc/vsftpd/vsftpd.conf


將底下三行


#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list


改為


chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list


Step2. 新增一個檔案: /etc/vsftpd/chroot_list


內(nèi)容增加兩行:


peter
john


Step3. 重新啟動vsftpd


[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]


若是peter 欲切換到根目錄以外的目錄,則會出現(xiàn)以下警告:


ftp> cd /home
550 Failed to change directory.


3.2.4. 取消anonymous 登入


若是讀者的主機不希望使用者匿名登入,則可參考以下步驟。


Step1. 修改/etc/vsftpd/vsftpd.conf



anonymous_enable=YES


改為


anonymous_enable=NO


Step2. 重新啟動vsftpd


[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]


3.2.5. 安排歡迎話語


若是我們希望使用者在登入時,能夠看到歡迎話語,可能包括對該主機的說明,或是目錄的介紹,可參考以下步驟。


首先確定在/etc/vsftpd/vsftpd.conf 當中是否有底下這一行


dirmessage_enable=YES


RedHat9 的默認值是有上面這行的。


接著,在各目錄之中,新增名為.message 的檔案,再這邊假設(shè)有一個使用者test1,且此使用者的根目錄下有個目錄名為abc,那首先我們在/home/test1之下新增.message,內(nèi)容如下:


Hello~ Welcome to the home directory
This is for test only...


接著,在/home/test1/abc 的目錄下新增.message,內(nèi)容如下:


Welcome to abcs directory
This is subdir...


那么,當使用者test1 登入時,會看到以下訊息:


230- Hello~ Welcome to the home directory
230-
230- This is for test only...
230-


若是切換到abc 的目錄,則會出現(xiàn)以下訊息:


250- Welcome to abcs directory
250-
250- This is subdir ...


3.2.6. 對于每一個聯(lián)機,以獨立的process 來運作


一般啟動vsftp 時,我們只會看到一個名為vsftpd 的process 在運作,但若是讀者希望每一個聯(lián)機,都能以獨立的process 來呈現(xiàn),則可執(zhí)行以下步驟。


Step1. 修改/etc/vsftpd/vsftpd.conf


新增底下一行


setproctitle_enable=YES


Step2. 重新啟動vsftpd


[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]


使用ps -ef 的指令,可以看告不同使用者聯(lián)機的情形,如下圖所示:


[root@home vsftpd]# ps -ef|grep ftp
root 2090 1 0 16:41 pts/0 00:00:00 vsftpd: LISTENER
nobody 2120 2090 0 17:18 ? 00:00:00 vsftpd: 192.168.10.244: connected
test1 2122 2120 0 17:18 ? 00:00:00 vsftpd: 192.168.10.244/test1:IDLE
nobody 2124 2090 0 17:19 ? 00:00:00 vsftpd: 192.168.10.244: connected
test2 2126 2124 0 17:19 ? 00:00:00 vsftpd: 192.168.10.244/test2:IDLE
root 2129 1343 0 17:20 pts/0 00:00:00 grep ftp
[root@home vsftpd]#


3.2.7. 限制傳輸檔案的速度:


本機的使用者最高速度為200KBytes/s,匿名登入者所能使用的最高速度為50KBytes/s。


Step1. 修改/etc/vsftpd/vsftpd.conf


新增底下兩行


anon_max_rate=50000
local_max_rate=200000


Step2. 重新啟動vsftpd


[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]


在這邊速度的單位為Bytes/s,其中anon_max_rate 所限制的是匿名登入的使用者,而local_max_rate 所限制的是本機的使用者。VSFTPD 對于速度的限制,范圍大概在80%到120%之間,也就是我們限制最高速度為100KBytes/s,但實際的速度可能在80KBytes/s 到120KBytes/s 之間,當然,若是頻寬不足時,數(shù)值會低于此限制。


3.2.8. 針對不同的使用者限制不同的速度:假設(shè)test1 所能使用的最高速度為250KBytes/s,test2 所能使用的最高速度為500KBytes/s。


Step1. 修改/etc/vsftpd/vsftpd.conf


新增底下一行


user_config_dir=/etc/vsftpd/userconf


Step2. 新增一個目錄:/etc/vsftpd/userconf


mkdir /etc/vsftpd/userconf


Step3. 在/etc/vsftpd/userconf 之下新增一個名為test1 的檔案


內(nèi)容增加一行:


local_max_rate=250000


Step4. 在/etc/vsftpd/userconf 之下新增一個名為test2 的檔案


內(nèi)容增加一行:


local_max_rate=500000


Step5. 重新啟動vsftpd


[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]


3.2.9-1. 建置一個防火墻下的ftp server,使用PORT FTP mode:


預(yù)設(shè)的ftp


port:21 以及ftp data port:20


啟動VSFTPD 之后執(zhí)行以下兩行指令,只允許port 21 以及port 20 開放,其它關(guān)閉。


iptables -A INPUT -p tcp -m multiport --dport 21,20 -j ACCEPT
iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset


3.2.9-2. 建置一個防火墻下的ftp server,使用PORT FTP mode:


ftp port:2121 以及ftp data port:2020


Step1. 執(zhí)行以下兩行指令,只允許port 2121 以及port 2020 開放,其它關(guān)閉。


iptables -A INPUT -p tcp -m multiport --dport 2121,2020 -j ACCEPT
iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset


Step2. 修改/etc/

關(guān)鍵詞標簽:配置,大全,vsftpd,默認

相關(guān)閱讀

文章評論
發(fā)表評論

熱門文章 Linux下FTP的配置與應(yīng)用 Linux下FTP的配置與應(yīng)用 什么是ftp及ftp服務(wù)器 什么是ftp及ftp服務(wù)器 FTP出錯解決和分析 FTP出錯解決和分析 Windows內(nèi)置FTP服務(wù)器高級配置 Windows內(nèi)置FTP服務(wù)器高級配置

相關(guān)下載

    人氣排行 vsftp配置大全---超完整版 IIS6.0打造FTP服務(wù)器完全圖文詳解 使用Win 2003搭建安全文件服務(wù)器 圖解Windows xp—FTP服務(wù)器配置 linux服務(wù)samba的詳細配置 在Windows 2003下搭建FTP服務(wù)器 FTP登陸錯誤詳解 Windows內(nèi)置FTP服務(wù)器高級配置