Answers:
使用passwd -d
是完全错误的,至少在Fedora上,基于阴影-utils的任何Linux发行版。如果使用删除密码passwd -d
,则意味着任何人都可以不提供密码登录(通过控制台或图形方式)该用户。
为了阻止使用密码身份验证的登录,请运行,它将锁定该帐户,使其仅对root用户可用。通过将加密的密码呈现为无效的字符串(通过在加密的字符串前面加上!前缀)来执行锁定。passwd -l username
任何本地或远程登录尝试都将导致“密码错误”,而公共密钥登录仍将起作用。然后可以使用解锁帐户。passwd -u username
如果要完全锁定一个帐户而不删除它,请编辑/etc/passwd
并设置/sbin/nologin
或/bin/false
在最后一个字段中。这将导致“此帐户当前不可用”。对于任何登录尝试。
请参考passwd(1)手册页。
您不是要特定于SSH守护程序,不接受基于密码的身份验证,而是接受密钥/密码身份验证吗?
寻找对的更改sshd_config
。
组
PasswordAuthentication No
PreferredAuthentications publickey,hostbased,keyboard-interactive
Protocol 2,1
在man ssh_config中查找更多配置参数
只是不要为用户设置密码。如果已经有密码,请使用删除密码passwd -l <username>
。
但是仍然有可能以该用户身份登录-通过使用authorized_keys或通过特权帐户中的su或sudo进行登录。
su
访问该用户吗?