在特定用户的指定时间内禁用sshlogin

我想禁用sshlogin到我的系统为特定用户说X和Y在指定的时间17.00至18.00。

那么如何做到这一点呢?

任何帮助,将不胜感激。

答案是pam_time [1]

[1]: http : //www.linux-pam.org/Linux-PAM-html/sag-pam_time.html “pam_time”。 一如既往,小心编辑pam并备份你的configuration。

这是一个想法:

在sshd_config中添加以下行:

 AllowUsers USER1 USER3 USER3 USER4 

这个列表应该是你想被允许ssh到系统的所有用户。 列表出现后,重新启动sshd服务。 然后将以下行添加到根crontab:

 0 17 * * * /usr/bin/sed -i 's/^AllowUsers.*$/AllowUsers USER1 USER2/' && /sbin/service sshd restart 0 18 * * * /usr/bin/sed -i 's/^AllowUsers.*$/AllowUsers USER1 USER2 USER3 USER4/' && /sbin/service sshd restart 

这是为我的centos 6服务器写的,但适当改变你的crontab中的path以及sshd restart命令。 当然,用你想要的列表replace用户列表。