为了允许使用ssh密钥登录,我被要求确保当服务器处于维护模式时,任何新的连接都会失败。我可以通过检查文件是否存在来确定服务器是否处于维护模式。到目前为止,我已经尝试将以下内容放在.ssh/rc文件中,但我仍然能够连接。有人有更好的解决方案吗?
if [ -e $CHECK_FILE ]
then
echo "Under Maintenance... login disabled"
kill -9 $$
#exit -1
fi
如果您使用Linux,请从~/.ssh/rc
:中杀死您自己的sshd
killall sshd
创建带有维护消息的/etc/nologin
,以防止任何通过ssh
的登录(或仅在该期间终止sshd
)。
但是,如果通过ssh
进行维护,则需要允许某个用户登录。在这种情况下,使用之类的东西更新/etc/sshd_config
AllowUsers bob
以防止除"bob"以外的任何人登录。