日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

iptables nat表含义_十(4)iptables语法、iptables filter表小案例、iptables nat表应用

發(fā)布時(shí)間:2025/3/15 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iptables nat表含义_十(4)iptables语法、iptables filter表小案例、iptables nat表应用 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

iptables語(yǔ)法

filter表:

INPUT鏈:作用于進(jìn)入本機(jī)的包

OUTPUT鏈:作用于送出本機(jī)的包

FORWARD鏈:作用于和本機(jī)無(wú)關(guān)的包

nat表:

PREROUTING鏈:作用是包在剛剛到達(dá)防火墻時(shí)改變包的目標(biāo)地址

OUTPUT鏈:改變本地產(chǎn)生的包的目標(biāo)地址

POSTROUTING鏈:作用是在包將離開(kāi)防火墻時(shí)改變包源地址

1.查看iptables規(guī)則

iptables -nvL ?(此時(shí)默認(rèn)查看filter表,加選項(xiàng) -t 可以指定表 iptables -t nat -nvL)

(規(guī)則的保持路徑: /etc/sysconfig/iptables

)

把所有規(guī)則清空 iptables -F:(/etc/sysconfig/iptables仍然是保存著的)

保存默認(rèn)規(guī)則到配置文件(/etc/sysconfig/iptables)

重啟一下服務(wù):service iptables restart (因?yàn)閯倓倓h除了規(guī)則:iptables -F ,需要重啟加載。否則無(wú)東西可保持!)

執(zhí)行:service iptables save ? ? 保存

當(dāng)我們添加規(guī)則的時(shí),如果需要保存到配置文件需要保存操作(service iptables save),否則只是保持在當(dāng)前的內(nèi)存中。

2. iptables -Z ?把計(jì)數(shù)器清零 (因?yàn)槊繒r(shí)每刻都是在通信,數(shù)據(jù)清零一會(huì)又會(huì)有數(shù)據(jù))

iptables -Z; iptables -nvL

3.增加/刪除一條規(guī)則:

-A/-D ?表示增加或刪除一條規(guī)則

-I : ? ? 表示插入一條規(guī)則

-p ? : ?指定協(xié)議(tcp、udp、icmp)

--dport ? 和-p一起使用,指定目標(biāo)端口 ?(使用dport必須使用-p指定協(xié)議)

--sport ? ?和-p一起使用,指定源端口 ??(使用dport必須使用-p指定協(xié)議)

-s ? ? ? ? ? ?表示指定源IP

-d ? ? ? ? ? 表示指定目標(biāo)ip

-j ? ? 后面加動(dòng)作: (1)ACCEPT ?允許包 ?(2)DROP 丟掉包 (3)REJECT 拒絕包

-i ? 指定網(wǎng)卡

(DROP 丟掉包 和 REJECT 拒絕包 :效果一樣,DROP 丟掉包,直接把包丟棄;REJECT 拒絕包 :分析過(guò)再拒絕)

(3.1)增加規(guī)則

如:

(操作默認(rèn)表filter)

iptables -A INPUT -s 192.168.136.1 -p tcp --sport 1234 -d 192.168.136.123 --dport 80 -j DROP

iptables -I INPUT -p tcp --dport 80 -j DROP

(-I 和-A 的區(qū)別 ,-I把規(guī)則插入到最前面,-A把規(guī)則添加到最后,在過(guò)濾時(shí),先執(zhí)行最前面的)

(3.2)刪除規(guī)則 -D

1.(記得規(guī)則前提下刪除規(guī)則,直接把選項(xiàng)加-D)

iptables -D INPUT -s 192.168.136.1 -p tcp --sport 1234 -d 192.168.136.123 --dport 80 -j DROP

iptables -D INPUT -p tcp --dport 80 -j DROP

(2)不記得規(guī)則命令時(shí)刪除規(guī)則方法:

a.把規(guī)則的序列號(hào)打印出來(lái) iptables -nvL --line-number

b.針對(duì)規(guī)則編號(hào)進(jìn)行刪除

iptables -D INPUT 規(guī)則編號(hào)

iptables -D INPUT ?1

