linux - SSH 身份验证(无 PAM): how to know if user logged in by key or password?

标签 linux authentication ssh

我想在用户SSH登录后做一些事情,这与通过公钥或密码不同。 PAM 不会参与我的案子。

程序可以通过一种方式从/var/log/messages 或/var/log/auth.log 检查 SSH 身份验证信息。但通常,这些文件对普通用户来说是不可读的。也许我可以 chmod o+r,但这听起来不安全。

我还检查了一些与 SSH 相关的环境变量,如“SSH_CONNECTION”,但没有一个有用。

有什么好的方法吗?感谢您的帮助:)

最佳答案

你不能在 sshd 本身之外这样做,在它内部我知道的唯一方法是使用 authorized_keys 来匹配特定的键并执行特定的命令。

关于linux - SSH 身份验证(无 PAM): how to know if user logged in by key or password?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10255047/

相关文章:

c - 在 C 中制作 shell 时遇到问题

linux - 将程序的控制台输出保存到文件 - 不简单 2>&1

linux - 认证代理

web-services - RESTful webservice + Spring token 认证

node.js - 如何使用 ubuntu 服务使进程持久化?

linux - 我可以包装 linux shutdown 命令来进行额外的检查吗?

linux - 检测堆栈溢出

php : simple azure login with info

git - 无法通过SSH克隆/推送

git - 在 jenkins 中为 git 存储库配置端口