raw表决定数据包是否被数据跟踪处理
mangle表用来mangle数据包,可以改变不同的包及包头的内容
nat表用于转换包的源地址和目的地址
filter表是专门过滤包
-t nat指定看nat表,不用-t默认为filter表
-L 列出表内所有规则,可以指定特定链
-n 使输出中的IP地址和端口以数值的形式显示
-v 输出详细化
--line 显示出每条规则在相应链中的序号
iptables -t nat -nL --line
PREROUTING链的作用是在包刚刚到达防火墙时改变它的目的地址,是从外部连接过来时的转发
OUTPUT链改变本地产生的包的目的地址,是本机连接时的转发
POSTROUTING链在包就要离开防火墙之前改变其源地址
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
sysctl -w net.ipv4.ip_forward=1
sysctl -p
-t 指定配置表
-A 链中添加规则
-D 删除链中规则
-C 修改链中规则
-j target 决定符合条件的包到何处去,target模式很多
1、不使用这个选项,目的端口不会被改变
2、指定一个端口,如--to-ports 8080
3、指定端口范围,如--to-ports 8080-8090
iptables -t nat -A PREROUTING -p tcp --dport 4444 -j REDIRECT --to-ports 6666
iptables -t nat -A OUTPUT -p tcp --dport 4444 -j REDIRECT --to-ports 6666
iptables -t nat -A PREROUTING -p tcp -s 192.168.10.0/24 --dport 4444 -j REDIRECT --to-ports 6666
指定要写入IP头的地址
可以是一个ip范围192.168.10.141-192.168.10.151
1、单独的地址。
2、一段连续的地址,如194.236.50.155-194.236.50.160,这样可以实现负载平衡。
3、在指定-p tcp 或 -p udp的前提下,可以指定源端口的范围,如194.236.50.155:1024-32000
iptables -t nat -A PREROUTING --dst 192.168.10.142 -p tcp --dport 4444 -j DNAT --to-destination 192.168.10.6:6666
iptables -t nat -A POSTROUTING --dst 192.168.10.6 -p tcp --dport 6666 -j SNAT --to-source 192.168.10.142
iptables -t nat -A PREROUTING --source 192.168.10.1 -p tcp --dport 4444 -j DNAT --to-destination 192.168.10.6:6666
iptables -t nat -A POSTROUTING -p TCP -j MASQUERADE
iptables -t nat -A POSTROUTING --dst 192.168.10.6 -p tcp --dport 6666 -j MASQUERADE
iptables -t nat -D PREROUTING 2
service iptables stop
本文始发于微信公众号(XG小刚):内网穿透-iptables端口转发
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论