iptables转发mysql_使用iptables进行端口转发,支持端口段转发

端口转发自然已经介绍过了rinetd和socat这两个简单易用的工具,今天来介绍一下系统自带的iptables防火墙转发方案。iptables防火墙转发方案适用于拥有iptables工具的系统,其最大特色就是拥有强盗的转发性能和支持端口段转发,缺点就是对小白不友好,配置有难度,且容易出现奇奇怪怪的问题。

新手推荐使用rinetd和socat:

format,png

方法

1、开启系统的转发功能

vim /etc/sysctl.conf

net.ipv4.ip_forward=0

修改成

net.ipv4.ip_forward=1

编辑及后立即生效,需执行

sysctl -p

2、iptables的命令

iptables -t nat -A PREROUTING -p tcp --dport [端口号] -j DNAT --to-destination [目标IP]

iptables -t nat -A PREROUTING -p udp --dport [端口号] -j DNAT --to-destination [目标IP]

iptables -t nat -A POSTROUTING -p tcp -d [目标IP] --dport [端口号] -j SNAT --to-source [本地服务器IP]

iptables -t nat -A POSTROUTING -p udp -d [目标IP] --dport [端口号] -j SNAT --to-source [本地服务器IP]

重启iptables生效

service iptables save

service iptables restart

扩展需求

1、多端口转发修改方案:

#将本地服务器的50000~65535转发至目标IP为1.1.1.1的50000~65535端口

-A PREROUTING -p tcp -m tcp --dport 50000:65535 -j DNAT --to-destination 1.1.1.1

-A PREROUTING -p udp -m udp --dport 50000:65535 -j DNAT --to-destination 1.1.1.1

-A POSTROUTING -d 1.1.1.1/32 -p tcp -m tcp --dport 50000:65535 -j SNAT --to-source [本地服务器IP]

-A POSTROUTING -d 1.1.1.1/32 -p udp -m udp --dport 50000:65535 -j SNAT --to-source [本地服务器IP]

2、非同端口号修改方案:

#使用本地服务器的60000端口来转发目标IP为1.1.1.1的50000端口

-A PREROUTING -p tcp -m tcp --dport 60000 -j DNAT --to-destination 1.1.1.1:50000

-A PREROUTING -p udp -m udp --dport 60000 -j DNAT --to-destination 1.1.1.1:50000

-A POSTROUTING -d 1.1.1.1/32 -p tcp -m tcp --dport 50000 -j SNAT --to-source [本地服务器IP]

-A POSTROUTING -d 1.1.1.1/32 -p udp -m udp --dport 50000 -j SNAT --to-source [本地服务器IP]

使用VMware虚拟机时,如果你想将虚拟机的端口转发到Navicat,你可以按照以下步骤进行操作: 1. 首先,确保虚拟机的3306端口已经开通。你可以使用以下命令检查虚拟机防火墙的状态: ``` service iptables status ``` 如果只有22端口对外开放,你需要添加规则来开通3306端口。 2. 进入VMware虚拟机的设置界面,找到网络选项。在网络选项中,你可以设置端口转发规则。找到Navicat所在的主机端口和虚拟机的IP地址和端口,将它们设置为转发规则。 3. 在主机上打开Navicat,并使用虚拟机的IP地址和转发端口进行连接。这样,你就可以将Navicat连接到虚拟机的MySQL数据库了。 引用提到了查看虚拟机防火墙的状态和开通虚拟机的3306端口的方法。引用提到了使用Virtualenv隔离Python运行环境的作用。引用则是作者在查找有关Virtualenv的信息时的一些心得体会。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [本地如何连接虚拟机](https://blog.csdn.net/weixin_43908530/article/details/109865480)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Vmware虚拟机、项目环境搭建、Linux下搭建Django生产环境、python利器pip env](https://blog.csdn.net/Aaronxiaobo/article/details/96124138)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值