10.15iptables filter表案例10.16-10.18iptables nat表應用
阿新 • • 發佈:2018-01-26
image nat lan區段 案例 證明 network 9.png efault 網上 10.15 iptables filter表案例
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/951b79e837401550df41eb0a68e1e9a3.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
RELATED:邊源的一個狀態的連接,那是連接之後的一些額外的連接
ESTABLISHED:保持連接
執行這個shell腳本
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/970610121d31a47d3535bd19f65b9341.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
10.16/10.17/10.18 iptables nat表應用
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/fdd47ba26b47c95829e1f58cbfa22b1b.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
在A虛擬機上增加一塊網卡
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/5ee623c06e4327c226d5ab0acdcd77be.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
選擇LAN區段
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/e2a0444723b490d8818b5fd17ccf506d.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
點LAN區段 再選 增加 輸入名字
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/b5744f87317e202dee853f2b93a47bae.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
選擇剛才增加的網卡名字
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/77aa9d61897b7a587300bb18eb77ae95.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
在B虛擬機上斷開原來的網卡,取消啟動時連接
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/e71f76acc79f53e0e16173df9ff40189.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
增加一個LAN區段的網卡,方法同上,區段也是選擇剛才增加的網卡
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/790ee052d9b307d410d7b2071e18ac4e.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
A機器給ens37設置ip
臨時設置的ip命令:ifconfig ens37 192.168.100.1/24 重啟後會消失
永久設置ip需去復制ens33的配置文件cp /etc/sysconfig/network-scritps/ifcfg-ens33 ens37 改名為ens37,然後在配置文件裏更改ip,網關和DNS可以不用
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/7de87436cfdd1552e876c5643ad52583.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
B機器因為無法遠程登陸,因為網卡斷了,所有在到機器設置
關閉網上ens33,因為只用ens37就可以了
設置B機器上的ens37 ip地址
ifconfig ens37 192.168.100.100/24
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/96f24c811860e505c9902cdde8ab478b.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
這時候ping 192.168.100.1 無法ping通的
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/8eeb9a7b7fc8603c4142c3ec6a78b3f8.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
檢查一下2個虛擬網卡的設置
然後再檢查一下是否連接 mii-tool ens37
最後發現A機器上的ens37剛設置的ip沒有了,重新設置一下一,就可以兩邊都ping通了
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/f7d385d28326d2e9be8310e5edc8985f.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
到些所有準備工作 都做好了
? 需求1:可以讓B機器連接外網
A機器上打開路由端口轉發 把配置文件ip_forward的值更改為1
echo "1">/proc/sys/net/ipv4/ip_forward
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/c5a8c361e175ecc844d3212a092b3880.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
執行這條規則
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
查看添加的這條規則,這個規則就是讓100網段的可以上網
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/8184c7a21d064e9678cd3743a5d5ad91.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
B機器上設置網關為192.168.100.1
route add default gw 192.168.100.1
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/df2f9f80ead797053571846c2db15a14.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
這時候能ping通192.168.133.130,這就意味著可以上外網了
ping網關119.29.29.29也通了,證明可以上公網了
需求2:C機器只能和A通信,讓C機器可以直接連通B機器的22端口
因為做需求1的時候已經添加了網關,也做了路由端口轉發,所以這裏就直接運行以下命令
A上執行iptables -t nat -A PREROUTING -d 192.168.133.130 -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.133.130
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/951b79e837401550df41eb0a68e1e9a3.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
RELATED:邊源的一個狀態的連接,那是連接之後的一些額外的連接
ESTABLISHED:保持連接
執行這個shell腳本
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/970610121d31a47d3535bd19f65b9341.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
10.16/10.17/10.18 iptables nat表應用
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/fdd47ba26b47c95829e1f58cbfa22b1b.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
在A虛擬機上增加一塊網卡
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/5ee623c06e4327c226d5ab0acdcd77be.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
選擇LAN區段
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/e2a0444723b490d8818b5fd17ccf506d.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
點LAN區段 再選 增加 輸入名字
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/b5744f87317e202dee853f2b93a47bae.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
選擇剛才增加的網卡名字
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/77aa9d61897b7a587300bb18eb77ae95.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
在B虛擬機上斷開原來的網卡,取消啟動時連接
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/e71f76acc79f53e0e16173df9ff40189.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
增加一個LAN區段的網卡,方法同上,區段也是選擇剛才增加的網卡
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/790ee052d9b307d410d7b2071e18ac4e.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
A機器給ens37設置ip
臨時設置的ip命令:ifconfig ens37 192.168.100.1/24 重啟後會消失
永久設置ip需去復制ens33的配置文件cp /etc/sysconfig/network-scritps/ifcfg-ens33 ens37 改名為ens37,然後在配置文件裏更改ip,網關和DNS可以不用
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/7de87436cfdd1552e876c5643ad52583.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
B機器因為無法遠程登陸,因為網卡斷了,所有在到機器設置
關閉網上ens33,因為只用ens37就可以了
設置B機器上的ens37 ip地址
ifconfig ens37 192.168.100.100/24
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/96f24c811860e505c9902cdde8ab478b.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
這時候ping 192.168.100.1 無法ping通的
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/8eeb9a7b7fc8603c4142c3ec6a78b3f8.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
檢查一下2個虛擬網卡的設置
然後再檢查一下是否連接 mii-tool ens37
最後發現A機器上的ens37剛設置的ip沒有了,重新設置一下一,就可以兩邊都ping通了
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/f7d385d28326d2e9be8310e5edc8985f.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
到些所有準備工作 都做好了
? 需求1:可以讓B機器連接外網
A機器上打開路由端口轉發 把配置文件ip_forward的值更改為1
echo "1">/proc/sys/net/ipv4/ip_forward
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/c5a8c361e175ecc844d3212a092b3880.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
執行這條規則
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
查看添加的這條規則,這個規則就是讓100網段的可以上網
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/8184c7a21d064e9678cd3743a5d5ad91.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
B機器上設置網關為192.168.100.1
route add default gw 192.168.100.1
![技術分享圖片](http://i2.51cto.com/images/blog/201801/25/df2f9f80ead797053571846c2db15a14.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
這時候能ping通192.168.133.130,這就意味著可以上外網了
ping網關119.29.29.29也通了,證明可以上公網了
需求2:C機器只能和A通信,讓C機器可以直接連通B機器的22端口
因為做需求1的時候已經添加了網關,也做了路由端口轉發,所以這裏就直接運行以下命令
A上執行iptables -t nat -A PREROUTING -d 192.168.133.130 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22
10.15iptables filter表案例10.16-10.18iptables nat表應用