搭建自己的WEB应用防火墙
之前给客户搭建的网站服务近期频繁遭受恶意扫描、暴力破解攻击,日志里记录着各种奇葩的请求地址,导致Tomcat线程资源耗尽,最终nginx报504(网关超时),在服务器上curl本地请求依然卡死,即让网站无法正常访问,也存在着巨大的安全隐患。奈何没米买WAF防火墙,咱只能发挥老一辈精神撸起袖子自己干,我决定在服务器上搭建 fail2ban 安全工具!!!
| 名称 | 版本 | 备注 |
|---|---|---|
| 操作系统 | CentOS 7.9 | |
| fail2ban | 0.10.2 | 一个用于阻止暴力破解攻击的安全工具 |
| nginx | 1.6.3 | 代理访问服务,域名端口转发、静态资源和证书等 |
| tomcat | 8.0.53 | 网站实际部署的应用服务器 |
一、安装 fail2ban
-
安装 EPEL 源
sudo yum install epel-release -yfail2ban 在 CentOS 默认源中不包含,需要添加 EPEL 源。
-
安装 fail2ban
sudo yum install fail2ban -y安装很简单,完成后系统会自动启动和添加 fail2ban 相关服务及配置文件。
二、配置监控策略和过滤器
-
复制配置文件模板
安装后有默认主配置文件 /etc/fail2ban/jail.conf,复制一份到 jail.local,避免直接修改官方配置文件,便于后续更新。sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local -
配置 jail.local 文件
sudo vi /etc/fail2ban/jail.localjail.local作为用户自定义的本地配置文件,用来覆盖jail.conf的设置。Faile2ban会优先读取并保留这个文件,Fail2ban升级时也不会被覆盖。
示例,我希望监控Tomcat服务,配置如下:[tomcat-access] enabled = true filter = tomcat-access logpath = /opt/tomcat/logs/localhost_access_log.*.txt maxretry = 5 findtime =<


1144

被折叠的 条评论
为什么被折叠?



