← 回到 ycspace 作品頁
Security Feed / Firewall Deploy

Ipsum 黑名單 IP 部署腳本

這份頁面把每日同步的 Ipsum 黑名單整理成可落地的防火牆套用流程。你可以先開啟純 IP 清單確認內容,也可以直接用下面的 Windows 或 Linux 腳本,把清單接到既有防火牆規則裡。

1. 先確認開啟 IP 清單,並選擇符合平台的腳本。
2. 手動跑一次確認主機抓得到清單、規則能建立。
3. 檢查規則確認封鎖群組或 ipset 已更新。
4. 再放排程穩定後再交給工作排程或 crontab 定期同步。

Windows:接到 Windows Firewall

適合 Windows Server、IIS 主機,或任何想用內建 Windows Firewall 封鎖來源 IP 的環境。腳本會下載清單、過濾 IPv4,並分批建立入站封鎖規則,避免單一規則塞太多 IP 導致 Windows Firewall 失敗。

下載與手動執行

mkdir C:\tools
Invoke-WebRequest https://magicplus-design.serveirc.com/share/untrustedIP-windows-firewall.ps1 -OutFile C:\tools\untrustedIP-windows-firewall.ps1
PowerShell -ExecutionPolicy Bypass -File C:\tools\untrustedIP-windows-firewall.ps1

確認與排程

Get-NetFirewallRule -Group "Ipsum Untrusted IP" | Measure-Object
schtasks /Create /TN "Ipsum Untrusted IP Sync" /SC DAILY /ST 03:20 /RL HIGHEST /TR "powershell -ExecutionPolicy Bypass -File C:\tools\untrustedIP-windows-firewall.ps1"

移除規則

Get-NetFirewallRule -Group "Ipsum Untrusted IP" | Remove-NetFirewallRule
  • 請用系統管理員權限執行。
  • 腳本預設每 500 筆 IP 建一條規則,可用 -ChunkSize 調整。
  • 重新執行會先移除同群組舊規則,再套用最新清單。

Linux:接到 ipset / iptables

適合 Linux 主機、反向代理、閘道器或可使用 ipset 的防火牆環境。腳本會用暫存 set 載入最新清單,再切換到正式 set,最後確保 iptables 的 INPUT 規則有接到這份 set。

下載與手動執行

curl -fsSL https://magicplus-design.serveirc.com/share/untrustedIP-linux-ipset-iptables.sh -o /usr/local/sbin/untrustedIP-linux-ipset-iptables.sh
chmod +x /usr/local/sbin/untrustedIP-linux-ipset-iptables.sh
sudo /usr/local/sbin/untrustedIP-linux-ipset-iptables.sh

確認與排程

sudo ipset list ipsum_untrusted | head
sudo iptables -L INPUT -n --line-numbers | grep ipsum_untrusted
sudo crontab -e
# 20 3 * * * /usr/local/sbin/untrustedIP-linux-ipset-iptables.sh

移除規則

sudo iptables -D INPUT -m set --match-set ipsum_untrusted src -j DROP
sudo ipset destroy ipsum_untrusted
  • 請用 root 權限執行,並先安裝 curlipsetiptables
  • 預設 set 名稱是 ipsum_untrusted;可以用環境變數 SET_NAME 改名。
  • 若你的環境改用 nftables、ufw 或 firewalld,建議把腳本當作範本,再接到自己的規則管理流程。

上線前建議

先在測試機手動執行一次,確認沒有擋到管理來源、監控節點或內部服務。若主機已有自動化防火牆管理,請先確認規則順序;Linux 腳本預設把封鎖規則插在 INPUT 第一條,Windows 腳本則集中放在 Ipsum Untrusted IP 規則群組中,方便日後查詢或移除。

不要在不熟悉的遠端主機上直接套用防火牆規則;建議保留另一個可登入的維運通道。