今天在新建虚拟账号过程中遇到的一点小问题,记录一下。
新建的流程如下
vim /etc/vsftpd/virtusers 在最底下加入账号名(ftpuser)和密码
db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
增加配置文件(一般直接cp,再修改家目录就好了)
vim /etc/vsftpd/vconf/ftpuser
然后就可以了
然鹅,当我在另一台机器用新建的ftp账号尝试登录的时候。
居然提示 ftp 530 login incorrect
这个时候当然是查看错误日志了 tail -f /var/log/secure
Sep 28 11:21:01 inmsh31 vsftpd: pam_userdb(vsftpd:auth): user_lookup: could not open database `/etc/vsftpd/vsftpd_login': No such file or directory
Sep 28 11:21:01 inmsh31 vsftpd: pam_listfile(vsftpd:auth): Couldn't open /etc/ftpusers
Sep 28 11:21:01 inmsh31 vsftpd: pam_unix(vsftpd:auth): check pass; user unknown
Sep 28 11:21:01 inmsh31 vsftpd: pam_unix(vsftpd:auth): authentication failure; logname= uid=0 euid=0 tty=ftp ruser=ftpuser rhost=x.x.x.x
一脸懵逼,于是开始百度了,一个一个地看,看完之后一个一个地试,就是不行。万念俱灰的时候,我打开了刚才添加虚拟账号的文件,没错就是vim /etc/vsftpd/vconf/ftpuser,发现这个文件最上面居然有一行空格!!!!,于是删除空格,重新执行db_load。再次登录,成功!!!