Freebsd 下用 sshguard 防止暴力破解 ssh 密码

在 Freebsd 控制台或用 dmesg -a 查看系统消息的时候会发现相似于下面的大量信息,这是由于有人在尝试暴力破解 SSH 密码的缘由。安全

Jun 22 06:42:00 vps sshd[80092]: error: PAM: authentication error for illegal user nuucp from 200.79.53.211
Jun 22 06:44:12 vps sshd[80118]: error: PAM: authentication error for illegal user nx from 87.139.25.251
Jun 22 06:47:00 vps sshd[80138]: error: PAM: authentication error for illegal user ocs from 85.41.229.81
Jun 22 06:49:23 vps sshd[80144]: error: PAM: authentication error for illegal user office1 from 211.25.200.194

Freebsd 下最经常使用的管理软件是SSH,SSH 自己能够限制一个IP输错多少次密码以后能够断掉连接,但不会封 IP ,攻击依旧能够持续连接来穷举密码。若是想在必定时间内封掉对方IP 的话,让其没法连接,能够经过 sshguard 来实现。服务器

sshguard 能够与 Pf,IPFW,netfilter/iptables 等几个软件结合来实现输入密码错误屡次以后禁止该 IP 再访问服务器的SSH端口。ssh

安装和使用rest

cd /usr/ports/security/sshguard-ipfw/
make install clean

编辑 /etc/syslog.confcode

把下面一行前面的 # 去掉。vps

#auth.info;authpriv.info     |exec /usr/local/sbin/sshguard

重启 syslogdip

/etc/rc.d/syslogd restart

等待一段时间,查看控制台或 dmesg -a ,出现下面相似消息说明 sshguard 已经正常运行了。it

Jun 22 06:59:43 vps sshguard[79469]: Blocking 89.120.242.95:4 for >420secs: 4 failures over 0 seconds.

进一步加强安全性

FreeBSD 的 sshd_config 配置中默认容许用户输错 6 次密码,这也就是说以前设置的 sshguard 在对方尝试六次后才封 ip ,为了进一步缯强安全性,咱们能够修改这一参数。io

vi /etc/ssh/sshd_config

去掉 #MaxAuthTries 6 前面的 # 号,并修改成 2table

MaxAuthTries 2
相关文章
相关标签/搜索