fail2ban
fail2ban監視檢測日志文件,根據匹配日志的錯誤信息(正則式匹配)執行相應的屏蔽動作。
可用來放置爆破 和 CC 攻擊。
安裝:
yum install fail2ban -y 配置: /etc/fal2ban 配置規則目錄; /etc/fail2ban/filter.d
配置示例:
ignoreip = 127.0.0.1/8 # 忽略IP 白名單 bantime = 600 # 屏蔽時間 #發現時間,在此期間內重試超過規定次數,會激活fail2ban findtime = 600 # 策略限制時間范圍 超過會觸發策略
maxretry = 3 # 最大次數 backend = auto # 日志修改檢測機制 [ssh-iptables]
enabled = true # 激活 filter = sshd # filter 規則下的名字 在 filter 目錄下; action = iptables[name=SSH, port=ssh, protocol=tcp] mail-whois[name=SSH, dest=root] # 采取策略 logpath = /var/log/ # 日志分析目錄
注:
啟動會有 關於 python版本導致 模塊不能調用錯誤:
ImportError: No module named fail2ban.version
fail2ban-server:
Starting fail2ban: Traceback (most recent call last): File "/usr/bin/fail2ban-server", line 29, in <module> from fail2ban.version import version ImportError: No module named fail2ban.version
failban-client: Starting fail2ban: Traceback (most recent call last): File "/usr/bin/fail2ban-client", line 37, in <module> from fail2ban.version import version ImportError: No module named fail2ban.version
是由於更新系統默認python 版本,而 配置自動找尋的是 python 2.6,所以需要重新配置 引導python版本:
編輯: /usr/bin/fail2ban-server 和 /usr/bin/fail2ban-client
更改 第一行: #!/usr/bin/python -Es 更改為 #!/usr/bin/python2.6 -Es
fail2ban-server -V