监视ssh连接并从授权的\u密钥获取登录用户信息

监视ssh连接并从授权的\u密钥获取登录用户信息,ssh,rsa,Ssh,Rsa,当linux系统通过id\u rsa.pub连接时,是否有任何方法可以使用.ssh/authorized\u keys获取相应登录用户的电子邮件 我尝试使用/var/log/auth.log中的内容,但找不到记录与.ssh/authorized_key之间的直接关系 提前感谢。ssh公钥的最后一列是,它不存在于用于登录的私钥中,也不存在于身份验证尝试期间发送到服务器的公钥中 服务器授权密钥中的注释可以与客户端公钥中的注释完全不同 您可以在authorized_keys和日志中找到密钥之间的连接,

当linux系统通过
id\u rsa.pub
连接时,是否有任何方法可以使用
.ssh/authorized\u keys
获取相应登录用户的电子邮件

我尝试使用
/var/log/auth.log
中的内容,但找不到记录与
.ssh/authorized_key
之间的直接关系


提前感谢。

ssh公钥的最后一列是,它不存在于用于登录的私钥中,也不存在于身份验证尝试期间发送到服务器的公钥中

服务器授权密钥中的注释可以与客户端公钥中的注释完全不同

您可以在
authorized_keys
和日志中找到密钥之间的连接,但需要先使用

ssh-keygen -lf ~/.ssh/authorized_keys

也许有人需要它。下一个命令打印有关用于当前会话的ssh密钥的信息。密钥取自
~/.ssh/authorized\u keys
中的标准注释块

例如,
somebody@test.com
将为以下外观的密钥打印:
cyb5OrLRv0VR6gZev8…KdECf7Q==somebody@test.com

命令:

export CURRENT_SSH_USER=$(grep $(grep $(grep '@'$(who -m | awk '{print $2}') <(ps -ef) | head -1 | awk '{print $3}')']: Accepted publickey for' /var/log/auth.log | head -1 | awk '{print $16}') <(cat ~/.ssh/authorized_keys | xargs -n1 -I% bash -c 'ssh-keygen -l -f /dev/stdin <<<"%"') | tail -1 | awk '{print $3}')

export CURRENT_SSH_USER=$(grep$(grep$(grep'@'$(who-m | awk'{print$2}))这是离题的。Stackoverflow用于编程问题。请尝试superuser.com