Fail2ban是一款非常使用的軟件,它能夠監控系統日志,能夠有效的防止ssh被暴力破解,下面小編將針對Fail2ban在Linux下的安裝和使用給大家做個介紹,一起來了解下吧。
通過iptables, tcp-wrapper, shorewall等方式阻止此IP的訪問。
需要Pytion支持
python安裝
python安裝方法:
cd /tmp
wget http://python.org/ftp/python/2.7.3/Python-2.7.3.tgz
tar xzf Python-2.7.3.tgz
cd Python-2.7.3
。/configure
make && make install
rm -rf /usr/bin/python
ln -s /tmp/Python-2.7.3/python /usr/bin/
fail2ban安裝
cd /tmp
wget https://github.com/downloads/fail2ban/fail2ban/fail2ban_0.8.6.orig.tar.gz
tar xzf fail2ban_0.8.6.orig.tar.gz
cd fail2ban-fail2ban-a20d1f8/
。/setup.py install
cp files/RedHat-initd /etc/init.d/fail2ban
chmod 755 /etc/init.d/fail2ban
配置fail2ban日志輪循:
vi /etc/logrotate.d/fail2ban
寫入:
/var/log/fail2ban.log {
weekly
rotate 7
missingok
compress
postrotate
/etc/init.d/fail2ban restart 1》/dev/null || true
endscript
}
fail2ban使用方法
配置文件:
/etc/fail2ban/
├── action.d
│ ├── dummy.conf
│ ├── hostsdeny.conf
│ ├── iptables.conf
│ ├── mail-whois.conf
│ ├── mail.conf
│ └── shorewall.conf
├── fail2ban.conf
├── fail2ban.local
├── filter.d
│ ├── apache-auth.conf
│ ├── apache-noscript.conf
│ ├── couriersmtp.conf
│ ├── postfix.conf
│ ├── proftpd.conf
│ ├── qmail.conf
│ ├── sasl.conf
│ ├── sshd.conf
│ └── vsftpd.conf
├── jail.conf
└── jail.local
目錄action.d下的文件指定滿足條件時執行的一些動作,比如使用iptables禁止ip訪問。
目錄filter.d下的文件定義匹配日志的正則表達式。
fail2ban.conf文件是配置fail2ban-server程序啟動的一些參數
jail.conf文件包含filter及action的指定。
每個conf文件可被local文件覆蓋,conf文件第一個被讀取,接著是讀取local文件,所以local文件中定義的參數會覆蓋conf中的參數。所以我們不需要添加所有的內容到local文件,只需要添加conf文件中你想覆蓋的部分參數就好。
防ssh及vsftpd暴力破解實例
建立/etc/fail2ban/jail.local文件,在文件中加入:
[vsftpd-iptables]
enabled = true
filter = vsftpd
action = iptables[name=VSFTPD, port=ftp, protocol=tcp]
sendmail-whois[name=VSFTPD, [email protected]]
logpath = /var/log/secure
maxretry = 3
[ssh-iptables]
enabled = true
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp]
sendmail-whois[name=SSH, [email protected], [email protected]]
logpath = /var/log/secure.log
maxretry = 5
enabled:可選值false,true
filter:指定/etc/fail2ban/filter.d/目錄下的正則文件,如filter = sshd則是指定/etc/fail2ban/filter.d/sshd.conf。
action:指定執行的動作,具體動作文件在/etc/fail2ban/action.d目錄下。
logpath:指定監控日志的路徑。
maxretry:執行action匹配的次數。
接著執行:
service iptables start
service fail2ban start
可以 用fail2ban 分析freeswitch log文件,當發現注冊攻擊時 啟用防火牆規則拒絕此ip的請求。
上面就是Linux安裝使用Fail2ban的方法介紹了,本文還介紹了Fail2ban的使用實例,有興趣的朋友可以動手實踐下吧。