Linux服务器安全之 fail2ban的安装与配置
近日在查看Nginx的访问日志中,发现了大量404请求,仔细研究一番发现有人正在试图爆破网站。
我刚上线你就企图攻击我?????? 这怎么能忍。。
于是乎 --- 查资料后得知有一个神奇的工具 fail2ban 可以配合 iptables 自动封IP
iptables 是Centos6 的一种防火墙策略,在Centos7 中已被 Firewall所取代
本次实验系统为Centos6
不说了开干
1. 下载并安装fail2ban
1 cd /usr/loca/src 2 wget https://github.com/fail2ban/fail2ban/archive/0.9.4.tar.gz 3 tar -zxf 0.9.4.tar.gz 4 mv 0.9.4 fail2ban-094 5 cd fail2ban-094 6 ./setup.py
2. 目录结构
1 /etc/fail2ban # fail2ban 服务配置目录 2 /etc/fail2ban/action.d # iptables 、mail 等动作文件目录 3 /etc/fail2ban/filter.d # 条件匹配文件目录,过滤日志关键内容 4 /etc/fail2ban/jail.conf # fail2ban 防护配置文件 5 /etc/fail2ban/fail2ban.conf # fail2ban 配置文件,定义日志级别、日志、sock 文件位置等 6 7 cd /etc/fail2ban # 进入配置文件所在的目录 8 cp jail.conf jail.local # 备份配置文件
3. 配置防护
首先编写封禁访问nginx 404状态码的ip地址的配置规则
1 vim /etc/fail2ban/filter.d/nginx.conf 2 3 [Definition] 4 failregex = <HOST> -.*- .*HTTP/1.* 404 .*$ 5 ignoreregex =
保存后测试配置文件相对于日志是否正确
1 fail2ban-regex /home/wwwlogs/access.log /etc/fail2ban/filter.d/nginx.conf
然后将封禁规则加入配置文件
1 vim /etc/fail2ban/jail.conf # 文件尾部写入 2 3 [nginx] 4 enabled = true 5 port = http,https 6 filter = nginx # 规则文件的名字 7 action = iptables[name=nginx, port=http, protocol=tcp] 8 # sendmail-whois[name=tomcat, dest=abc@mail.com] 发送邮件功能 9 logpath = /home/wwwlogs/access.log # 日志路径 10 bantime = 14400 # 封禁的时间 11 findtime = 3 # 在几秒内 12 maxretry = 2 # 有几次
4. 启动
1 /etc/init.d/iptables start 2 /etc/init.d/fail2ban start 或 fail2ban-client start
5. 查看状态等命令
1 fail2ban-client start # 启动 2 fail2ban-client reload # 重载 3 fail2ban-client stop # 停止 4 fail2ban-client status # 查看状态 5 fail2ban-client set nginx addignoreip 180.158.35.30 # 将ip加入nginx监狱的白名单 6 fail2ban-client set nginx delignoreip 180.158.35.30 # 将ip移除nginx监狱的白名单 7 fail2ban-client set nginx banip IP地址 # 手工ban 8 fail2ban-client set nginx unbanip IP地址 # 手工解
6. 查看fail2ban的日志
fail2ban的日志默认在 /var/log/fail2ban.log
日志中记录着Ban IP的记录和UnBan IP的记录
也有修改配置文件重载后的记录
cat /var/log/fail2ban
7. 小结
fail2ban 还有许多强大的功能待研究,在 /etc/fail2ban/filter.d 中,有许多模板可以学习并使用
虽说把非法请求封禁一段时间看似安全些,但只要有对外的端口就不能保证服务器的绝对安全。多了解不同工具的组合使用,才会使服务器更加安全。
转载于:https://www.cnblogs.com/bestOPS/p/10616401.html
Linux服务器安全之 fail2ban的安装与配置相关推荐
- windows 和 linux服务器环境下j2sdk 的安装和环境设置
J2SDK 作为jsp系统配置中必不可少的组件,越来越多的得到应用.下来是我整理的以往工作时搜集的资料.使用时方便查询,希望对广大的工程师有帮助. windows服务器环境下 j2sdk 的安装和环境 ...
- linux服务器,卸载tensorflow CPU 安装PGU版
linux 服务器,卸载tensorflow CPU 安装PGU版 写在前面 之前用的和学习的都是pytorch框架,现在要运行一个keras的代码,得安装tensorflow和keras,按一个教程 ...
- linux系统安装hba驱动,Linux系统上iSCSI HBA的安装和配置
Linux系统上iSCSI HBA的安装和配置 关键字: Linux;iSCSI;HBA; 内容摘要: 如何在Linux系统上安装和配置iSCSI HBA. 正文 存储(target)端可以用硬件和软 ...
- Linux Centos下SQL Server 2017安装和配置
Linux Centos下SQL Server 2017安装和配置 原文:Linux Centos下SQL Server 2017安装和配置 我们知道在Linux下安装服务有很多方式,最为简单的也就是 ...
- 【Windows Server 2019】发布服务器 | 远程桌面服务的安装与配置 Ⅱ——配置RemoteAPP和访问
目录 4. 配置RemoteAPP 4.2 设置要发布的APP 4.1 如何找到访问链接 5. 访问发布的RemoteAPP 关联博文 4. 配置RemoteAPP 4.2 设置要发布的APP (1) ...
- 【Windows Server 2019】发布服务器 | 远程桌面服务的安装与配置 Ⅰ——理论,实验拓扑和安装基于RemoteAPP的RDS
目录 1. 理论 1.1 什么是远程桌面服务 2. 实验拓扑 2.1 拓扑说明 3. 安装基于RemoteAPP的RDS 关联博文 1. 理论 1.1 什么是远程桌面服务 远程桌面服务 (RDS) 是 ...
- 服务器 安装协议,服务器网管协议的安装与配置
服务器网管协议的安装与配置 内容精选 换一换 Joomla是一套全球知名的内容管理系统,即Joomla CMS(Content Management System).Joomla是使用PHP语言加上M ...
- linux rz 上传文件夹_第二章Linux服务器环境搭建之Tomcat安装
一.下载tomcat安装包 官网下载地址: http://tomcat.apache.org/download-80.cgi 我下载的版本是tomcat 9,具体下载那个版本需要根据自己的需要进行选择 ...
- ifconfig 安装_第一章Linux服务器环境搭建之JDK安装
一.工具准备 xshell Xftp7 二.下载JDK安装包 官网下载地址: https://www.oracle.com/java/technologies/javase/javase-jdk8-d ...
- linux中nginx卸载命令,linux服务器nginx的卸载与安装教程
前言 刚接触的linux服务器上,nginx配置乱的有点令人发指,就把老的卸载了重新装一下.下面话不多说了,来一起看看详细的介绍吧 卸载 linux有一系列的软件管理器,比如常见的linux下的yum ...
最新文章
- centos6创建用户,设置ssh登录
- TensorFlow 安装protoc
- 开发团队里是否需要测试人员?
- luogu3233 世界树 (虚树)
- matlab 小练习,matlab初试牛刀__小练习
- vue 如何获取图片的原图尺寸_公众号封面图片尺寸是多少?如何在公众号里制作封面图?...
- php 字符串中文截取,PHP 截取中文字符串(支持多种编码)
- [APIO2017]商旅——分数优化+floyd+SPFA判负环+二分答案
- 多线程日记(17.5.3)
- apache配置好后编译rewrite
- JQueryDOM之插入节点
- java 使用POI导入复杂excel表格
- matlab普朗克黑体辐射公式,MATLAB 黑体辐射规律的研究详解.doc
- php ecshop 清除缓存文件夹,ecshop缓存常见问题
- 0708-/etc/login.defs
- 图像的二阶导数为何对噪声尤为敏感-----图像二阶导数的本质
- 【阿里102句土话集锦】菜鸟必备
- Go包管理工具Vendor使用教程
- Logstash: Grok 模式示例
- 2.Apache服务器配置(Ubuntu)
热门文章
- Debian - 搭建Debian本地APT源
- Security+ 学习笔记47 事件响应方案
- PIM SM报文抓包和总结
- ELK详解(九)——Logstash多日志收集实战
- Linux shell脚本详解及实战(三)——shell脚本循环
- Linux命令使用练习一
- Leetcode 刷题笔记(二十) ——回溯算法篇之分割、子集、全排列问题
- Visual Paradigm 教程[UML]:如何在UML中绘制组件图?
- 蚂蚁金服分布式链路跟踪组件 SOFATracer 总览 | 剖析
- 西班牙税收现“4大变化” 侨胞当心“钱包”