iptables filter表案例tcp
iptables nat表應用ip
---路由
iptables filter表案例編譯
需求: 把80端口, 21端口,22端口放行。22端口指定一個ip段table
ipt="/usr/sbin/iptables" 登錄
定義一個變量 ,儘可能寫絕對路徑變量
$ipt -F 把以前的規則清空配置
$ipt -P INPUT DROPiptables
$ipt -p OUTPUT ACCEPT路由器
$ipt -p FORWARD ACCEPT
$ipt -A INPUT -m state --state RELATED, ESTABLISHED -j ACCEPT
用 -m state指定狀態(RELATED編譯源的狀態),加這條命令是爲了讓通信更加順暢。
$ipt -A INPUT -s 192.168.133.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
iptables nat表應用
---
禁掉Nat
給37的網卡設定ip
(這樣設置一重啓就沒有了,想要永久生效,須要編輯配置文件。
ens33 已經不生效了,爲了保險,能夠再次ifdown 掉它
設置ip
能夠ping通
----
A機器上打開路由轉發: echo "1">/proc/sys/net/ipv4/ip_forward
增長一條規則:
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
B機器設置網關 192.168.100.1
可以和公網通信了:
修改DNS
---
其實A機器就至關於路由器, B機器就至關於聯網的手機 電腦
---
遠程登陸,端口映射 把100.100的22端口映射出來
第1步:打開端口轉發 echo "1">/proc/sys/net/ipv4/ip_forward
第2步: 增長iptables 規則:
先把以前的規則刪掉,以避免影響
iptables -t nat -D POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
iptables -t nat -nvL
進去的包:
iptables -t nat -A PREROUTING -d 192.168.58.129 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22
回來的包:
iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.58.129
第3步:給B機器加上網關
---
OK