CentOS7使用iptables搭建网关服务器
Posted _诺千金
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS7使用iptables搭建网关服务器相关的知识,希望对你有一定的参考价值。
一、目标
二、拓扑图
三、安装iptables
四、添加规则
五、测试
一、目标
奇葩项目没有路由器,实现目标:
1、内网机器可以通过网关服务器连接外网(SNAT);
2、外网可以通过网关服务器远程连接内网机器(DNAT)。
二、拓扑结构
网关服务器(两个网口):
ens33:192.168.31.230 (外网)
ens37:172.16.0.1 (内网)
内网机器VM01:
ens33:172.16.0.100 网关:172.16.0.1
其中,网关服务器的外网地址可以连接互联网,内网地址和内网机器VM01通过交换机连接,并且,VM01的网关配置为网关服务器的内网IP(172.16.0.1)。
三、安装iptables
1、首先关闭centos7自带的firewalld防火墙
# systemctl disable firewalld
# systemctl stop firewalld
2、配置路由转发
# vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
# sysctl -p
3、安装iptables
# yum install iptables-services
# systemctl enable iptables
# systemctl restart iptables
四、添加规则
清空防火墙规则
# iptables -F
添加SNAT规则
# iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -j MASQUERADE
添加DNAT规则
# iptables -t nat -A PREROUTING -i ens33 -d 192.168.31.230 -p tcp --dport 2222 -j DNAT --to-destination 172.16.0.100:22
保存配置
# service iptables save
查看规则
# iptables -t nat -nvL
Chain PREROUTING (policy ACCEPT 7 packets, 1595 bytes)
pkts bytes target prot opt in out source destination
0 0 DNAT tcp -- ens33 * 0.0.0.0/0 192.168.31.230 tcp dpt:2222 to:172.16.0.100:22
0 0 DNAT tcp -- ens33 * 0.0.0.0/0 192.168.31.230 tcp dpt:2223 to:172.16.0.101:22
Chain INPUT (policy ACCEPT 2 packets, 84 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 2 packets, 133 bytes)
pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 2 packets, 133 bytes)
pkts bytes target prot opt in out source destination
1 71 MASQUERADE all -- * * 172.16.0.0/24 0.0.0.0/0
删除规则
# iptables -t nat -nvL --line-numbers
# iptables -t nat -D PREROUTING 1
五、测试
1、在内网服务器VM01测试:
# ping www.baidu.com
2、在外网中(192.168.31.0/24)测试远程连接VM01
# ssh 192.168.31.230 2222
iptables命令参数:
以上是关于CentOS7使用iptables搭建网关服务器的主要内容,如果未能解决你的问题,请参考以下文章