針對filter表,預設策略INPUT 鏈DROP,其餘兩個鏈ACCEPT ,而後針對192.168.188.0/24開通22端口,對全部網段開放80端口,對全部網段開放21端口。shell
vim /usr/local/sbin/iptables.shvim
#! /bin/bash ipt="/usr/sbin/iptables" #定義變量,執行命令的時候寫命令的絕對路徑 $ipt -F #清空filter表以前的內容 $ipt -P INPUT DROP #預設策略 $ipt -P OUTPUT ACCEPT # $ipt -P FORWARD ACCEPT $ipt -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #指定狀態放行,讓通訊順暢 $ipt -A INPUT -s 192.168.188.0/24 -p tcp --dport 22 -j ACCEPT #針對網段開放端口 $ipt -A INPUT -p tcp --dport 80 -j ACCEPT $ipt -A INPUT -p tcp --dport 21 -j ACCEPT
icmp示例bash
iptables -I INPUT -p icmp --icmp-type 8 -j DROP網絡
A機器兩塊網卡ens33和ens37,ens33能夠上外網,ens37是內部網絡,B機器只有ens37 ,和A機器ens37能夠通訊互聯tcp
要先準備兩臺虛擬機,給它們設置增長網絡適配器,在虛擬機裏點擊編輯虛擬機設置。spa
而後點擊網絡適配器,再點擊下一步,而後再彈出的對話框中保持默認設置,點擊完成。blog
點擊新建的網絡適配器,選擇LAN區段,在LAN區段(s)裏設置一個名字。ip
啓動兩臺機器進入虛擬機,給兩臺機器設置IP路由
給A機器設置IP : ifconfig ens37 192.168.100.1/24虛擬機
給B機器設置IP: ifconfig ens37 192.168.100.100/24
這兩個命令指示臨時的,要想永久生效,要設置配置文件.
A機器上打開路由轉發 echo 「1」 >/proc/sys/net/ipv4/ip_forward
A機器上執行 iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
B機器上設置網關 route add default gw 192.168.100.1
A機器上打開路由轉發echo "1" > /proc/sys/net/ipv4/ip_forward
A機器上執行 iptables -t nat -A PPREROUTING -d 192.168.42.128 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22
A機器上執行 iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.42.128
B機器上設置網關