我正在运行一台 Ubuntu 12 机器,最近一直在努力确保它的安全。我做了以下所有更改:这指南。我没有运行 Linode,但我用它们作为设置防火墙等的起点。
一切进展顺利,我已经使用这台机器一段时间了。我尝试使用命令锁定一些用户的帐户,passwd -l
并且成功了。但是,当我尝试添加新用户或更改密码时,出现了最奇怪的错误:
myuser@mymachine:~$ passwd
Old Password:
passwd: Authentication token manipulation error
passwd: password unchanged
或者,添加新用户时:
myuser@mymachine:~$ sudo adduser mynewuser
Adding user `mynewuser' ...
Adding new group `mynewuser' (1011) ...
Adding new user `mynewuser' (1002) with group `mynewuser' ...
Creating home directory `/home/mynewuser' ...
Copying files from `/etc/skel' ...
passwd: Authentication token manipulation error
passwd: password unchanged
Try again? [y/N]
我搜索了这个错误,绝大多数问题都通过将 / 重新挂载为读写来解决。但是,这不是问题,因为它被挂载为读写(我确认了)。请注意,不同的用户以及 root 尝试更改其他用户的密码时都会遇到相同的错误。
您是否知道我为什么(似乎自发地)收到此错误?我没有对shadow
或passwd
文件进行任何手动编辑 - 或者实际上根本没有对用户身份验证进行任何更改。
如果相关的话:
ls -lh /etc/passwd -rw-r--r-- 1 root root 3.2K Jul 23 17:26 /etc/passwd
ls -lh /etc/shadow -rw------- 1 root shadow 3.1K Jul 23 17:20 /etc/shadow
答案1
出现此问题的原因是设置了错误的权限/usr/bin/密码。
请尝试将权限设置为4511。
您可以使用以下命令更新权限:
chmod 4511 /usr/bin/passwd
这将解决这个问题。