什麼是APF?
APF: Advanced Policy Firewall,是 Rf-x Networks 出品的Linux環境下的軟體防火牆。APF採用Linux系統預設的 iptables 規則。APF可以算是Linux中最出名的軟體防火牆之一。
下載最新版的APF:
wget http://www.rfxnetworks.com/downloads/apf-current.tar.gz
解壓:
tar -xzvf apf-current.tar.gz
進入APF目錄:
cd apf-版本
安裝!
./install.sh
安裝完以後,開始配置APF:
nano /etc/apf/conf.apf
尋找(ctrl + w) USE_DS=”0″ ,將之更改為 USE_DS=”1″ ;尋找 USE_AD=”0″ ,將之更改為 USE_AD=”1″ 。
然後開始配置最主要的部分:連接埠。
以下提供 cPanel, Ensim 和 Plesk 的推薦配置。
cPanel
IG_TCP_CPORTS=”20,21,22,25,26,53,80,110,143,443,465,993,995,2082,2083,2086,2087,2095,2096″
IG_UDP_CPORTS=”21,53,873″
EGF=”1″
EG_TCP_CPORTS=”21,22,25,26,27,37,43,53,80,110,113,443,465,873,2089″
EG_UDP_CPORTS=”20,21,37,53,873″
Ensim
IG_TCP_CPORTS=”21,22,25,53,80,110,143,443,19638″
IG_UDP_CPORTS=”53″
EGF=”1″
EG_TCP_CPORTS=”21,22,25,53,80,110,443″
EG_UDP_CPORTS=”20,21,53″
Plesk
IG_TCP_CPORTS=”20,21,22,25,53,80,110,143,443,465,993,995,8443″
IG_UDP_CPORTS=”37,53,873″
EGF=”1″
EG_TCP_CPORTS=”20,21,22,25,53,37,43,80,113,443,465,873″
EG_UDP_CPORTS=”53,873″
下面列出常規的連接埠,方便大家進行配置:
21/tcp ftp
22/tcp ssh
25/tcp smtp
26/tcp 備用smtp連接埠
80/tcp http
110/tcp pop3
143/tcp imap
443/tcp https
993/tcp imaps
995/tcp pop3s
3306/tcp mysql
5432/tcp postgres
53/udp dns
配置完成後儲存退出,並啟動APF防火牆:
/usr/local/sbin/apf -s
請注意,此時防火牆是運行在偵錯模式,每五分鐘重洗配置。這樣能避免因為錯誤的配置而使伺服器癱瘓。
確保配置無誤後,再次進入設定檔(nano /etc/apf/conf.apf),將 DEVM=”1″ 更改為 DEVM=”0″ 。這樣APF就會運行在常規模式下。
重啟APF(/usr/local/sbin/apf -s)。
注意事項:如果你的Linux核心將iptables直接編譯而非模組模式的話,請將設定檔中的 MONOKERN=”0″ 更改為 MONOKERN=”1″ 。
可選配置:
APF有個新的功能便是防止DoS攻擊(/etc/apf/ad)。其記錄檔儲存在/var/log/apfados_log。
下面我們將配置APF使其遇到DoS後寄送電子郵件給管理員。
開啟設定檔:
nano -w /etc/apf/ad/conf.antidos
尋找 [E-Mail Alerts] 。
CONAME=”Your Company” 為你的網站或公司名稱。
將 USR_ALERT=”0″ 更改為 USR_ALERT=”0″ ,從而使系統寄送電子郵件。
USR=”your@email.com” 為你的電子郵件地址。
儲存並退出,重啟APF(/usr/local/sbin/apf -r)。
另外,如果需要讓系統每次重新啟動後自動運行APF,則執行以下命令:
chkconfig --level 2345 apf on
需要去除自動啟動的話:
chkconfig --del apf
最後,希望大家都能順利的為自己的Linux架設起一道有效安全屏障。