![openssh 删除了对 tcp_wrappers 的支持 - 现在怎么办?不再有 hosts.allow 来进行 ssh 访问?](https://linux22.com/image/709296/openssh%20%E5%88%A0%E9%99%A4%E4%BA%86%E5%AF%B9%20tcp_wrappers%20%E7%9A%84%E6%94%AF%E6%8C%81%20-%20%E7%8E%B0%E5%9C%A8%E6%80%8E%E4%B9%88%E5%8A%9E%EF%BC%9F%E4%B8%8D%E5%86%8D%E6%9C%89%20hosts.allow%20%E6%9D%A5%E8%BF%9B%E8%A1%8C%20ssh%20%E8%AE%BF%E9%97%AE%EF%BC%9F.png)
在删除最初安装的 openssh 包(当前为 6.6.1p1)后,我在 CentOS 7.3 系统上构建了 openssh 7.5p1。
一切似乎都很好,直到我发现 openssh 在 6.7 版本中删除了对 tcp_wrappers/libwrap 的支持。
我猜这意味着我通过 /etc/hosts.allow 和 /hosts/deny 的旧的/受信任的 ACL 现在毫无用处了?(目前我没有办法测试,除非使用欺骗工具)。
如果这是真的,那么到目前为止,还有什么方法可以替代这种如此方便和简单的控制公共 ssh 服务器访问的方法呢?
答案1
在删除最初安装的 openssh 包(当前为 6.6.1p1)后,我在 CentOS 7.3 系统上构建了 openssh 7.5p1。
目前 OpenSSH 在 RHEL 7.4 中是 7.4。如果 CentOS 中还没有,请再等几天。
一切似乎都很好,直到我发现 openssh 在 6.7 版本中删除了对 tcp_wrappers/libwrap 的支持。
如果您愿意,您可以构建支持 tcp_wrappers 的 OpenSSH。有一个补丁添加了对此的支持:
http://lists.mindrot.org/pipermail/openssh-unix-dev/2017-July/036131.html
我猜这意味着我通过 /etc/hosts.allow 和 /hosts/deny 的旧的/受信任的 ACL 现在毫无用处了?(目前我没有办法测试,除非使用欺骗工具)。
或者您可以使用实例化的 sshd 服务tcpd
来启动sshd
并执行过滤,如以下邮件所述:
https://lists.fedoraproject.org/archives/list/[电子邮件保护]/消息/UOAUI4TC6PQVHRJ2ONQ2N3IKHR4577VH/
如果这是真的,那么到目前为止,还有什么方法可以替代这种如此方便和简单的控制公共 ssh 服务器访问的方法呢?
是的,确实如此,但为了合理过滤,你应该使用防火墙。20tcp_wrappers
年前就有了,当时 Linux(和 Unix)上几乎没有防火墙。