针对暴力破解除了常规性的调整服务器的账号密码复杂度,以及调整默认端口等方式提高攻击难度外,还可以通过开员工具fail2ban来进行设置防护规则来提高防护能力。 服务器基础防护设置: 1.密码满足复杂性要求。 2.修改ssh程序默认的远程端口。 3.修改默认管理员账号:新建一个超级管理员账号,并把toot改称为nologin。

1、下载源码包: wget https://codeload.github.com/fail2ban/fail2ban/tar.gz/0.8.14

2.解压源码包 tar -xvf 0.8.14 3.安装 进入解压包 cd fail2ban-0.8.14/
python setup.py install 4.生成启动脚本 cp files/redhat-initd /etc/init.d/fail2ban chkconfig --add fail2ban

5.Fail2ban的配置文件: /etc/fail2ban/action.d ##动作文件夹,内含默认文件。iptables及mail等动作配置。 /etc/fail2ban/fail2ban.conf ##定义了fail2ban日志级别、日志位置及sock文件位置。 /etc/fail2ban/filter.d ##条件文件夹,内含默认文件。过滤日志关键内容设置。 /etc/fail2ban/jail.conf ##主要配置文件,模块化。主要设置启动ban动作的服务及动作阈值。

6.配置文件 vim /etc/fail2ban/jail.conf

1.忽略的IP列表(白名单) 2.屏蔽时间--秒 3.这个时间超过规定次数就会被ban掉 4.最大尝试次数 日志检测机制(gamin,polling和auto三种) 5.【ssh-iptables】针对各种服务的检查配置,如设置bantime,findtime,maxretry和全局冲突,服务优先级大于全局 6.是否激活此服务 7.过滤规则filter的名字,对应filter.d目录下的sshd.conf

8.启动和检查fail2ban Systemctl restart fail2ban Fail2ban-client status 测试一下 useradd test password test 登录test用户 输错5次密码 直接退出。