使用apt-get install vsftpd安装完后,启动ftp。然后使用本地用户不能登录的解决方法。
sudo apt-get remove vsftpd
sudo rm /etc/pam.d/vsftpd
sudo apt-get install vsftpd
ubuntu启用了PAM,所在用到vsftp时需要用到 /etc/pam.d/vsftpd 这个文件(默认源码安装的不会有这个文件),因此除了匿名用户外本地用户无法登录。所以只要删除了就可以了。
然后附上我的配置文件内容:
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
xferlog_file=/kvm/ftp/vsftpd.log
xferlog_std_format=YES
ftpd_banner=Welcome to OPENBSD FTP server
idle_session_timeout=300
connect_from_port_20=YES
chroot_local_user=YES
chroot_list_enable=NO
allow_writeable_chroot=YES
然后把登录的用户添加进/etc/vsftpd.chroot_list就可以使用本地用户和密码登录自己的$HOME了。
据说还要把用户的/bin/false改成/sbin/nologin没验证,因为我在创建用户的时候就指定的是/sbin/nologin
转载于:https://blog.51cto.com/ting2junshui/1678220