首頁 / 精華文章 / [CentOS]安裝&調教ConfigServer Security & Firewall
Logo

[CentOS]安裝&調教ConfigServer Security & Firewall

ConfigServer Security & Firewall(簡稱CSF)防火牆是一個開放原始碼的軟體,雖然我其實一直是使用同類型的Advanced Policy Firewall(簡稱APF),但是前陣子更換CentOS 6之後才發現好像跟APF不太和氣 🙀 雖然APF官網也有更新9.7 (rev:2),但我覺得APF他更新速度有點慢,CentOS都6.5了他才跟上這點我滿介意的,所以就換上了WHM/Cpanel主機管理系統上的外掛模組CSF 😝 這套更新速度倒也滿快的,基本安裝也簡單,還附送一個Login Failure Daemon(簡稱LFD)軟體,而且除了WHM付費的主機管理系統可用,另一套Webmin開放原始碼的主機管理系統也同樣有支援CSF的外掛模組,這點我就滿開心的,因為我每台主機都有裝Webmin 😎 所以就來簡單記錄一下使用過程吧!
1. 首先安裝基本套件
yum install -y iptables nano perl perl-GDGraph perl-libwww-perl
2. 下載CSF
cd /usr/src
rm -fv csf.tgz
wget http://www.configserver.com/free/csf.tgz
tar xzf csf.tgz

3.如果安裝了AFP或BFD的同性質軟體請先執行CSF自帶的移除檔案
sh /usr/src/csf/remove_apf_bfd.sh
4. 安裝CSF
cd /usr/src/csf
sh install.sh

4.1 安裝完畢後先執行1次自我測試,如果正常就可使用完整功能,也就是比較能保障主機的安全,OpenVZ的VPS要特別注意這點
perl /usr/local/csf/bin/csfui.pl
csftest
4.2 安裝過程中CSF會自動將目前連線的IP加入白名單,也自動把已使用中的port加入設定檔,另外有安裝Webmin的可以在Webmin新增CSF外掛模組,
在左手邊的Webmin > Webmin Configuration > Webmin Modules
選擇From local file,空格中輸入/usr/local/csf/csfwebmin.tgz
Webmin_with_CSF_01
5. 新增好之後可以在左手邊的System > ConfigServer Security & Firewall看到他,不喜歡在SSH操作的就可以在這邊操作 🤐
Webmin_with_CSF_02
6. 設定CSF也不難,官方的讀我檔案有完整介紹,我這邊簡單介紹一下
vi +/TESTING /etc/csf/csf.conf
第220行 – 指定偵測的網路介面
ETH_DEVICE = “eth0” ← 一般Linux系統
ETH_DEVICE = “venet0” ← OpenVZ的VPS
第115行 – 指定要開放的TCP的PORT
TCP_IN = “20,21,22,25,47,53,80,110,113,123,143,161,443,465,587,993,995,1723,1812,1813,2077,2078,2082,2083,2086,2087,2095,2096,3306.10000,15000:16000”
第121行 – 指定要開放的UDP的PORT
UDP_IN = “20,21,22,25,47,53,123”
第128行 – 啟動ICMP功能,開放主機接受PING
ICMP_IN = “1”
第352行 – 指定SMTP使用的PORT
SMTP_PORTS = “25,465,587”
第358行 – 指定要開放使用SMTP的使用者與群組
SMTP_ALLOWUSER = “cpanel”
SMTP_ALLOWGROUP = “mail,mailman”
第399行 – 平時不啟動,當遭到SYNFLOOD或DDoS攻擊時,啟動過濾SYNFLOOD功能,這邊的範例是主機收到每秒100個封包就阻擋,突發上限是150,資源較小的主機可以把數字再往下調整
SYNFLOOD = “1”
SYNFLOOD_RATE = “100/s”
SYNFLOOD_BURST = “150”
第435行 – 平時不啟動,當遭到SYNFLOOD或DDoS攻擊時,啟動過濾PORTFLOOD功能,這邊的範例是如果300秒內有10個以上同樣的IP連接到tcp端口22的連接,則60秒後阻止該IP連線到端口22,另外如果5秒內有10個以上同樣的IP連接到tcp端口80的連接,則60秒後阻止該IP連線到端口80
PORTFLOOD = “22;tcp;10;60,80;tcp;10;60”
第419行 – 指定特定PORT可連線的數量,比如說22的PORT可5連線,443可20個連線
CONNLIMIT = “22;5;443;20
大致上也就這樣,其他的不太需要動 👫 設定完畢後再關閉測試模式
第11行 – 關閉測試模式
TESTING = “0
7. 在SSH操作CSF其實也只有幾個指令常用,簡單介紹一下
檢查CSF運作狀態
csf -l
快速新增IP到黑名單
csf -d 8.8.8.8
快速新增IP到白名單
csf -a 8.8.8.8
重新讀取設定檔
csf -r
更新CSF主程式
csf -u
重新啟動CSF服務
service csf restart

關於 窮苦人家的小孩

In every democracy, the people get the government they deserve. ~Alexis de Tocqueville
上一篇:
下一篇:

您可能會喜歡

設定 HTTP強制安全傳輸技術 (HSTS) with VestaCP

HTTP強制安全傳輸技術(HT …