我想只允许来自3个IP地址的SSHlogin:111.111.111.111和222.222.222.222和333.333.333.333。 我知道,我必须编辑/etc/hosts.allow和/etc/hosts.deny文件。
我的问题是关于这些文件的内容。 我看到了不同的变体:
#/etc/hosts.allow
变体1:
sshd: 111.111.111 sshd: 222.222.222 sshd: 333.333.333
变体2:
sshd: 111.111.111, 222.222.222, 333.333.333
变体3 :(无逗号):
sshd: 111.111.111 222.222.222 333.333.333
变体4(带有sshdfwd-X11):
sshd,sshdfwd-X11: 111.111.111 222.222.222 333.333.333
的/etc/hosts.deny
变体1:
sshd: ALL
VARIANT2:
sshd,sshdfwd-X11:ALL
哪一个是正确的? 我害怕把我锁起来。 谢谢。
我将使用AllowUsers在sshd_config亲自执行此操作。
AllowUsers = *@111.111.111.111, *@222.222.222.222, *@333.333.333.333
对我来说,这使得所有的configuration都与你所控制的应用程序相关联。 总是有不止一种方式来使用UNIX皮肤,但是如果该工具提供了特定的控制机制,我倾向于比其他任何东西( 通常更便携)。
在对远程访问进行任何更改时,
我发现,只要你已经有几个远程会话,你会没事的。 更改/etc/ssh/sshd_config和回收SSH不会断开任何现有会话。
虽然我明白,不回答你的具体问题。 我相信杰夫的答案 (所有这些变种是有效的,如果你使用/etc/hosts.deny或/etc/hosts.allow )。
一般来说,我喜欢使用iptables来实现这样的规则。
至于正确的变体,所有这些应该工作。 相关的手册页 (感谢收到这个奥利弗)说使用空格或逗号是可以接受的。 它还会继续讨论daemon: client任何匹配daemon: client将会计数,并且可以将多个客户端列入队列中,并且将对多个守护进程的条目进行评估。