fail2ban 是 Linux 上的一個(gè)著名的***保護(hù)的開源框架,它會監(jiān)控多個(gè)系統(tǒng)的日志文件(例如:/var/log/auth.log 或者 /var/log/secure)并根據(jù)檢測到的任何可疑的行為自動(dòng)觸發(fā)不同的防御動(dòng)作。在基本的安全方面,fail2ban 在防御對SSH服務(wù)器的暴力密碼破解上非常有用。
創(chuàng)新互聯(lián)公司憑借專業(yè)的設(shè)計(jì)團(tuán)隊(duì)扎實(shí)的技術(shù)支持、優(yōu)質(zhì)高效的服務(wù)意識和豐厚的資源優(yōu)勢,提供專業(yè)的網(wǎng)站策劃、成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、網(wǎng)站優(yōu)化、軟件開發(fā)、網(wǎng)站改版等服務(wù),在成都10余年的網(wǎng)站建設(shè)設(shè)計(jì)經(jīng)驗(yàn),為成都千余家中小型企業(yè)策劃設(shè)計(jì)了網(wǎng)站。
接下來就說一下基本的配置:
1.下載源
下載合適的安裝包
2.yum 安裝
yum install -y fail2ban
3.啟動(dòng)
service fail2ban start
4.fail2ban 的設(shè)定檔在這里
服務(wù)配置目錄 :/etc/fail2ban/
/etc/fail2ban/action.d #動(dòng)作文件夾,內(nèi)含默認(rèn)文件。iptables以及mail等動(dòng)作配置
/etc/fail2ban/fail2ban.conf #定義了fai2ban日志級別、日志位置及sock文件位置
/etc/fail2ban/filter.d #條件文件夾,內(nèi)含默認(rèn)文件。過濾日志關(guān)鍵內(nèi)容設(shè)置
/etc/fail2ban/jail.conf #主要配置文件,模塊化。主要設(shè)置啟用ban動(dòng)作的服務(wù)及動(dòng)作閥值
/etc/rc.d/init.d/fail2ban #啟動(dòng)腳本文件
5.配置
vim /etc/fail2ban/jail.conf
[DEFAULT]
# "ignoreip" 可以是個(gè) IP 地址, 無類別域間路由(Classless Inter-Domain Routing、CIDR)或者 DNS 地址。
# Fail2ban 不會禁用匹配到的 IP。
# 多個(gè)地址可以用空格來分割。
ignoreip = 127.0.0.1
# "bantime" 就是拉黑時(shí)間,按秒算。
bantime = 3600
# "findtime" 就是一個(gè) IP 在此間隔內(nèi)會被算入重試次數(shù)。如 600 時(shí)則是 10 分鐘內(nèi)再登陸將把重試次數(shù) +1,超過 10 分鐘后則從頭開始算。
# 按秒算。
findtime = 600
# "maxretry" 就是最大重試次數(shù)。如 3 則失敗 3 次就禁止登陸。
maxretry = 3
#日志檢測機(jī)器,有"gamin", "polling" and "auto"三種模式。
backend = auto
enabled = true
[ssh-iptables] #啟用
filter = sshd
# 這里的 port=ssh 是默認(rèn)的 SSH 端口,如果你修改了的話這里也要改,比如 port=213
action = iptables[name=SSH, port=ssh, protocol=tcp]
sendmail-whois[name=SSH, dest=root, sender=fail2ban@example.com]
logpath = /var/log/secure
maxretry = 5
6.查看iptbales
[root@ fail2ban]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
f2b-SSH tcp -- anywhere anywhere tcp dpt:ssh
7.查看日志
tail/var/log/fail2ban.log