有没有办法只允许在特定时间进行登录?


14

每个工作日,我大约在同一时间(上午8点至上午9点之间)使用PuTTY登录我的VPS(Linux)。

有没有办法防止或在其他时间自动使所有其他登录尝试失败?


2
多数在线人建议编写一对可操作IPTable的cron作业,以便SSH端口仅在这两个小时之间开放。
弗兰克·托马斯

4
请记住,如果发生什么事,你将不能够在不同的时间访问它
巴特洛梅耶莱万多夫斯基

1
除非您有特定的原因需要限制登录时间,否则这是个坏主意。如果您要做的只是保护计算机安全,那么一个安全的密码就足够了。linux漏洞将(最有可能)完全绕过登录,这使此操作无用。同时,您将限于特定的时间。
乔恩·

2
更好地使用fail2ban
2014年

1
我同意,fail2ban对于面向SSH的公众至关重要。它不能防御僵尸网络驱动的一些非常慢的分布式暴力攻击,但是对于这种对手,在服务层上几乎没有什么可做的。
弗兰克·托马斯

Answers:


21

有关time.conf请参见此手册页。

user1 ; * ; Wd0000-2400 | Wk1800-0800

会允许用户user1在工作日(wk)晚上,在周末(wd)的整个晚上,并在其余时间拒绝他们。

你的就像

* ; * ; Al0800-0900

Wk1800-0800规则在您的示例中正确吗?如果是-它的含义是否等于Wk0000-0800|Wk1800-2400Mo1800-2400|WkMo0000-0800|WkMo1800-2400|Sa0000-0800
burtek

是的,该规则直接来自手册页,因此我非常有信心。是的,它应该等效于您的复合表达式。至于您的较大规则,您是否想说:在星期一6p-12a,每个工作日(星期一12a-8a除外),每个工作日(星期一除外)从6p-12a,星期六和星期六12a-8p?规则集不完全合乎逻辑(为什么要允许星期一,然后不允许同一时间段的星期一)。请注意,一定要在管道和半导体的周围使用空格。bash可能对此特别关注。
弗兰克·托马斯

似乎您还必须在中编辑文件/etc/pam.d/。请参阅ask.fedoraproject.org/en/question/7260/…
erik
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.