在Ubuntu系統中,使用iptables設置默認策略可以幫助你控制網絡流量的行為。以下是一些常見的默認策略設置步驟:
如果你希望所有未經明確允許的流量都被丟棄,可以設置默認策略為DROP。
# 設置INPUT鏈的默認策略為DROP
sudo iptables -P INPUT DROP
# 設置OUTPUT鏈的默認策略為DROP
sudo iptables -P OUTPUT DROP
# 設置FORWARD鏈的默認策略為DROP
sudo iptables -P FORWARD DROP
本地回環接口(lo)通常用于本地通信,應該允許其流量。
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT
允許已建立的連接和相關的數據包通過。
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A OUTPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
如果你需要通過SSH遠程訪問服務器,允許SSH連接。
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
如果你需要通過HTTP和HTTPS訪問服務器,允許這些連接。
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
允許DNS查詢。
sudo iptables -A INPUT -p udp --dport 53 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 53 -j ACCEPT
如果你需要允許ping請求,可以添加以下規則。
sudo iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
在Ubuntu中,iptables規則默認不會持久化保存。你可以使用iptables-persistent包來保存規則。
sudo apt-get update
sudo apt-get install iptables-persistent
在安裝過程中,系統會提示你是否保存當前的iptables規則。選擇“是”即可。
你可以使用以下命令查看當前的iptables規則。
sudo iptables -L -v -n
通過以上步驟,你可以設置Ubuntu系統的iptables默認策略,并根據需要進行相應的調整。