防火墙之iptables流量控制

本文详细介绍如何使用iptables配置路由转发及PNAT功能,包括主机间路由转发设置、iptables规则应用,以及通过PNAT实现数据库访问。适用于网络管理与安全控制场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

防火墙之iptables和firewalld的前世今生.
防火墙之iptables详解.
防火墙之iptables流量控制.

1、ip_forward 路由转发功能

当公司内部只有一台主机A可以访问外网,其他主机B、C、D …等都需要通过主机A转发上网的小功能。

1.1、配置 主机D:192.168.168.133 不能访问其他网段

因为我是在VM虚拟机上实验,需要以下基本环境配置。

1.查询默认网关路由
ip route
---------------------------
default via 192.168.168.1 dev ens160 proto static metric 100 
192.168.168.0/24 dev ens160 proto kernel scope link src 192.168.168.133 metric 100

2.删除默认网关路由
ip route del default via 192.168.168.1 dev ens160 proto static metric 100

3.测试外网:网络不通。
ping www.baidu.com
---------------------------
ping: www.baidu.com: Name or service not known

1.2、配置 主机A:192.168.168.100 转发功能

1.开启内核的转发功能。
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p

2.配置iptables规则,允许 ens32 接口进行转发。
# 放行Forward的数据包
iptables -I FORWARD -i ens32 -j ACCEPT
# 开启网卡混杂模式(允许任意流向的数据包)
iptables -t nat -A POSTROUTING -o ens32 -j MASQUERADE

1.3、配置 主机D:192.168.168.133 其他网段报文交给主机A

1.配置其他网段报文默认网关路由
route add -net 0.0.0.0/0 gw 192.168.168.100

2.测试外网:网络已通。
ping -c 2 www.baidu.com
---------------------------
PING www.a.shifen.com (39.156.66.14) 56(84) bytes of data.
64 bytes from 39.156.66.14 (39.156.66.14): icmp_seq=1 ttl=127 time=21.2 ms
64 bytes from 39.156.66.14 (39.156.66.14): icmp_seq=2 ttl=127 time=20.9 ms

--- www.a.shifen.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 20.861/21.051/21.242/0.190 ms

2、PNAT 转发功能

使用PNAT转发功能 通过 主机A 访问 主机D上的数据库

2.1、配置主机APNAT

1.放行Forward的数据包
iptables -I FORWARD -i ens32 -j ACCEPT

2.开启网卡混杂模式(允许任意流向的数据包)
iptables -t nat -A POSTROUTING -o ens32 -j MASQUERADE

3.访问192.168.168.100:63306的TCP流量NAT到192.168.168.133:3306
iptables -t nat -A PREROUTING -d 192.168.168.100 -p tcp --dport 63306 -j DNAT --to-destination 192.168.168.133:3306
iptables -t nat -nvL

4.记得保存规则哦
service iptables save

在整个配置过程中没有配置准入的filter 规则,但是也能通。是因为匹配的顺序是先匹配 nat 表,然后再匹配 filter 表,当 nat 表命中后就转发走了,所以不用插入 filter 的规则。

2.2、测试功能 O(∩_∩)O哈哈~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值