我一直在试图设置我最近升级到Mountain Lion的MacOS X服务器,使用denyhosts,因为我需要打开端口22。 denyhosts设置并添加条目到/etc/hosts.deny,所以我决定添加我的笔记本IP到它,以validation它实际上工作,但我仍然可以login,我的IP显示在/私人/ var /日志/system.log。 我甚至重新启动服务器,以确保没有一些服务必须重新启动。
我尝试了以下条目:
ALL: <my laptop's IP> sshd: <my laptop's IP> sshd: 127.0.0.1
我的/ etc / sshd_config设置了以下参数:
UsePAM yes UseDNS no
我谷歌如果deny.hosts已被弃用OSX 10.7或10.8,但我找不到它的任何迹象。 有什么错误的想法,或者如果有另一种方法来实现相同的结果?
是的,一个私钥将解决这个问题,但暂时我想坚持使用密码authentication。 我也喜欢denyhosts的想法,实际上阻止访问服务器上运行的所有服务,而不仅仅是ssh。
我也试图获得有关获取denyhosts在Mac OS X Mountain Lion上工作的一些信息。 到目前为止,我还没有成功,但我知道下一步该去哪里。 不知道我真的需要它。
根据http://denyhosts.sourceforge.net/ssh_config.html :
为了利用DenyHosts,你必须确保你的sshd服务器已经被编译了w / tcp_wrappers支持。
OS X ML似乎不是这种情况。 https://discussions.apple.com/thread/4267535?start=0&tstart=0
这就是为什么在Mountain Lion中hosts.deny被忽略的原因。
但我不知道我想通过Mac端口安装libwrap …也许我只是将SSH端口更改为更高的限制尝试失败的攻击。
一旦你只接受sshd的公钥authentication,你实际上只能通过syslog失去一些几乎不可测量的性能和更多的磁盘空间。
OS X 10.8使用pf进行数据包过滤。 要阻止来自特定IP的传入stream量,可以在/etc/pf.conf添加这样的一行:
block in from 221.0.213.154
然后执行此操作重新加载configuration文件:
pfctl -e -f /etc/pf.conf
我试过这个,它对我很有用。
通过在雪豹和山狮上使用稍微修改的Fail2ban安装,我能够成功地阻止这些蛮力攻击。 我使用了这个教程和Andy Fragen博士build议的一些调整。 如果你遇到任何困难,请告诉我,我很乐意帮忙。