概述
目录
- 一、SNAT策略概述
- 1.1 SNAT策略的典型应用环境
- 1.2 SNAT策略的工作原理
- 1.21Nat 转换
- 二、SNAT项目操作
- 2.1 项目流程图示
- 2.2 项目流程解析
- 2.3 项目准备
- 2.4 项目操作
一、SNAT策略概述
1.1 SNAT策略的典型应用环境
局域网主机共享单个公网ip地址接入Internet(上网)
1.2 SNAT策略的工作原理
源地址转换,Source Network Address Translation
修改数据包的源地址
DNAT入站:PREROUTING→INPUT-→>FORWARD .
SNAT出站:OUTPUT→POSTROUTING .
1.21Nat 转换
Nat 转换:入站接受PREROUTING策略匹配,出站POSTROUTING策略匹配。
SNAT转换后图示
二、SNAT项目操作
2.1 项目流程图示
2.2 项目流程解析
1、出站
(1)中间的防火墙充当路由器,开启nat功能;
(2)防火墙上做策略,指定192.168.100.10/24的主机转换成192.168.200.20/24
iptables -F #清除所有规则,或加 -t nat ,删除nat所有规则
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens36(外网卡) -j SNAT --to-source 192.168.200.20 #源地址192.168.100.0/24网段匹配出站网卡ens36网卡192.168.200.20
2、入站
DNAT:相当于华为路由器中的servernat的知识点,让外网的用户可以访问内网发布的服务。
具体的实现方法:
(1)中间的防火墙充当路由器,开启nat功能;
[root@server2 ~]# echo "net.ipv4.ip_forward=1" > /etc/sysctl.conf #开启路由功能
[root@server2 ~]# sysctl -p
net.ipv4.ip_forward = 1
[root@server2 ~]# route -n #检查路由
(2)内网的服务器上开启Apache服务,并制作网页
yum -y install httpd #安装apache服务
systemctl start httpd #启动服务
echo "Wang Kang Wen" > /var/www/html/index.html #制作网页
(3)防火墙上做策略,指定访问网关的Apache服务映射给内网服务器
iptables -t nat -A PREROUTING -i ens36 -d 192.168.200.20 -p tcp --dport 80 -j DNAT --to-destination 192.168.100.10 #入站匹配ens36网卡192.168.200.20匹配tcp协议目的端口80
3、验证
外网验证
[root@server3 ~]# curl http://192.168.200.20
Wang Kang Wen
2.3 项目准备
#所有网卡都是仅主机模式,此项目不需要上网
内网:ens33—192.168.100.10/24 #VMnet1;网关需指向中间的防火墙充当的路由器ens33地址,解决上网问题
中间防火墙:
ens33—192.168.100.20/24 #VMnet1;
ens36—192.168.200.20/24 #VMnet2;添加网卡,复制ens33网卡配置修改,删除UUID
[root@server2 ~]# cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens36
[root@server2 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens36
[root@server2 ~]# systemctl restart network #重启网卡
[root@server2 ~]# ifconfig #查看
外网:
ens33—192.168.200.30/24 #VMnet2;
2.4 项目操作
1、配置网卡,关闭防火墙
#所有网卡都是仅主机模式,此项目不需要上网
systemctl stop firewalld #关闭firewalld防火墙
setenforce 0
#关闭防火墙所有服务器均打
内网:ens33—192.168.100.10/24
指网关 #VMnet1;网关需指向中间的防火墙充当的路由器ens33地址,解决上网问题
中间防火墙:
ens33—192.168.100.20/24 #VMnet1;
ens36—192.168.200.20/24 #VMnet2;添加网卡,先查看网卡是ens多少,复制ens33网卡配置修改
[root@server2 ~]# cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens36 #新加的网卡是ens36
[root@server2 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens36 #删除UUID,更改名称
[root@server2 ~]# systemctl restart network #重启网卡
[root@server2 ~]# ifconfig #查看
外网:
ens33—192.168.200.30/24 #VMnet2;
2、内网操作
[root@server1 ~]# yum -y install httpd #安装apache服务
[root@server1 ~]# systemctl start httpd #启动服务
[root@server1 ~]# netstat -anpt | grep httpd #查看服务开启情况
tcp6 0 0 :::80 :::* LISTEN 53360/httpd
[root@server1 ~]# echo "Wang Kang Wen" > /var/www/html/index.html #制作网页
3、中间防火墙操作
[root@server2 ~]# echo "net.ipv4.ip_forward=1" > /etc/sysctl.conf #开启路由功能
[root@server2 ~]# sysctl -p
net.ipv4.ip_forward = 1
[root@server2 ~]# route -n #检查路由
[root@server2 ~]# iptables -F #清除所有规则,或加 -t nat ,删除nat所有规则
[root@server2 ~]# iptables -n -L #检查所有规则,或加 -t nat ,查看nat所有规则
[root@server2 ~]# iptables -t nat -I POSTROUTING -s 192.168.100.0/24 -o ens36 -j SNAT --to-source 192.168.200.20 #源地址192.168.100.0/24网段匹配出站网卡ens36网卡192.168.200.20
[root@server2 ~]# iptables -t nat -L POSTROUTING #查看nat里POSTROUTING链所有规则
[root@server2 ~]# iptables -t nat -A PREROUTING -i ens36 -d 192.168.200.20 -p tcp --dport 80 -j DNAT --to-destination 192.168.100.10 #入站匹配ens36网卡192.168.200.20匹配tcp协议目的端口80
[root@server2 ~]# iptables -t nat -L #查看nat所有规则
4、外网验证
[root@server3 ~]# curl http://192.168.200.20
Wang Kang Wen
补充:
内网可ping通防火墙两张网卡
防火墙可ping通两边内网和外网
外网可ping通跟他同网段的
最后
以上就是敏感项链为你收集整理的shell—iptables防火墙项目配置(SNAT策略;apache)一、SNAT策略概述二、SNAT项目操作的全部内容,希望文章能够帮你解决shell—iptables防火墙项目配置(SNAT策略;apache)一、SNAT策略概述二、SNAT项目操作所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复