我有一台服务器,有三个人使用他们的SSH密钥作为用户测试访问该服务器,他们的公钥保存在authorized_keys文件中。
有没有办法将用户映射到ssh密钥。 例如,如果具有公钥A1的用户登录到服务器,那么我可以将A1密钥与配置文件或小表(由我创建)中的人名匹配,并获取活动用户的名称。 我如何检查用于登录服务器的ssh密钥是什么,并且当前是否处于活动状态,是否有办法执行此操作?
答案 0 :(得分:2)
形成manpage我们可以读到您可以在authorized_keys文件中为每个键设置环境变量。为此,您需要设置
PermitUserEnvironment yes
在/etc/ssh/sshd_config
中并重新启动您的ssh服务器。
然后在environment="name=value"
中的ssh公钥前添加authorized_keys file
,例如:
environment="sshuser=user1" ssh-rsa AAAA...
如果您登录服务器,则可以访问env变量:
$ ssh server
$ echo $sshuser
user1
希望它有所帮助!