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

服務(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ā)變化在配置文件里修改就可以了。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美另类性xxoo | 日韩永久在线观看免费视频 | 青春草在线观看视频 | 日本在线一区二区 | 国产麻豆在线观看网站 | 日本xx高清视频免费观看 | 国产精品国语自产拍在线观看 | 好大好爽好硬我要喷水了 | 久久久精品成人免费看 | 日日操日日 | 国产精品久久久久毛片真精品 | 国产欧美日韩精品一区二区三区 | 95视频免费看片 | freese×video性欧美丝袜 | 97影视| 国产果冻传媒 | 日本中文字幕二区三区 | 污到湿的爽文免费阅读 | 亚洲 欧美 日韩 国产 视频 | 娇小XXXXX第一次出血 | 亚洲精品国产一区二区在线 | 亚洲成人第一页 | 欧美激情 亚洲 | 4438全国免费观看 | 色老太bbbbb| 国产精品激情综合久久 | 国产亚洲精品美女 | 精品一区视频 | 无码人妻精品一区二区蜜桃在线看 | 狠狠撸在线影院 | 国产精品欧美在线观看 | 哇嘎在线精品视频在线观看 | 男人天堂亚洲 | 成年男女免费视频观看性 | 无码一区二区三区视频 | 四虎精品视频在线永久免费观看 | 国产微拍精品一区 | 亚洲 色 欧美 爱 视频 日韩 | 国产麻豆剧果冻传媒观看免费视频 | 海角社区在线视频 | 日本无遮挡拍拍拍凤凰 |