Linux系统iptables防火墙实验拓补

实验拓补

网络规划

  • 内部PC1位于内网区域,地址段为: 192.168.1.0/24,pc1地址为:192.168.1.1/24,网关地址为:192.168.1.254/24

  • 服务器S1位于服务器区域,地址段为: 192.168.2.0/24,pc1地址为:192.168.2.1/24,网关地址为:192.168.2.254/24

  • PC2位于互联网区域,模拟外部互联网,地址段为:10.0.0.0/8,pc2地址为:10.0.0.1/8

  • Linux防火墙的三块网卡为别连接不同的网络区域,地址分别为 :ens33 192.168.1.254/24;ens34 10.0.0.100/8;ens35 192.168.2.254/24

实验要求

  • 内部网络中的pc1采用SNAT访问外部互联网,但是无法ping到内部网关。

  • 内部网络服务器s1通过DNAT发布服务到互联网。

  • 互联网主机pc2能够访问DMZ区域的服务器,但是不能够进行ping和ssh连接。

步骤:

1、构建主机客户端pc1(内网)、服务器端 s1 、防火墙iptables、外部网络pc2 模拟连接。

bash 复制代码
#1以Rocky8为例,创建四个虚拟机分别作为pc1(内网)、pc2(外网)、服务器service1、防火墙iptables

#2 systemctl stop NetworkManager &分别关闭网络服务

#3systemctl disable --now firewalld &分别关闭防火墙

#4 setenforce 0 &去除干扰因素

#5配置pc1 IP和网关  ifconfig ens33 192.168.1.1/24   
                   route add -net 0/0 gw 192.168.1.254

#6配置pc2 IP和网关  ifconfig ens34 10.0.0.1/8
                   route add -net 0/0 gw 10.0.0.100

#7配置service1 IP和网关 ifconfig ens37 192.168.2.1/24
                       route add -net 0/0 gw 192.168.2.254

#8配置防火墙iptables   vim /etc/sysctl.conf → net.ipv4.ip_forward = 1
  配置防火墙三个端口(网络适配器) vmnet1 vmnet2 vmnet3(分别连向pc1、pc2、service1的网卡) 

  ens33(vmnet1)ifconfig ens33 192.168.1.254/24(连接内网pc1)
  ens34(vmnet2)ifconfig ens34 10.0.0.100/8(连接外网pc2)
  ens37(vmnet3)ifconfig ens37 192.168.2.254/24(连接服务器service1)

#9测试是否通信 ping ....

#1配置pcl1

#2配置pc2

#3配置service1

#4配置防火墙iptables

#4 测试连通性

pc1 ping pc2、service1正常

pc2 ping pc1、service1正常

service1 ping pc1、pc2正常

2、内部网络中的pc1采用SNAT访问外部互联网,但是无法ping到内部网关。

bash 复制代码
#1 防火墙设置路由条目 iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
                    
                    iptables -t filter -A INPUT -p icmp --icmp-type 8 -j DROP




#2 内网pc1 测试采用SNAT访问外网且不能ping到内部网关 ping 10.0.0.1    ping 192.168.1.254

3、 内部网络服务器s1通过DNAT发布服务到互联网。

bash 复制代码
#1 防火墙设置路由条目  iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.2.1:80

#2 pc2(外部网络)测试 curl 10.0.0.100

4、 互联网主机pc2能够访问DMZ区域的服务器,但是不能够进行ping和ssh连接。

bash 复制代码
#1 防火墙设置规则 iptables -A INPUT -p icmp --icmp-type echo-request -s 10.0.0.1 -j DROP
                 iptables -A INUPUT -p tcp -s 10.0.0.1 --dport 22 -j DROP

 
#2测试pc2 ping 10.0.0.100
 
         ssh root@10.0.0.100
相关推荐
dog2506 分钟前
长肥管道下的 CUBIC
网络
Soneswy7 分钟前
Linux系统篇--用户切换与文件权限
linux·服务器
Ruiery10 分钟前
Linux 6.6内核内存管理深度解析(三·补):页表项(PTE)结构与地址翻译
linux·运维·服务器
五块钱的方便面14 分钟前
ubuntu下networkmanager不让管理解决办法
linux·运维·ubuntu
云飞云共享云桌面14 分钟前
苏州半导体工厂研发部门多个SolidWorks 如何共享服务器来进行研发设计
运维·服务器·3d·自动化·制造
呉師傅15 分钟前
Win7剪切文件变成复制文件如何修改【资源管理器异常类故障】
运维·网络·windows·电脑
honsor18 分钟前
机房动环实战:H-THDRJ45 双网口温湿度变送器 Modbus RTU RS485 冗余组网方案
运维·服务器·网络
快乐的韭菜根根26 分钟前
Slurm 指定 GPU 卡:`File=/dev/nvidiaX` 映射的坑与修复
java·服务器·网络
叼烟扛炮27 分钟前
Linux 学习笔记(三十四):线程同步——条件变量与生产消费者模型
linux·运维·服务器·笔记·学习·1024程序员节
隐擎fox31 分钟前
解密 HTTP/2 帧时序与流控指纹:Akamai H2 指纹逆向检测与协议重塑工程实战
网络·网络协议·tcp/ip·http