我正在跑 OpenSSH_7.6p1
进去Ubuntu 20.4
。我想/usr/local/bin/script.sh
在登录 SSH 后立即运行特定脚本 ( )。这个脚本甚至应该运行前显示 ssh 横幅。
指定密码后运行的脚本执行一些负责两因素身份验证过程的功能。因此,在验证 2FA 后提供的登录横幅和 shell 访问权限非常重要。
例如,如果我想以“测试”用户身份登录。我将使用ssh test@localhost
,然后在指定密码后,该脚本应该运行,然后如果脚本成功执行且没有任何错误,则应该显示横幅并让我访问系统 shell。
我试图通过以下答案来实现这一目标这post,但在所有这些中,我指定的脚本是在指定横幅后执行的。
答案1
在评论中,您声明您正在尝试实施 2FA。
最好将其实现为 PAM 模块,该模块作为身份验证系统的一部分运行(在输入密码之前或之后,具体取决于您的配置)。
实现 2FA 的示例 PAM 模块可以在以下位置找到:https://cern-cert.github.io/pam_2fa/
免责声明:我自己还没有尝试过。