yum install vsftpd db4-utils
因爲要使用虛擬用戶登錄.
修改如下文件 a:/etc/pam.d/vsftpd ;添加兩行
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
系統64位 很多網上資料 寫的是/lib/security/pam_userdb.so 這裏要改一下
其它註釋掉。
3. 配置文件 vsftpd.conf
listen=YES
local_enable=YES #設定本地用戶可以訪問。注:如使用虛擬宿主用戶,在該項目設定爲NO的情況下所有虛擬用戶將無法訪問
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
userlist_enable=YES
tcp_wrappers=YES
anonymous_enable=NO
guest_enable=YES
guest_username=ftpadmin #虛擬目錄對應的系統賬號
pam_service_name=vsftpd
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf #配置虛擬用戶的單獨配置路徑,如家目錄等
anon_umask=022
4. 添加用戶ftpadmin
useradd ftpadmin -d /data/ftp -s /sbin/nologin
5. 添加用戶名密碼 到文件vftpuser.txt
格式爲:
用戶名
密碼
6. db_load -T -t hash -f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db 密碼生成到數據文件
7./etc/rc.d/init.d/vsftpd restart 重啓即可
/etc/vsftpd/vsftpd_user_conf/用戶名
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/var/ftp/database
配置文件後不能有空格 否則會報錯,比如上面加入註釋的地方。
要允許local_enable=YES 否則530登錄報錯 還有超時錯誤還不清楚原因
centos 7 報錯無法登陸可以命令行下驗證:(500 OOPS: vsftpd: refusing to run with writable root inside chroot () ) 需要在vsftpd.conf 中添加 allow_writeable_chroot=YES
參考:http://blog.csdn.net/bluishglc/article/details/42399439
今天在 6 上面配置時 發現幾個問題
6 安裝的是 2.2.2 版本 7的是3.0.2版本
allow_writeable_chroot=YES 在6裏不支持
2:把端口號改爲 918 報錯 無法列舉目錄。 改回21就正常 ???