使未使用的 ssh 密钥失效

Hon*_*ang 5 ssh authentication

我为所有 Subversion 用户使用一个 ssh 帐户。他们将他们的公钥发送给我,我将它们放在 svn 帐户的 .ssh/authorized_key 中,然后他们可以使用 ssh 隧道从 Subversion 中查看代码。

到目前为止一切正常。但问题是我想让一段时间(比如一个月)没有使用过的密钥无效。有没有人知道在用户登录时让 sshd 记录公钥的方法?

谢谢。

Pow*_*man 4

所有内容都记录在 sshd(8) 的“AUTHORIZED_KEYS FILE FORMAT”部分下。

environment="SSHKEY=1"在 .ssh/authorized_keys2 中,在每行的开头添加类似的内容,因此它应该如下所示:

environment="SSHKEY=1" ssh-dss AAAAB3N ...
environment="SSHKEY=2" ssh-rsa AAAAB3N ...
Run Code Online (Sandbox Code Playgroud)

启用PermitUserEnvironment/etc/ssh/sshd_config 中的选项并重新启动 sshd。现在您可以向 ~/.bashrc 添加类似内容echo $SSHKEY >>.sshlog来记录使用的 ssh 密钥。

但我认为更简单的方法是备份authorized_keys2文件,从中删除所有密钥,然后等到人们打电话/发送电子邮件/im问你为什么svn不起作用。然后,如果您不确定哪个密钥属于谁,您可以恢复他们的密钥或要求他们重新发送密钥给您。作为副作用,你会知道谁在真正工作。:)