一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

Linux|Centos|Ubuntu|系統(tǒng)進(jìn)程|Fedora|注冊(cè)表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服務(wù)器之家 - 服務(wù)器系統(tǒng) - Linux - 配置iptables實(shí)現(xiàn)本地端口轉(zhuǎn)發(fā)的方法詳解

配置iptables實(shí)現(xiàn)本地端口轉(zhuǎn)發(fā)的方法詳解

2019-07-04 15:36風(fēng)再起時(shí)phoenix007 Linux

這篇文章主要介紹了配置iptables實(shí)現(xiàn)本地端口轉(zhuǎn)發(fā)的方法,在Linux服務(wù)器運(yùn)維過(guò)程中非常常用,需要的朋友可以參考下

場(chǎng)景
假如你在用 resin 調(diào)試一個(gè) Web 程序,需要頻繁地重啟 resin。這個(gè) Web 程序需要開(kāi)在 80 端口上,而 Linux 限制 1024 以下的端口必須有 root 權(quán)限才能開(kāi)啟。但是你又不愿意在調(diào)程序的時(shí)候總是開(kāi)著一個(gè) root 終端。在這種情況下,你可以把 resin 開(kāi)在默認(rèn)的 8080 端口上,然后使用 iptables 來(lái)實(shí)現(xiàn)和真的把服務(wù)開(kāi)在 80 端口上一樣的效果。
方法
將與 80 端口的 TCP 連接轉(zhuǎn)接到本地的 8080 端口上。使用 DNAT (Destination Network Address Translation) 技術(shù)可以滿足這一要求。因?yàn)?iptables 在處理本地連接和遠(yuǎn)程連接的方法不同,所以需要分開(kāi)處理。下面假設(shè)本機(jī)的 IP 是 192.168.4.177。
遠(yuǎn)程連接
遠(yuǎn)程連接指的是由另外一臺(tái)機(jī)器連接到這臺(tái)機(jī)器上。這種連接的數(shù)據(jù)包在 iptables 會(huì)首先經(jīng)過(guò) PREROUTING 鏈,所以只需在 PREROUTING 鏈中作 DNAT。
 

復(fù)制代碼
代碼如下:

# iptables -t nat -A PREROUTING -p tcp -i eth0 -d 192.168.4.177 --dport 80 -j DNAT --to 192.168.4.177:8080 

本地連接
本地連接指的是在本機(jī)上,用 127.0.0.1 或者本機(jī) IP 來(lái)訪問(wèn)本機(jī)的端口。本地連接的數(shù)據(jù)包不會(huì)通過(guò)網(wǎng)卡,而是由內(nèi)核處理后直接發(fā)給本地進(jìn)程。這種數(shù)據(jù)包在 iptables 中只經(jīng)過(guò) OUTPUT 鏈,而不會(huì)經(jīng)過(guò) PREROUTING 鏈。所以需要在 OUTPUT 鏈中進(jìn)行 DNAT。除了對(duì) 127.0.0.1 之外,對(duì)本機(jī) IP (即 192.168.4.177) 的訪問(wèn)也屬于本地連接。

復(fù)制代碼
代碼如下:

# iptables -t nat -A OUTPUT -p tcp -d 127.0.0.1 --dport 80 -j DNAT --to 127.0.0.1:8080
# iptables -t nat -A OUTPUT -p tcp -d 192.168.4.177 --dport 80 -j DNAT --to 127.0.0.1:8080 

注意事項(xiàng)
你也許需要通過(guò)以下命令打開(kāi) IP 轉(zhuǎn)發(fā):

復(fù)制代碼
代碼如下:

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

在進(jìn)行試驗(yàn)時(shí),如果要重新設(shè)置 iptables,需要首先清空 nat 表:

復(fù)制代碼
代碼如下:

# iptables -F -t nat 

