精品軟體與實用教程
csf(ConfigServer Security & Firewall)永久关闭
Way to the Web Ltd 和Configserver.com已于 2025 年 8 月 31 日永久关闭。
该公告于 2025 年 7 月 30 日首次在我们的博客和本网站上发布,以便我们的客户有时间更新他们的软件或为我们公司的关闭做好准备。
此次关闭将影响我们所有的商业软件,包括 ConfigServer 漏洞扫描器 (cxs)、MailScanner 前端 (MSFE) 和外发垃圾邮件监控器 (osm)。此外,我们还将影响我们的免费软件,包括 ConfigServer 安全和防火牆 (csf)、ConfigServer 邮件队列 (cmq)、ConfigServer 邮件管理 (cmm)、ConfigServer 模块安全控制 (cmc) 和 ConfigServer 资源管理器 (cse)。
截至 2025 年 8 月 31 日,不再提供任何支持、下载或许可 IP 更改。
为了在8月31日之后继续使用我们的任何商业软件,您必须将软件更新至最新版本。如果您未更新软件,一旦下载和许可证服务器关闭,我们的任何商业软件产品都将停止运行,并且无法重新激活。
我们已根据 GPLv3 许可证发布了 csf(ConfigServer Security & Firewall)、cmc(Configserver Modsecurity Control,适用于 cPanel)、cmm(ConfigServer Mail Manage,适用于 cPanel)、cmq(ConfigServer Mail Queues,适用于 cPanel 和 DirectAdmin)以及 cse(ConfigServer Explorer,适用于 cPanel)。这些脚本现已发布在我们的GitHub 仓库中。
安裝CSF防火牆(ConfigServer Security & Firewall)
在 Ubuntu 上,CSF(ConfigServer Security & Firewall)是一种强大的防火墙管理工具,主要用于增强服务器的安全性。它不仅提供传统的防火墙功能,还集成了许多额外的安全措施和监控功能,适合Linux服务器的管理需求。CSF 在简化配置、防止攻击、保护服务器资源等方面有重要作用,特别是在网站和应用服务器中广泛使用。
在Ubuntu22.4 上,安裝CSF防火牆之後,可以在CyberPanel中啟用!
CSF 的主要功能與用途
防火牆管理
CSF 使用 iptables
來管理入站和出站流量的規則設定。管理員可以透過簡單的命令新增、修改或刪除規則,限制存取某些連接埠和服務,以防止未授權的存取。
支援設定白名單和黑名單 IP,可以允許或禁止特定IP 位址的訪問,防止來自惡意IP 的請求。
入侵偵測與防護
CSF 包含入侵偵測和預防系統(LFD - Login Failure Daemon),會偵測並封鎖多次登入失敗的IP 位址,防止暴力破解嘗試。
可以監控特定服務的登入日誌(如SSH、FTP 等),在偵測到惡意行為時立即封鎖來源IP。
連接埠掃描防護
CSF 可以辨識並阻止對伺服器進行連接埠掃描的惡意IP,保護伺服器的連接埠資訊不被外洩。
防止DoS 攻擊
CSF 能偵測到異常的流量高峰或連線數,可以設定限制並在偵測到時自動屏蔽IP,以減少DoS(拒絕服務)攻擊的影響。
系統安全審查
CSF 包含了一個基本的安全檢查工具,可以檢查Ubuntu 系統中可能存在的常見安全漏洞,並提供相關的建議(例如SSH 是否使用預設連接埠等)。
電子郵件通知
CSF 可以在伺服器偵測到異常行為(如多次登入失敗、IP 封鎖等)時,透過電子郵件發送通知,以便於管理員快速回應。
時間控制的規則
支援為防火牆規則設定生效時間。例如,可以在特定時間段封鎖或允許存取某些服務,提升安全性和資源利用率。
適用場景
CSF 尤其適合以下應用場景:
- Web伺服器和應用程式伺服器:適用於需要保護網站和API 介面的場景,可以阻止異常請求和惡意流量。
- SSH 安全管理:對於需要透過SSH 遠端管理的伺服器,CSF 可以有效阻止暴力破解嘗試。
- 限制特定IP 訪問:用於允許或禁止某些國家、地區或特定IP 位址存取伺服器,提升區域化的安全性策略。
如何安裝CSF
官方停更后,将安装包扔在了github上,将下载CSF的地址更改成Github的下载地址即可安装,美中不足的是后续没有版本更新和维护,但是作为一个端口屏蔽防火墙来说,CSF功能已经足够用了!
在Ubuntu 上安裝CSF 並啟用基本設定的步驟如下:
# 安装依赖 sudo apt update sudo apt install -y perl libwww-perl liblwp-protocol-https-perl # 下载 CSF wget https://github.com/waytotheweb/scripts/raw/refs/heads/main/csf.tgz tar -xzf csf.tgz cd csf # 运行安装脚本 sudo bash install.sh # 检查服务器是否兼容 CSF sudo perl /usr/local/csf/bin/csftest.pl
CSF 是一個功能全面且易於設定的防火牆管理工具,適合需要高安全性設定的Ubuntu 伺服器。
安裝完成後,可以透過編輯/etc/csf/csf.conf 檔案來設定CSF,並透過命令csf -r 重新啟動防火牆使設定生效。
安裝CSF 後,可以透過編輯/etc/csf/csf.conf 檔案進行詳細配置。以下是一些常見的設定步驟和注意事項:
1.編輯CSF 設定文件
使用文字編輯器(例如vim 或nano)開啟CSF 設定檔:
sudo nano /etc/csf/csf.conf
在文件中,可以找到許多配置選項,以下是一些關鍵設定:
1.1. 基本設置
測試模式:CSF 安裝後預設為測試模式,防火牆規則不會生效。
在正式使用之前,將TESTING 設定為0 以停用測試模式。
TESTING = "0"
預設開放的入站端口:
TCP_IN:設定允許存取的入站連接埠(例如Web 伺服器的連接埠80 和443,SSH 的連接埠22 等)。
TCP_IN = "22,80,443"
TCP_OUT:設定允許存取的出站端口。
TCP_OUT = "80,443,53"
注意:確保開放的端口包含SSH 端口,否則可能會導致無法遠端連接的問題。
1.2. 允許/禁止的IP 位址
允許清單(白名單):在csf.allow 檔案中指定可以存取伺服器的IP 位址。
在csf.conf 中,可以新增多個IP 位址或IP 段,用於指定特定的IP 始終被允許存取:
sudo nano /etc/csf/csf.allow
輸入允許的IP 位址,每行一個,例如:
192.168.1.100
203.0.113.0/24
禁止清單(黑名單):在csf.deny 檔案中指定禁止存取伺服器的IP 位址。
開啟檔案並新增IP 位址:
sudo nano /etc/csf/csf.deny
輸入禁止的IP 位址,每行一個:
192.168.1.101
198.51.100.0/24
1.3. 登入失敗保護(暴力破解保護)
設定登入失敗保護:LF_TRIGGER 和LF_SSHD 選項用於防止暴力破解嘗試。
LF_TRIGGER:觸發阻止的失敗嘗試數。
LF_TRIGGER = "5"
LF_SSHD:SSH 失敗登入的觸發次數。
LF_SSHD = "5"
1.4. 防止連接埠掃描
連接埠掃描保護:設定連接埠掃描保護,防止惡意使用者探測開放連接埠。
PS_INTERVAL = "300"
PS_LIMIT = "10"
2. 儲存配置並重新啟動CSF
完成設定後,按Ctrl + X,然後按Y 儲存並退出檔案。
3. 重啟CSF 和LFD 使設定生效
使用以下命令重新載入CSF 配置:
sudo csf -r
此外,還可以重新啟動LFD(Login Failure Daemon)服務:
sudo systemctl restart lfd
4. 檢查防火牆狀態
查看CSF 的運作狀態,確保規則正確套用:
sudo csf -s # 查看規則狀態
sudo csf -l # 顯示防火牆狀態
5. 驗證防火牆是否正常運作
可以使用以下命令檢查是否有錯誤:
sudo csf -e # 啟用防火牆
sudo csf -x # 停用防火牆(測試時)
透過上述步驟,您可以成功設定並啟用CSF 以保護Ubuntu 伺服器的安全。
CyberPanel 伺服器在安裝CSF 後出現500 錯誤
通常與防火牆配置不相容或阻止了關鍵服務有關。以下是一些常見的解決方法:
1. 檢查CSF 配置並允許必要端口
確保CSF 中已開放CyberPanel 需要的端口,例如:
TCP_IN:8090(CyberPanel 控制面板連接埠)、80、443(HTTP/HTTPS)、21(FTP)、25、465、587(SMTP)、53(DNS)等。
打開CSF 設定檔:
sudo nano /etc/csf/csf.conf
尋找並修改TCP_IN 和TCP_OUT,確保包含以上連接埠。
2. 重啟CSF 和LFD
在修改配置後,重新啟動CSF 和LFD 使變更生效:
sudo csf -r
sudo systemctl restart lfd
3. 檢查伺服器錯誤日誌
查看CyberPanel 的錯誤日誌以取得特定錯誤訊息:
tail -f /usr/local/lscp/logs/error.log
4. 測試臨時禁用CSF
可以暫時停用CSF 以確認問題是否來自防火牆:
sudo csf -x
如果停用後500 錯誤消失,表示問題在CSF 配置中。