在實(shí)際的生產(chǎn)環(huán)境中,我們?yōu)榱税踩?,會將一些重要的服?wù)(數(shù)據(jù)庫服務(wù))不開放外網(wǎng)訪問,但是當(dāng)我們某個(gè)時(shí)刻由于一些特殊需求,需要進(jìn)行外網(wǎng)訪問的時(shí)候,我們可以通過端口轉(zhuǎn)發(fā)來實(shí)現(xiàn)。通過一臺和與服務(wù)可以互相訪問的主機(jī),通過該主機(jī)進(jìn)行端口轉(zhuǎn)發(fā)。
* Windows 端口轉(zhuǎn)發(fā)
* Linux 端口轉(zhuǎn)發(fā)
一、Windows 端口轉(zhuǎn)發(fā)
windows 主要是通過 netsh 進(jìn)行端口轉(zhuǎn)發(fā)。
listenaddress # 本地監(jiān)聽的ip listenport # 本地監(jiān)聽的端口 connectaddress # 轉(zhuǎn)發(fā)請求接收的主機(jī)ip
connectport # 轉(zhuǎn)發(fā)請求接收的主機(jī)的端口 # 執(zhí)行命令 netsh interface portproxy add v4tov4
listenaddress=localip listenport=localport connectaddress=remoteip
connectport=remoteport # 查看現(xiàn)有的配置 netsh interface portproxy show all # 刪除原有的端口轉(zhuǎn)發(fā)
netsh interface portproxy delete v4tov4 listenaddress=localip
listenport=localport
示例
設(shè)置將請求到 本地 IP 192.168.15.89 的端口請求 2222 轉(zhuǎn)發(fā)到 192.168.15.35 端口 22。
注意: 下面的命令需要用管理員執(zhí)行。
netsh interface portproxy add v4tov4 listenaddress=192.168.15.89
listenport=2222 connectaddress=192.168.15.35 connectport=22 PS
C:\WINDOWS\system32> netsh interface portproxy show all 偵聽 ipv4: 連接到 ipv4: 地址
端口 地址 端口 --------------- ---------- --------------- ---------- 192.168.15.89
2222 192.168.15.35 22
二、Linux 端口轉(zhuǎn)發(fā)
1、rinetd
簡介
官方文檔 :https://boutell.com/rinetd/ <https://boutell.com/rinetd/>
下載 https://boutell.com/rinetd/http/rinetd.tar.gz
<https://boutell.com/rinetd/http/rinetd.tar.gz>
rinetd 可以將 TCP 連接從一個(gè) IP 地址和端口重定向到另外一個(gè) IP 地址和端口。rinetd
是一個(gè)單進(jìn)程服務(wù)(非阻塞IO進(jìn)程),它可以處理配置文件/etc/rinetd.conf中指定的地址和端口中任意數(shù)量的連接。rinetd 不能重定向
FTP,因?yàn)?FTP 需要多個(gè)socket。 rinetd 可以在 Linux 平臺上運(yùn)行,也可以在 Windows 95/98/NT 平臺上運(yùn)行。
安裝:
wget https://boutell.com/rinetd/http/rinetd.tar.gz tar -xzf rinetd.tar.gz yum
install gcc -y cd rinetd # (修改端口范圍) sed -i 's/65536/65535/g' rinetd.c # 創(chuàng)建目錄
mkdir /usr/man # 解壓安裝 make && make install
配置文件
配置轉(zhuǎn)發(fā)
配置文件的轉(zhuǎn)發(fā)書寫規(guī)則,可以配置多個(gè)轉(zhuǎn)發(fā)。
bindaddress bindport connectaddress connectport
示例:
0.0.0.0 2222 192.168.15.89 22 0.0.0.0 3333 192.168.15.89 80
配置過濾規(guī)則
rinetd 可以使用過濾規(guī)則,來設(shè)定可以訪問的主機(jī)。(只能使用ip,不能使用主機(jī)名)
注意: 填寫的位置應(yīng)該位于文件的開頭。
allow #設(shè)置允許訪問的主機(jī) deny #設(shè)置拒絕訪問的主機(jī)
示例:拒絕 192.168.15 整個(gè)網(wǎng)段的請求。
deny 192.168.15.*
配置日志文件
默認(rèn)情況下, rinetd 不會生成日志文件。要激活日志記錄,請將以下行添加到配置文件中:
logfile log-file-location
示例:注意 logfile 與后面路徑只有一個(gè)空格哦。
logfile /var/log/rinetd.log
配置文件示例:
deny 192.168.15.* 0.0.0.0 2222 192.168.15.89 22 0.0.0.0 3333 192.168.15.89 80
logfile /var/log/rinetd.log
寫入配置文件
echo <<EOF >/etc/rinetd.conf deny 192.168.15.* 0.0.0.0 2222 192.168.15.89 22
0.0.0.0 3333 192.168.15.89 80 logfile /var/log/rinetd.log EOF
運(yùn)行和管理
# 啟動(dòng) rinetd rinetd # 設(shè)置開機(jī)自啟 echo rinetd >>/etc/rc.local # 暫停 ,通過kill pid kill
`cat /var/run/rinetd.pid` # 使用其他配置文件 rinetd -c /opt/rinetd.conf
我們在上面使用的端口,記得在防火墻添加放行規(guī)則。
iptables 和 Firewalld 進(jìn)行端口轉(zhuǎn)發(fā)的話我們后面進(jìn)行補(bǔ)充。
熱門工具 換一換
感谢您访问我们的网站,您可能还对以下资源感兴趣:
调教肉文小说-国产成本人片免费av-空姐av种子无码-在线观看免费午夜视频-综合久久精品激情-国产成人丝袜视频在线观看软件-大芭区三区四区无码-啊啊好爽啊啊插啊用力啊啊-wanch视频网-国产精品成人a免费观看