使用一个特定的 ssh 密钥暂时禁用登录

Mar*_*ter 5 ssh authentication openssh public-key-authentication

在我的服务器上,我在~/.ssh/authorized_keys.

我想暂时阻止/禁止/停用一键。我想阻止用户现在使用此密钥登录。但我可能想稍后重新启用它(即我不想完全删除密钥)。

正确/推荐的方法是什么?

我要不要#在行的开头在authorized_keys, 键前面加一个注释?

澄清一下,我不想阻止特定用户。一个用户帐户在几个人之间共享,每个人都使用自己的 SSH 密钥进行连接。我想阻止一个特定的 SSH 密钥。

小智 7

您可以使用强制命令作为键的前缀,告诉用户发生了什么。例如:

command="/usr/bin/printf '*** Your key has been disabled ***\r\n'; sleep 1",no-pty,no-port-forwarding ssh-rsa AAAAB2...19Q== joe@example.net
Run Code Online (Sandbox Code Playgroud)

然后他们得到:

$ ssh servername
PTY allocation request failed on channel 0
Your key has been disabled
Connection to lxdns101 closed.
Run Code Online (Sandbox Code Playgroud)


Ant*_*hon 5

是的,您可以在相关行之前放置#(或任何其他字符,只要初始条目ssh-rsa不再有效)。

如果您这样做,并且系统也允许纯文本密码登录,系统将提示用户输入密码进行登录。因此,您可能需要检查是否没有(已知的)密码与该帐户相关联。