端口转发/端口代理配置规则

windows端口转发/端口代理配置规则

查看端口转发规则

netsh interface portproxy show all

配置/新增端口转发

netsh interface portproxy add v4tov4 listenport=<本地端口> listenaddress=[本地IP] connectport=<目标端口> connectaddress=<目标IP>

<本地端口>:需要监听的本地端口
[本地IP]:可选,如果要限制只能通过特定本地IP地址访问,则提供此地址
<目标端口>:目标服务器上的端口
<目标IP>:目标服务器的IP地址

例如,如果要将本地计算机上的本地端口80的流量转发到目标服务器IP地址192.168.1.100的端口8443上,则运行命令
netsh interface portproxy add v4tov4 listenport=80 listenaddress=0.0.0.0 connectport=8443 connectaddress=192.168.1.100

0.0.0.0表示本机所有可用IP

更改端口转发规则

使用“set”关键字,例如将上例中的8443端口改成8080
netsh interface portproxy set v4tov4 listenport=80 listenaddress=0.0.0.0 connectport=8080 connectaddress=192.168.1.100

删除端口转发

netsh interface portproxy delete v4tov4 listenport=80 listenaddress=0.0.0.0

重置所有配置

netsh interface portproxy reset

注意事项

  1. 执行命令需要管理员权限
  2. 无论本机地址、目标地址,都不要使用127.0.0.1
  3. 防火墙中需要放行相应端口
  4. 现在只支持TCP协议(命令中可以不用声明protocol=tcp)
  5. windows资源管理器不支持带端口访问,因此服务器SMB服务端口更改后,可以考虑更改客户端的端口转发

Linux端口转发/端口代理配置规则

使用iptables中的nat表

本地端口转发至本地端口

将本机443端口转发至8443端口
iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 8443

查询转发配置

iptables -t nat -nL --line

删除转发配置

删除对应PREROUTING的编号即可,本例中编号为1
iptables -t nat -D PREROUTING 1

本地端口转发至远程机器端口

将本机192.168.1.100的443端口转发至远程机器192.168.1.200的8443端口
在本机192.168.1.100上进行操作

iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination 192.168.1.200:8443
iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.200 --dport 8443 -j SNAT --to-source 192.168.1.100

详情参考:https://www.cnblogs.com/paul8339/p/14688156.html

posted on 2024-07-11 16:36  越野兔  阅读(97)  评论(0编辑  收藏  举报

导航