我想知道是否有办法让 ssh 服务器允许与用户交互(例如请求访问)?
我发现了一些允许 2FA 的 pam 插件,但目前我找不到任何与访问请求部分相关的内容。拥有用于 2FA 的 pam 插件意味着至少可以进行有限的交互,但是如何让用户请求访问权限呢?
您是否了解与该特定主题相关的任何插件或开发工作?
答案1
只要将 sshd 守护进程配置为使用 PAM(小心使用公钥,这可能会改变其工作方式!),那么就可以通过(自定义?)PAM 插件实现这一点。
这可能会破坏您现有的任何自动化工具(脚本中的 ssh/scp/sftp、Ansible 等),因此您在应用此类插件时应格外小心。2FA 可能在某种程度上也会出现同样的情况(例如,我相信,只有在为用户分配了令牌时,RSA 令牌才会提示)。
然而,从企业数据中心的角度来看,我建议也许最好重新考虑一下为什么这样做,因为您可能还想记录用户正在做什么(至少对于某些类别的用户)并有一些有用的机制来报告/审计这一点。
您可能希望对 Web 控制台和 Windows RDP 会话等做类似的事情。
您可能希望对凭证进行一些处理,定期控制访问权限和轮换凭证。这是审计中经常出现的问题。
这些都是商业安全领域已解决的问题。我听说过一个供应商将所有这些功能整合到一个软件包中,那就是 CuberARK,而且我知道至少还有另一个主要供应商。但我个人无法保证任何一家公司能做到,因为我没有用过它。