共计 1350 个字符,预计需要花费 4 分钟才能阅读完成。
這是我開源的地方gitlab:點我
備註: 我不是在做一整套系統,而是把最實用的防火牆指令整理起來,經過親自測試,確保每一條都能用、不會害人。這些腳本都是為了實際使用者而寫,不是為了展示炫技。
支援系統
Ufw腳本支援Debain Alpine系統 Redhot系列不支援
iptables腳本支持三個主流版本(Debain/ Redhot系列 Alpine系統)
感謝
本專案所有功能均經由 Alice Networks 提供之 Ephemera 開發測試平台 完整測試與驗證。
特別感謝 Alice 團隊提供穩定、高性能的臨時測試機器,讓本腳本得以在 Ubuntu、Debian、CentOS、Alpine 等多種系統進行真實環境測試,確保相容性與穩定性。
注意事項
- 請用root模式
- 此為多模塊腳本
使用命令
主程序
bash <(curl -SL https://sh.gebu8f.com/firewall.sh)
iptables的腳本
bash <(curl -sL https://sh.gebu8f.com/iptable.sh)
ufw腳本
bash <(curl -sL https://sh.gebu8f.com/ufw.sh)
自定義命令
⚠️ 需要運行上面提供的其中一個腳本才有功能
firewall主程序
fw iptables
fw ufw
更新日誌
【防火牆腳本】版本更新記錄
v1.0 測試版(仿作階段)
最初版本,功能主要參考自他人腳本,進行學習與模仿測試。
- 開啟指定端口
- 關閉指定端口
- 刪除端口規則
- 基礎設置(建議)
- 查看防火牆規則列表(雙棧)
此為新增功能
v1.1 測試版(Docker 模組、允許CF IP加入)
此版本新增實用性更強的功能,開始與他人版本做出明顯區隔。
- 關閉外網進入docker內部流量(建議)
- 允許CloudFlare IP
- 刪除CloudFlare IP
v1.2 測試版
精簡掉大部分不需要的功能並修復BUG
v2.0 正式版(開源版)
目前 GitHub 上開源的版本,即此正式版,80~90% 重構,邏輯與架構完全自訂。
- 開放 / 刪除指定 IP(段)
- 開放 / 刪除 指定 IP(段) + 指定端口(複合條件)
- 顯示 IPv6 防火牆規則
- 加入 UFW 模組(
ufw.sh
) - 整合主控腳本
firewall.sh
(可透過fw
指令快速操作) - 重構主選單架構、分類明確,預留擴展空間
v2.1 正式版
- 修復docler阻擋全部連接(原本的 iptables -A DOCKER-USER -i eth0 -j DROP 會導致容器完全失去網路連接,現已修正為更精確的規則)
v2.2 正式版
- 新增自動禁用 Docker 管理 iptables 設定(iptables=false),確保防火牆可控性
- 修復關閉外網進入 Docker 容器的規則,避免誤封容器外聯功能
- 自動偵測並安裝 jq,避免修改 daemon.json 時發生格式錯誤
v3.0 正式版(多系統支援)
本版本正式支援多系統環境,強化安裝邏輯與維護性,提升穩定性與擴展性。
- 支援 Debian / Ubuntu、CentOS / RHEL、Alpine 三大主流系統
- 依系統自動選擇適當安裝與啟動指令(apt/yum/apk)
- 根據系統類型自動選擇儲存與還原防火牆規則的方法
- 改善代碼結構,檢查函式統一使用 A-Z 排序便於維護
- 針對每套系統個別進行真機實測,確保實際部署可行性
- 整體腳本仍保持精簡(約 800 行),不添加多餘美化,專注功能實用性
正文完