当尝试为vsftpd创建新的FTP用户时,我偶然发现了这个问题。使用以下命令创建新用户并尝试使用FileZilla登录后,我将收到“密码错误”错误。
useradd f -p pass -d /home/f -s /bin/false
完成后,/ etc / shadow包含
f:pass:1111:0:99:2:::
一旦我运行以下命令并提供相同的通过密码
passwd f
/ etc / shadow包含
f:$1$U1c5vVwg$x5TVDDDmhi0a7RWFer6Jn1:1111:0:99:2:::
看来加密是在我运行passwd时发生的,而不是在useradd上发生的
重要的是,执行此操作后,我可以使用完全相同的凭据登录FTP。
我正在使用CentOS 5.11,用于FTP的vsftpd和用于FTP访问的FileZilla
/ var / log / secure包含:
Dec 17 useradd[644]: new group: name=f, GID=511
Dec 17 useradd[644]: new user: name=f, UID=511, GID=511, home=/home/f, shell=/bin/false
当我传递-p pass
给useradd 时,为什么它不起作用?我需要做些什么才能使其正常工作?
$1$
指示使用MD5。MD5虽然不单单让密码糟透了,但如今却处于弱势。这是一个完全独立的问题,但是我绝对敦促您考虑迁移到更强大的哈希函数。
/etc/shadow
未加密但经过哈希处理
/var/log/secure