yum install -y vsftpd db4-utils
建立虛拟賬号相關聯的系統賬号 useradd virftp -s /sbin/nologin
建立虛拟賬戶相關的檔案 vim /etc/vsftpd/vsftpd_login //内容如下
test1
123456
test2
abcdef
注意:(這裡名字要寫在最前面,不然會有問題,前面不能有空格)
chmod 600 /etc/vsftpd/vsftpd_login
生成對應的庫檔案 db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
建立虛拟賬号相關的目錄以及配置檔案 mkdir /etc/vsftpd/vsftpd_user_conf
cd /etc/vsftpd/vsftpd_user_conf 建立和使用者對應的配置檔案
vim test1 内容如下
local_root=/home/virftp/test1
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000
mkdir /home/virftp/test1
修改權限 chown -R virftp:virftp /home/virftp
vim /etc/pam.d/vsftpd 在最開頭添加兩行
auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login //如果是64位系統則改為/lib64/security/pam_userdb.so
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login //如果是64位系統則改為/lib64/security/pam_userdb.so
再修改/etc/vsftpd.conf
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES改為anonymous_enable=NO
#anon_upload_enable=YES 改為 anon_upload_enable=NO
#anon_mkdir_write_enable=YES 改為 anon_mkdir_write_enable=NO
再增加
chroot_local_user=YES
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
(在下面找一行插入,不要放最後面)
啟動vsftpd服務/etc/init.d/vsftpd start
錯誤檢查:
檢視less /var/log/secure
telnet IP 21 (看結果是220,還是500,220是正确的)
允許windows上傳,需要在在vim /etc/vsftpd/vsftpd.conf中還需設定anon_upload_enable=YES(這條好像不用)
windows驗證:
切記,不能用網頁打開
<a href="http://s4.51cto.com/wyfs02/M02/85/A9/wKiom1erVePxM0pDAAANSQs98Ao338.png" target="_blank"></a>
<a href="http://s3.51cto.com/wyfs02/M02/85/A9/wKiom1erVeSBzBtkAAENfey3BXc909.png" target="_blank"></a>
用戶端實驗驗證
ftp用戶端需要安裝lftp包yum install -y lftp
登入指令lftp test1@ftp服務端的ip位址
<a href="ftp://192.168.0.106/" target="_blank">ftp://192.168.0.106</a>
最常用的指令有
ls 列出遠端機的目前目錄
cd 在遠端機上改變工作目錄
lcd 在本地機上改變工作目錄
ascii 設定檔案傳輸方式為ASCII模式
binary 設定檔案傳輸方式為二進制模式
close 終止目前的ftp會話
hash 每次傳輸完資料緩沖區中的資料後就顯示一個#号
getmget 從遠端機傳送指定檔案到本地機
putmput 從本地機傳送指定檔案到遠端機
open 連接配接遠端ftp站點
斷開與遠端機的連接配接并退出ftp
? 顯示本地幫助資訊
! 轉到Shell中
linux用戶端:
ls
put /etc/passwd .
本文轉自 15816815732 51CTO部落格,原文連結:http://blog.51cto.com/68686789/1833173