Ufw
為什麼ufw不屏蔽網站?
我正在使用 Debian 11 靶心。我正在嘗試使用 ufw 防火牆阻止一些 IP。我已經安裝了ufw包。然後我添加了一些簡單的規則並開始 ufw
sudo ufw enable
然後我檢查了它的狀態
sudo ufw status verbose
它給出了我的規則。我還使用 systemctl 命令啟用它
sudo systemctl enable ufw sudo systemctl start ufw
他們倆也都成功了。
但是,當我嘗試它時,我看到 IP 沒有被阻止,它可以將包發送到我的電腦。要檢查 ufw 是否正常工作,只需使用已知廣告網站的 IP,例如 tpc.googlesyndication.com(我使用ping -c 1 tpc.googlesyndication.com查找網站的 IP)。我通過sudo ufw deny from xxxx將其添加為 ufw 規則。但是,我看到 IP 源正在向我的電腦發送包(因為我在瀏覽器中看到了它的廣告)。(我在很短的時間內完成了所有這些操作,因此該站點沒有更改其 IP 地址)。
為什麼 ufw 不工作並阻止傳入的包?我做錯了什麼?
您創建了一個規則來阻止未經請求的入站流量,而您實際上想要阻止出站流量。
因為您的電腦啟動了連接,所以防火牆認為其狀態已建立/與出站連接(您啟動了連接)相關,因此它不會阻止從遠端主機接收到的後續數據包。
您將需要阻止到該 IP 地址的出站流量
sudo ufw deny out from any to x.x.x.x
然後,重新載入ufw
sudo ufw reload
此外,網際網路上的許多主機都分配有大量 IP 地址,這些主機的 DNS 查詢將在不同時間返回不同的 IP。因此,您阻止的單個 IP 可能會更改,從而再次允許流量。您可能需要考慮阻止對該主機名的 DNS 請求。
如果您要阻止的遠端主機是一個不變的靜態 IP 地址,則此方法將起作用。