在尝试为 vsftpd 创建新的 FTP 用户时,我偶然发现了这个问题。使用以下命令创建新用户并尝试使用 FileZilla 登录后,我会收到“密码不正确”错误。
useradd f -p pass -d /home/f -s /bin/false
Run Code Online (Sandbox Code Playgroud)
这样做之后,/etc/shadow包含
f:pass:1111:0:99:2:::
Run Code Online (Sandbox Code Playgroud)
一旦我运行以下命令并提供相同的通行证
passwd f
Run Code Online (Sandbox Code Playgroud)
/etc/shadow包含
f:$1$U1c5vVwg$x5TVDDDmhi0a7RWFer6Jn1:1111:0:99:2:::
Run Code Online (Sandbox Code Playgroud)
似乎在我运行passwd时会发生加密,但不会在useradd 时发生
重要的是,在执行此操作后,我可以使用完全相同的凭据登录到 FTP。
我使用 CentOS 5.11,vsftpd 用于 FTP,FileZilla 用于 FTP 访问
/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
Run Code Online (Sandbox Code Playgroud)
为什么当我传递-p pass给 useradd时它不起作用?我需要做什么才能让它发挥作用?