-->
当前位置:首页 > 运维 > 正文内容

Centos iptables 透明端口转发代理配置

Luz2年前 (2023-05-31)运维2692

需要将发往服务器A某个端口的流量转发到服务器B的某个端口上,记录一下配置步骤


启用iptables转发

确保在服务器A上启用了IP转发功能。编辑/etc/sysctl.conf文件并取消注释以下行(删除行首的"#"符号):

net.ipv4.ip_forward=1

保存并关闭文件后,使用以下命令使更改生效:

sudo sysctl -p

添加iptables流量转发

iptables -t nat -A PREROUTING -p tcp --dport 【服务器A监听端口】 -j DNAT --to-destination 【服务器B IP】:【服务器B端口】
iptables -t nat -A POSTROUTING -p tcp -d 【服务器B IP】 --dport 【服务器B端口】 -j SNAT --to-source 【服务器A IP】
iptables -I INPUT -p tcp --dport 【服务器A监听端口】 -j ACCEPT


测试转发

我在服务器B上挂了个网页,通过curl 服务器A IP:服务器A监听端口,可以访问到服务器B IP:服务器B端口上的网站了。

image.png

测试成功以后不要忘记保存服务器A的iptables配置

service iptables save


注意

服务器A配置完以后查看监听端口是空的,测试的时候不要看端口有没有监听,直接访问一下服务试试。

image.png


iptables 还需要把监听的端口放开来



发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。