searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

iptables配置流量转发

2024-04-30 09:17:41
18
0

iptables可以认为是一种防火墙,可以拦截、转发特定包

*:它和firewall是同一角色,都是操作内核对网络的配置。所以在iptables和firewall同时配置时,配置均生效

 

iptables内的“四表五链”逻辑

 

我们可以在 FORWARD chain中配置转发

1、配置UDP转发

转发10000端口的udp包至172.16.0.1机器

sudo iptables -t nat -A PREROUTING -p udp --dport 10000 -j DNAT --to-destination 172.16.0.1:10000   
sudo iptables -t nat -A POSTROUTING -p udp --dport 10000 -d 172.16.0.1 -j MASQUERADE   
sudo iptables -I FORWARD -p udp --dport 10000 -d 172.16.0.1 -j ACCEPT     # 允许本机转至172.16.0.1的规则
sudo iptables -I FORWARD -p udp --sport 10000 -s 172.16.0.1 -j ACCEPT      # 允许源ip为172.16.0.1的转发

参数解析:

-t 表nat

-A 添加规则,添加至表尾

-I 插入规则,插入至表头

-p 协议

--dport 目标端口

--sport 源端口

-j 操作

-d 目标ip

-s 源ip

 

2、配置TCP转发

与udp类似,将-p参数改为tcp即可

sudo iptables -t nat -A PREROUTING -p tcp --dport 1555 -j DNAT --to-destination 172.16.0.1:1555
sudo iptables -t nat -A POSTROUTING -p tcp --dport 1555 -d 172.16.0.1 -j MASQUERADE
sudo iptables -I FORWARD -p tcp --dport 1555 -d 172.16.0.1 -j ACCEPT
sudo iptables -I FORWARD -p tcp --sport 1555 -s 172.16.0.1 -j ACCEPT

 

3、iptables配置持久化

sudo systemctl status iptables   #查看服务是否已安装
sudo yum install iptables-services   #安装服务

#开启iptables服务前,用命令sudo service iptables save保存一下当前配置,否则可能会被覆盖
sudo service iptables save
sudo systemctl start iptables
sudo service iptables save
sudo cat /etc/sysconfig/iptables

至此,iptables配置全部持久化,每次重启机器,iptables service会读取 /etc/sysconfig/iptables 下的配置并加载

0条评论
0 / 1000
z****n
5文章数
0粉丝数
z****n
5 文章 | 0 粉丝
原创

iptables配置流量转发

2024-04-30 09:17:41
18
0

iptables可以认为是一种防火墙,可以拦截、转发特定包

*:它和firewall是同一角色,都是操作内核对网络的配置。所以在iptables和firewall同时配置时,配置均生效

 

iptables内的“四表五链”逻辑

 

我们可以在 FORWARD chain中配置转发

1、配置UDP转发

转发10000端口的udp包至172.16.0.1机器

sudo iptables -t nat -A PREROUTING -p udp --dport 10000 -j DNAT --to-destination 172.16.0.1:10000   
sudo iptables -t nat -A POSTROUTING -p udp --dport 10000 -d 172.16.0.1 -j MASQUERADE   
sudo iptables -I FORWARD -p udp --dport 10000 -d 172.16.0.1 -j ACCEPT     # 允许本机转至172.16.0.1的规则
sudo iptables -I FORWARD -p udp --sport 10000 -s 172.16.0.1 -j ACCEPT      # 允许源ip为172.16.0.1的转发

参数解析:

-t 表nat

-A 添加规则,添加至表尾

-I 插入规则,插入至表头

-p 协议

--dport 目标端口

--sport 源端口

-j 操作

-d 目标ip

-s 源ip

 

2、配置TCP转发

与udp类似,将-p参数改为tcp即可

sudo iptables -t nat -A PREROUTING -p tcp --dport 1555 -j DNAT --to-destination 172.16.0.1:1555
sudo iptables -t nat -A POSTROUTING -p tcp --dport 1555 -d 172.16.0.1 -j MASQUERADE
sudo iptables -I FORWARD -p tcp --dport 1555 -d 172.16.0.1 -j ACCEPT
sudo iptables -I FORWARD -p tcp --sport 1555 -s 172.16.0.1 -j ACCEPT

 

3、iptables配置持久化

sudo systemctl status iptables   #查看服务是否已安装
sudo yum install iptables-services   #安装服务

#开启iptables服务前,用命令sudo service iptables save保存一下当前配置,否则可能会被覆盖
sudo service iptables save
sudo systemctl start iptables
sudo service iptables save
sudo cat /etc/sysconfig/iptables

至此,iptables配置全部持久化,每次重启机器,iptables service会读取 /etc/sysconfig/iptables 下的配置并加载

文章来自个人专栏
zhangyuhang
5 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0