iptables -nvL 可以看到鏈的默認(rèn)策略

通過(guò)-P 可以改鏈的策略(千萬(wàn)不要執(zhí)行)

iptables -P OUTPUT DROP

(如果執(zhí)行了這個(gè)命令,則我們遠(yuǎn)程連接就會(huì)鏈接不上,因?yàn)槲覀兊陌荒苷5姆祷亟o我們)

iptables filter表小案例

需求:對(duì)filter表開(kāi)放22端口、80端口、 21端口,INPUT鏈:DROP ,OUTPUT鏈和FORWARD鏈:ACCEPT,22端口只針對(duì)192.168.136.0/24開(kāi)通,所有網(wǎng)段開(kāi)發(fā)80端口、 21端口。

(這條規(guī)則必須要寫,不然后面的80端口和21端口無(wú)法取得包)

看結(jié)果:

icmp示例

iptables -I INPUT -p icmp --icmp-type 8 -j DROP

執(zhí)行命令后,只能ping通外網(wǎng),別人不能ping通我們的本機(jī)(禁ping作用)

命令的 8 是指能在本機(jī)ping 同其他機(jī)器,而其他機(jī)器不能ping通本機(jī)。

ptables nat表應(yīng)用

(一).首先準(zhǔn)備兩臺(tái)機(jī)器(讓A\B能相連)

先在兩臺(tái)機(jī)器都添加多一個(gè)網(wǎng)絡(luò)適配器

步驟 :

第一臺(tái)機(jī)器 ?編輯虛擬機(jī)設(shè)置 -->添加-->網(wǎng)絡(luò)適配器-->選中右邊LAN(圖中操作)-->選中我們定義的LAN區(qū)段--->確認(rèn)

(LAN相當(dāng)于網(wǎng)卡選到一個(gè)內(nèi)網(wǎng)交換機(jī)上,但此時(shí)我們的window機(jī)連不上這個(gè)交換機(jī))

第二臺(tái)機(jī)器:(也是添加一個(gè)網(wǎng)絡(luò)適配器,因?yàn)樵瓩C(jī)器上已經(jīng)配置了一個(gè)ip)

(首先把原來(lái)網(wǎng)絡(luò)適配器設(shè)備狀態(tài) 啟動(dòng)時(shí)連接 選項(xiàng)取消,(此時(shí)ip不存在,不能再遠(yuǎn)程連接)。再開(kāi)始添加網(wǎng)絡(luò)適配器)

啟動(dòng)兩臺(tái)機(jī)器

第一臺(tái)機(jī)器:(查看一下ip,ifconfig)

1. ?設(shè)置ip

方法一:(步驟和設(shè)置虛擬網(wǎng)卡一樣)

(1)先復(fù)制一份配置文件 cp ?/etc/sysconfig/network-scripts/ifcfg-ens33 ?/etc/sysconfig/network-scripts/ifcfg-ens37

(2) 修改配置文件 vim?/etc/sysconfig/network-scripts/ifcfg-ens37

(3)保存退出

方法二:(臨時(shí)生效)

命令:ifconfig ens37 192.168.100.1/24 (臨時(shí)設(shè)置,重啟消失)

第二臺(tái)機(jī)器(B )

(我們?cè)谠O(shè)置網(wǎng)絡(luò)適配器時(shí)已經(jīng)取消它開(kāi)機(jī)啟動(dòng),使用命令

ifdown ens33 是為更保險(xiǎn)的down掉ens33網(wǎng)卡對(duì)實(shí)現(xiàn)的影響)

1.設(shè)置ip

方法如上第一臺(tái)機(jī)器

設(shè)置ip為 ifconfig ens37 192.168.100.100/24

配置完了ip 測(cè)試兩臺(tái)機(jī)器相ping是否通:

A機(jī)器:

ping 192.168.100.100

查看配置的網(wǎng)卡是否有問(wèn)題方法:

(1)ping 自己的ip

(2)mii-tool 網(wǎng)卡名(mii)

(以上準(zhǔn)備工作已經(jīng)實(shí)現(xiàn)A,B兩臺(tái)機(jī)器可以通信,能相互ping通)

