防止暴力破解ssh密码

OpenBSD的安装、升级、更新等日常问题。

版主: chenjun天地乾坤

回复
头像
leo
帖子: 2465
注册时间: 2010-01-21 3:27

防止暴力破解ssh密码

帖子 leo » 2010-01-21 11:27

消遣一下
闲暇无事时看着无聊的人反复尝试你的22端口有时也是一种消遣。

以下的pf规则摘自《The Book Of PF》,作者是Peter N. M. Hansteen
在过滤规则尽量前面的地方加上

代码: 全选

table <bruteforce> persist
block quick from <bruteforce>
........
pass quick proto {tcp udp} from any to any port ssh\
keep state (max-src-conn 15,max-src-conn-rate 5/3,\
overload <bruteforce> flush global)

这里max-src-conn 是你允许远程一台主机最大的连接数,max-src-conn-rate是新连接的速率,我这里目前是设置成60/120,也就是每120秒有60次的ssh连接尝试,overload是指一旦超过这个限制(连接数和连接速率)该主机的IP地址就会被加入到<bruteforce>中,那么根据前面的block quick from <bruteforce>规则,该主机被自动block,你如果想释放<bruteforece>表中的地址可以使用类似下面的命令:

代码: 全选

# pfctl -t bruteforce -T expire 99710
上面的命令是释放<bruteforce>中的被“关押了”超过99710秒IP地址,总要给人一个机会是吧?
你也可以设置crontab来自动完成将上面的命令。
注意,你还可以设置你的sshd_config文件配合上面的规则,就能更好地防止ssh密码的暴力破解,也就是禁止root登录,禁用密码验证登录方式,用ssh-keygen设置rsa密钥,更改ssh端口........


gobsd.org

回复

在线用户

正浏览此版面之用户: Ahrefs [Bot] 和 1 访客