码迷,mamicode.com
首页 > 其他好文 > 详细

iptable实现端口转发

时间:2019-10-24 17:06:16      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:direct   for   客户端   red   过滤   tcp   dir   des   利用   

利用iptables的规则来实现端口转发:

第一步需要将内核参数的net.ipv4.ip_forward=1 

场景一:实现本地端口转发

本地端口转发实在PREROUTING链中将端口做NAT转换:

# iptable -t nat -A  PREROUTING -p tcp --dport   "$原端口"  -j REDIRECT --to-port  "$目标端口"

场景二、实现端口远程端口转发

远程端口转发原理,是在本地PREROUTING链中将端口进行NAT转换,然后通过FORWARD链转至POSTROUTING链中,然后在POSTROUTING中将原client地址进行SNAT的转换

1、 DNAT转换  iptable -t nat -A PREROUTING -p tcp -m tcp --dport   "$原端口" -j DNAT --to-destination xxx:xxx:xxx:xxx:$目标端口          note:xxx:xxx:xxx:xxx为客户端访问的具体IP地址,即中间机器的提供接口访问的IP地址

2、FORWARD放行: iptable -t filter -A FORWARD -j ACCEPT      ### 此处可设置其他的过滤条件

3、SNAT转换: iptable -t nat -A POSTROUTING -p tcp -m tcp --dport $目标端口 -j SNAT --to-source "xxx:xxx:xxx:xxx"

iptable实现端口转发

标签:direct   for   客户端   red   过滤   tcp   dir   des   利用   

原文地址:https://www.cnblogs.com/xiaopaipai/p/11733291.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!