(二)

1.A機(jī)器修改一下配置文件,開(kāi)啟內(nèi)核轉(zhuǎn)發(fā)

內(nèi)核參數(shù)配置文件: /proc/sys/net/ipv4/ip_forward

默認(rèn)內(nèi)容為:“0” 表示沒(méi)有開(kāi)啟內(nèi)核轉(zhuǎn)發(fā)

把配置文件中的"0"改為1 開(kāi)啟內(nèi)核轉(zhuǎn)發(fā)

echo "1" >/proc/sys/net/ipv4/ip_forward

2.A實(shí)現(xiàn)設(shè)置的網(wǎng)段能上網(wǎng)

iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE

3.?B上設(shè)置網(wǎng)關(guān)為192.168.100.1

(數(shù)據(jù)包要想從B-->A ,必須設(shè)置一個(gè)網(wǎng)關(guān))

查看網(wǎng)關(guān)命令: route -n

還沒(méi)網(wǎng)關(guān)

設(shè)置網(wǎng)關(guān):route add default gw 192.168.100.1 (A機(jī)器的網(wǎng)卡ens37的ip)

route add default gw 192.168.100.1

接著測(cè)試 是否能ping同A機(jī)器的ens33,同則證明能外網(wǎng)/公網(wǎng)通信

設(shè)置DNS 鏈接到網(wǎng)絡(luò)上

vi /etc/resolv.conf

添加內(nèi)容保存: nameserver 119.29.29.29

保存后測(cè)試是否能ping通外網(wǎng):ping www.baidu.com

(實(shí)驗(yàn)不能ping通外網(wǎng),可能是和我的網(wǎng)絡(luò)環(huán)境(實(shí)驗(yàn)時(shí)我用的網(wǎng)絡(luò)是手機(jī)熱點(diǎn)),但是此時(shí)我能ping通A機(jī)器的ens33和ping通網(wǎng)關(guān)就行了)

應(yīng)用需求二:

需求2:C機(jī)器只能和A通信,讓C機(jī)器可以直接連通B機(jī)器的22端口

A上打開(kāi)路由轉(zhuǎn)發(fā)echo "1">/ proc/sys/net/ipv4/ip_forward

A上執(zhí)行iptables -t nat -A PREROUTING -d 192.168.133.130 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22

A上執(zhí)行iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.136.133

B上設(shè)置網(wǎng)關(guān)為192.168.100.1

(其實(shí)就是端口映射)

1.A上打開(kāi)端口轉(zhuǎn)發(fā)

echo "1">/ proc/sys/net/ipv4/ip_forward

2.刪除需求一的nat表的設(shè)置,讓它恢復(fù)為空:

執(zhí)行命令:iptables -t nat -D POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE

(因之前操作過(guò):iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE)

3.向nat表添加操作:

(3.1)A上執(zhí)行

iptables -t nat -A PREROUTING -d 192.168.136.133 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22 ? (實(shí)現(xiàn)把進(jìn)來(lái)的包通過(guò)端口映射轉(zhuǎn)發(fā)到22端口)

(3.2)A上執(zhí)行

iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.136.133 (返回的包,進(jìn)行SNAT操作)

4.給B機(jī)器加上網(wǎng)關(guān)(必須要設(shè)置網(wǎng)關(guān))

route add default gw 192.168.100.1

5.測(cè)試,使用192.168.136.133 /1234端口遠(yuǎn)程連接B機(jī)器

(實(shí)驗(yàn)不成功)

iptables規(guī)則備份和恢復(fù)

1. service iptables save //命令會(huì)把規(guī)則保存到 /etc/sysconfig/iptables

根據(jù)自己的需求把iptables規(guī)則保存到指定的文件中:

步驟:iptables-save > /自定義文件

iptables-save >/tmp/ipt.txt

恢復(fù)保存的規(guī)則:

iptables-restore < /保存的文件

iptables-restore

總結(jié)

以上是生活随笔為你收集整理的iptables nat表含义_十(4)iptables语法、iptables filter表小案例、iptables nat表应用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。