vsftpd宿主机部署及问题总结

1.yum安装

yum -y install vsftpd
创建配置文件
cat /etc/vsftpd/vsftpd.conf

anonymous_enable=NO
xferlog_file=/var/log/xferlog
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
userlist_deny=NO
tcp_wrappers=YES

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
userlist_file=/etc/vsftpd/user_list 
allow_writeable_chroot=YES

创建相关文件目录
touch /etc/vsftpd/chroot_list
touch /var/log/xferlog
创建用户
useradd -d /var/ftp/wangteng -g ftp -s /sbin/nologin wangteng
passwd wangteng

将创建的用户加入白名单
echo "wangteng" >> /etc/vsftpd/user_list

重启服务
systemctl restart vsftpd

2.问题总结

1、登录报错Login incorrect 530
修改/etc/pam.d/vsftpd
将auth required pam_shells.so修改为->auth required pam_nologin.so 或者将auth required pam_shells.so注释

2、vsftpd本地用户简单部署配置
cat /etc/vsftpd/vsftpd.conf

#禁止匿名登录FTP服务器
anonymous_enable=NO
#允许本地用户登录FTP服务器
local_enable=YES
#设置本地用户登录后所在目录
local_root=/var/ftp
#全部用户被限制在主目录
chroot_local_user=YES
#开启被动模式
pasv_enable=YES
#FTP服务器公网IP
pasv_address=101.xx.xx.xxx
#设置被动模式下,建立数据传输可用port范围值(设在比较高的范围内,安全性更高)
pasv_min_port=10000
pasv_max_port=10088

#本地用户上传文件的umask值
local_umask=022
#是否在进入新目录时显示 message_file 文件中的内容
dirmessage_enable=YES
#启用日志
xferlog_enable=YES
#日志是否进行格式化
xferlog_std_format=YES
#独立服务
listen=YES
#centos7增加此设置,开启后默认监控ipv4和ipv6
listen_ipv6=NO
#认证模式
pam_service_name=vsftpd
#启用用户列表
userlist_enable=YES
#可以上传(全局控制)
write_enable=YES
#允许下载
download_enable=YES