實(shí)例操作
這里將本地接口IP 61.144.a.b 的3389端口 轉(zhuǎn)發(fā)到 116.6.c.d的3389      (主要訪問(wèn)到61.144.a.b的3389端口,就會(huì)跳轉(zhuǎn)到116.6.c.d的3389)
1、 首先應(yīng)該做的是/etc/sysctl.conf配置文件的 net.ipv4.ip_forward = 1 默認(rèn)是0    這樣允許iptalbes FORWARD。
2、 service iptables stop  關(guān)閉防火墻
3、 重新配置規(guī)則

復(fù)制代碼
代碼如下:

iptables -t nat -A PREROUTING --dst 61.144.a.b -p tcp --dport 3389 -j DNAT --to-destination 116.
6.c.d:3389
iptables -t nat -A POSTROUTING --dst 116.6.c.d -p tcp --dport 3389 -j SNAT --to-source 61.144.a.b
service iptables save 

 

        將當(dāng)前規(guī)則保存到 /etc/sysconfig/iptables
        若你對(duì)這個(gè)文件很熟悉直接修改這里的內(nèi)容也等于命令行方式輸入規(guī)則。
5、 啟動(dòng)iptables 服務(wù), service iptables start


可以寫(xiě)進(jìn)腳本,設(shè)備啟動(dòng)自動(dòng)運(yùn)行;

 

復(fù)制代碼
代碼如下:

# vi /etc/rc.local 
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.</p> <p>touch /var/lock/subsys/local</p> <p>sh /root/myshipin.log
---------------------------------------------------------------------
vi myshipin.log 
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.</p> <p>iptables -F -t nat
iptables -t nat -A PREROUTING --dst 61.144.a.b -p tcp --dport 3389 -j DNAT --to-destination 116.6.c.d:3389
iptables -t nat -A POSTROUTING --dst 116.6.a.b -p tcp --dport 3389 -j SNAT --to-source 61.144.c.d
~
----------------------------------------------------------------
TCP</p> <p>iptables -t nat -A PREROUTING --dst 61.144.a.b -p tcp --dport 9304 -j DNAT --to-destination 10.94.a.b:9304
iptables -t nat -A POSTROUTING --dst 10.94.a.b -p tcp --dport 9304 -j SNAT --to-source 61.144.a.b</p> <p>UDP
iptables -t nat -A PREROUTING --dst 61.144.a.b -p udp --dport 9305 -j DNAT --to-destination 10.94.a.b:9305
iptables -t nat -A POSTROUTING --dst 10.94.a.b -p udp --dport 9305 -j SNAT --to-source 61.144.a.b

另:

 

iptables配置文件的位置:/etc/sysconfig/iptables 外網(wǎng)地址發(fā)變化在配置文件里修改就可以了。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 成人私人影院在线观看网址 | 国产精品久久国产精品99 gif | 爱操综合 | 国产精品免费一级在线观看 | 国产精品亚洲一区二区久久 | avtt在线观看 | 青草青草伊人精品视频 | 久久久久久久久人体 | 99热久久这里只精品国产www | haodiaose在线精品免费观看 | 色悠久久久久综合网小说 | 欧美男男gaysgays| 亚洲国产综合另类视频 | 全黄h全肉细节修仙玄幻文 全彩调教侵犯h本子全彩妖气he | 亚洲精品动漫在线观看 | 3d动漫被吸乳羞羞 | 国产亚洲综合精品一区二区三区 | 交换余生在线播放免费 | 99热久久这里只有精品6国产网 | 日本护士撒尿xxxxhd | 免费国产一级观看完整版 | 特级淫片大乳女子高清视频 | 亚洲 欧美 日本 国产 高清 | 99热免费在线观看 | 免费国产在线观看 | 亚洲国产一区二区三区青草影视 | 999久久久免费精品国产牛牛 | 国产精品国产色综合色 | 99久久国产综合精品网成人影院 | 欧美日韩一区二区三区韩大 | 喜欢老头吃我奶躁我的动图 | 亚洲精品有码在线观看 | 亚洲国产精品第一区二区三区 | 天堂8在线天堂资源在线 | 美女扒开粉嫩尿口漫画 | 2022最新a精品视频在线观看 | 四虎精品免费国产成人 | 亚洲视频高清 | 国产亚洲精品一区在线播 | 性奴公司 警花 | 色综合久久日韩国产 |