我使用 ssh 的“forcecommand”选项传递一个 shell 脚本,该脚本可帮助锁定 ssh 用户。我想知道是否有办法做到这一点,而无需强制 root 也执行 shell 脚本。
谢谢!
答案1
sshd 允许我们覆盖所选用户(用户、组、主机或地址)的默认设置。
我们可以使用Match
块来实现这一点。在Match
块中,我们必须设置我们想要更改的条件和设置。
我不知道是否可以取消设置选项sshd_config
(例如,通过使用没有参数的选项),但如果不可能,您可以创建要限制的用户组并ForceCommand
仅适用于该组。
使用未设置选项进行配置:
Match User root
ForceCommand #some way to unset option?
配置限制组:
Match Group restrictedsshd
ForceCommand /some/script.sh
Match
您可以在 中找到有关选项的更多信息man sshd_config
。
答案2
从man sshd (LOGIN PROCESS)
:
3. Checks /etc/nologin; if it exists, prints contents and quits (unless root).