INPUT # 進入服務器
FORWARD # 轉發網絡
OUTPUT # 出去ssh
ACCEPT # 將封包放行tcp
REJECT # 攔阻該封包ide
DROP # 丟棄封包不予處理rest
-A # 在所選擇的鏈(INPUT等)末添加一條或更多規則接口
-D # 刪除一條ip
-E # 修改it
-p # tcp、udp、icmp0至關於全部all!取反io
-P # 設置缺省策略(與全部鏈都不匹配強制使用此策略)
-s # IP/掩碼(IP/24)主機名、網絡名和清楚的IP地址 !取反
-j # 目標跳轉,當即決定包的命運的專用內建目標
-i # 進入的(網絡)接口 [名稱] eth0
-o # 輸出接口[名稱]
-m # 模塊
--sport # 源端口
--dport # 目標端口
iptables-restore < 規則文件 # 導入防火牆規則
/etc/init.d/iptables save # 保存防火牆設置
iptables -t filter -D INPUT -p icmp -j REJECT #刪除入站icmp都會被拒絕的鏈條
iptables -t filter -I INPUT -p icmp -j REJECT #-I在鏈表開頭插入,-A在鏈表以後添加
iptables -D INPUT 1 //刪除INPUT第一條規則
iptables -A OUTPUT -p icmp -j REJECT #添加鏈條OUTPUT禁止icmp出站
iptables -F #清除全部表的全部連的規則
iptables -t nat -F #指定清除NAT表的鏈規則
iptables -t filter -P FORWARD DROP #filter轉發默認被丟掉
iptables -t filter -P FORWARD DROP #filter入站默認被丟掉
iptables -A FORWARD -p icmp -j ACCEPT #"!"取反,轉發除icmp外全部包。
iptables -I INPUT -s 10.20.30.1 -j drop #丟棄來自10.20.30.1的包
iptables -I OUTPUT -d 8.8.8.8 -j drop #丟棄目標地址爲8.8.8.8的數據包
iptables -I INPUT -s 192.168.26.0/24 -j REJECT #拒絕來自26網段的ip
iptables -A FORWARD -s 192.168.26.0 -j DROP #丟棄來自26網段的數據包
iptables -A INPUT -p tcp --dport 80 -j ACCEPT #開放80端口
iptables -A INPUT -p tcp --dport 20:22 -j ACCEPT #開放20至22端口的tcp數據傳輸
iptables -A FORWARD -s 192.168.4.0/24 -p udp --dport 53 -j ACCERT #接受來自24網段的在53端口的udp數據轉發
iptables -A FORWARD -d 192.168.24.0/24 -p udp --sport 53 -j ACCPT #接受目標24網段的在53端口的udp數據轉發
iptables -I INPUT -i eth0 -p tcp --tcp-flags SYN,RST,ACK SYN -j DROP #TCP丟棄TCP標示符SYN,RST,ACK SYN
iptables -A INPUT -p tcp -m multiport --dport 25,80,110,143 -j ACCEPT #開放多個端口
iptables -I FORWARD -p tcp -m iprange --src-range 192.168.21.21-192.168.21.180 -j ACCEPT #ip地址匹配
iptables -A INPUT -m mac --mac-source 00:0c29:c0:55:3f -j DROP #mac地址匹配
iptables -A FORWARD -m state --state NEW -p tcp ! --syn -j DROP #禁止轉發與正常TCP鏈接無關的非--syn請求數據包
iptables -I INPUT -p tcp -m multiport --dport 80 -j ACCEPT
iptables -I INPUT -p tcp -m state --state ESTALISHED -j ACCEPT
iptables -p INPUT DROP
#除了請求80端口的數據包全都丟掉
iptables -t nat -A POSTROUTING -s 192.168.22.0/24 -o eth0 -j SNAT --to 192.168.1.118 #共享上網或者***轉發
echo 1 > /proc/sys/net/ipv4/ip_forward # 在內核裏打開ip轉發功能
route add -net 10.10.20.0 netmask 255.255.255.0 gw 10.10.20.111 # 內網須要添加默認網關,而且網關開啓轉發
iptables -t nat -A PREROUTING -d 192.168.10.158 -p tcp --dport 9999 -j DNAT --to 10.10.20.55:22 #ssh轉發
iptables -t nat -A PREROUTING -i eth0 -d 22.22.22.123 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.100 #發佈服務器
iptables -t nat -nL # 查看轉發