展招 發表於 2017-2-9 15:46:24

CentOS下如何配置端口转发?

<p><strong>开启IP转发</strong> </p>
<p>首先开启IP转发功能,默认是关闭的。</p>
<p><strong>临时修改:</strong></p>
<p># echo 1 &gt;/proc/sys/net/ipv4/ip_forward </p>
<p>修改过后就马上生效,但如果系统重启后则又恢复为默认值0。</p>
<p><strong>永久修改:</strong></p>
<p>vi /etc/sysctl.conf </p>
<p># 找到下面的值并将0改成1 </p>
<p>net.ipv4.ip_forward = 1 </p>
<p># sysctl &ndash;p(使之立即生效) </p>
<p>默认值0是禁止ip转发,修改为1即开启ip转发功能。</p>
<p align="center"><img alt="" src="https://img.jbzj.com/file_images/article/201702/2017020915381156.jpg" /></p>
<p><strong>配置端口转发</strong> </p>
<p>假设用户访问172.16.4.247:728时我想让它转发到172.16.4.97:80:</p>
<p># iptables -t nat -A PREROUTING -p tcp -d 113.108.110.61 --dport 728 -j DNAT --to-destination 172.16.4.97:80 </p>
<p># iptables -t nat -A POSTROUTING -p tcp -s 172.16.4.97 --sport 80 -j SNAT --to-source 172.16.4.247 </p>
<p># service iptables save(将当前规则保存到 /etc/sysconfig/iptables) </p>
<p>或者,你也可以直接修改/etc/sysconfig/iptables文件:</p>
<p>-A PREROUTING -d 172.16.4.247/32 -p tcp -m tcp --dport 728 -j DNAT --to-destination 172.16.4.97:80 </p>
<p>-A POSTROUTING -s 172.16.4.97/32 -p tcp -m tcp --sport 80 -j SNAT --to-source 172.16.4.247 </p>
<p>最后不要忘了开放728端口</p>
<p>-A INPUT -p tcp -m state --state NEW -m tcp --dport 728 -j ACCEPT </p>
<p>配置完成后,记得重启防火墙:</p>
<p># service iptables restart </p>
<p><strong>本机端口转发</strong> </p>
<p>如果只需要在本机间不同的端口转发就比较容易了,比如 访问&nbsp;http://ip:729&nbsp;我想返回&nbsp;http://ip:80&nbsp;的内容,配置如下:</p>
<p># iptables -t nat -A PREROUTING -p tcp --dport 729 -j REDIRECT --to-ports 80 </p>
<p># service iptables save </p>
<p># service iptables restart</p>
頁: [1]
查看完整版本: CentOS下如何配置端口转发?