簡易的vsftpd伺服器的架設
簡單的vsftpd.conf配置:
① 任何在/etc/vsftpd/ftpusers中的使用者賬号均無法使用vsftpd
② 開放anonymous和實體使用者登陸vsftpd
③ 實體使用者登陸主機時,可以進入任何具有登陸權限的目錄中(沒用chroot)
④ 使用端口20作為主動連接配接時的ftp-data傳送端口
⑤ 利用/etc/host.allow(deny)來管理登陸權限
⑥ 當Client上傳和下載下傳檔案時,該資訊儲存在/var/log/vsftpd.log中
⑦ 其它端口使用預設(如被動式端口号等)
<a href="http://blog.51cto.com/attachment/201209/203747374.png" target="_blank"></a>
在編輯之前備份一下
<a href="http://blog.51cto.com/attachment/201209/203824573.png" target="_blank"></a>
關于主機安全性的設定
user_localtime=YES
dirmessage_enable=YES
connect_from_port_20=YES
xferlog_enable=YES
xferlog_file=/var/log/xferlog
xferlog_std_format=YES
pam_service_name=vsftpd
tcp_wrappers=YES
關于anonymous的設定
anonymous_enable=YES
關于real user的設定
local_enable=YES
write_enable=YES
local_umask=022
use_localtime=YES
<a href="http://blog.51cto.com/attachment/201209/203843588.png" target="_blank"></a>
看上圖紅色部分可知,在/etc/vsftpd/vsftpd.conf/應該用userlist_deny (有的是userlist_enable),要注意
匿名登入 不能切換目錄 不能下載下傳、上傳檔案 符合要求
<a href="http://blog.51cto.com/attachment/201209/203856153.png" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201209/203907195.png" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201209/203917196.png" target="_blank"></a>
實體使用者登入
<a href="http://blog.51cto.com/attachment/201209/203932990.png" target="_blank"></a>
針對僅開放實體使用者登入的設定
因為開放anonymous不太安全,是以将anonymous的登入權關閉,僅以實體使用者登入
1. 使用本地時間不是GMT時間
2.所有在/etc/passwd中出現的實體賬号均能登入vsftpd主機
3.系統賬号(如root等,uid小于500的賬号)均不能使用vsftpd
4.把kiss這個賬号使用者限制在自己的主目錄中
5.把資料的傳輸速率限制在100kb/s
6.當使用者進入/home目錄時,在Client端的螢幕上顯示'"一般使用者主目錄"字樣
7.使用者可以進行上傳、下載下傳以及修改檔案等
anonymous_enable=NO
userlist_enable=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list (有的是vsftpd.chroot_list)
userlist_deny=YES
userlist_file=/etc/vsftpd/user_list (有的是vsftpd.user_list)
local_max_rate=100000
限制實體使用者在自己的主目錄裡的配置檔案
<a href="http://blog.51cto.com/attachment/201209/203952176.png" target="_blank"></a>
寫入kiss
未寫入的可以進入其它目錄
以PAM子產品限制某些賬号無法登入主機設定
<a href="http://blog.51cto.com/attachment/201209/204004390.png" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201209/204018941.png" target="_blank"></a>
“file=.......”後面接的檔案就是PAM子產品過濾的賬号内容
<a href="http://blog.51cto.com/attachment/201209/204032693.png" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201209/204044893.png" target="_blank"></a>
以user_list阻擋某些賬号的登入,該功能與PAM子產品相似,隻不過PAM是外挂的,而這個設定是vsftpd預設提供的 兩這一般相同 比較安全
<a href="http://blog.51cto.com/attachment/201209/204057519.png" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201209/204110841.png" target="_blank"></a>
設定進入目錄時顯示的資訊
<a href="http://blog.51cto.com/attachment/201209/204122413.png" target="_blank"></a>
最後重新開機xinetd 3種方式
測試符合要求
<a href="http://blog.51cto.com/attachment/201209/204149404.png" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201209/204204444.png" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201209/204219750.png" target="_blank"></a>
針對僅開放匿名使用者登入設定
a. 使用本地時間不是GMT時間
b. 僅對anonymous開放
c. 允許anonymous将檔案上傳到/var/ftp/upload目錄中,并允許anonymous建立目錄
d. 資料連接配接的過程(不是指令通道!)中隻要超過60秒沒有響應,就強制Client斷線
e. 隻要anonymous超過10分鐘沒有動作,就予以斷線
f. 被動式連接配接的端口為65400·65420這幾個端口号即可
g. 最大同時上線人數限制在50人,且同一個IP來源最大連接配接數為5
h. 不允許使用ASCII格式上傳或下載下傳
i. 把資料的傳輸速率限制在30kb/s
j. 不允許www.123.com網址作為email address的密碼輸入
1. 基本配置檔案
data_connection_timeout=60
idle_session_timeout=600
nopriv_user=ftpsecure
ascii_upload_enable=NO
ascii_download_enable=NO
max_clients=50
max_per_ip=5
pasv_max_port=65420
pasv_min_port=65400
deny_email_enable=YES
banned_email_file=/etc/vsftpd/banned_emails
關于anonymous的設定
anonymous_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_max_rate=30000
關于real user的設定
local_enable=NO
2. 建立拒絕不當郵件位址檔案
<a href="http://blog.51cto.com/attachment/201209/204233791.png" target="_blank"></a>
寫入一個網址
3. 建立可以上傳的目錄
因為我們的nopriv_user設定為ftp ,是以上傳的目錄所用者為ftp
符合要求
<a href="http://blog.51cto.com/attachment/201209/204309829.png" target="_blank"></a>
相關安全設定
1. 設定防火牆 要啟用vsftpd就要開放防火牆! 如果你(ˇˍˇ) 想~對Internet 開放FTP伺服器,就必須在你的規則中加這一條iptables防火牆規則:
/sbin/iptables -A INPUT -p tcp -i eth0 --dport 21 j ACCEPT
你也可以設定的更嚴密,這裡就不設定了
你的TCP Wrapper如果想要拒絕願ip位址為192.168.1.2 可以設定如下
<a href="http://blog.51cto.com/attachment/201209/204318120.png" target="_blank"></a>
Super daemon的管理
<a href="http://blog.51cto.com/attachment/201209/204335190.png" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201209/204353491.png" target="_blank"></a>
在server_arg後寫入你的vsftpd的配置檔案的完整檔案名路徑即可 換行加入一下内容:
per_source = 5 與同一IP的連接配接數目有關
Instances = 200 同一時間最多的連接配接數目
No_access = 192.168.1.3
Banner_fail =/etc/vsftpd/busy.conf
<a href="http://blog.51cto.com/attachment/201209/204407937.png" target="_blank"></a>
421 很抱歉 伺服器忙
然後重新開機即可
本文轉自 abc16810 51CTO部落格,原文連結:http://blog.51cto.com/abc16810/993026