确定某人上次从密钥登录服务器的时间

Mar*_*ppi 6 ssh logging ssh-keys

我正在尝试跟踪用户上次使用某个密钥登录 Linux 服务器的时间。所以用户secure有 5 个密钥~/.ssh/authorized_keys,我如何跟踪每个密钥的使用时间以及访问服务器的 IP?

理想情况下,我将能够看到从 127.0.0.1 开始使用密钥 1 是在 5 天前,从 10.0.0.5 开始使用密钥 2 是在 10 分钟前,从未使用过密钥 3 和 4,从 8.8 开始使用密钥 5 是在两周前.8.8.

use*_*517 8

你需要增加LogLevel/etc/ssh/sshd_configVERBOSE并重新启动sshd的。这将导致 sshd 将正在使用的密钥的指纹记录到您的 sshd 配置为使用的任何日志文件中,例如

Jan  7 22:46:17 host.lan sshd[5998]: Connection from 192.168.254.187 port 57062
Jan  7 22:46:17 host.lan sshd[5998]: Found matching RSA key: 54:d2:06:cf:85:ec:89:96:3c:a8:73:c7:a1:30:c2:8b
Jan  7 22:46:17 host.lan sshd[5998]: Found matching RSA key: 54:d2:06:cf:85:ec:89:96:3c:a8:73:c7:a1:30:c2:8b
Jan  7 22:46:17 host.lan sshd[5998]: Accepted publickey for user from 192.168.254.187 port 57062 ssh2
Run Code Online (Sandbox Code Playgroud)

将密钥指纹与密钥匹配并执行您想要的操作应该相当简单。