当前位置: 首页 > news >正文

Linux防火墙实战演练

文章目录

  • 一、实验内容
          • 网络规划
          • 实验要求
  • 二、操作步骤
    • 1.网络规划
    • 2.防火墙配置
      • 2.1配置防火墙的各个网卡ip并禁用自身的firewalld和selinux
      • 2.2打开firewall路由转发
      • 2.3配置内网环境
      • 2.4配置服务器
      • 2.5配置外网
    • 3.内部网络中的pc1采用SNAT访问外部互联网,但是无法ping到内部网关
    • 4.内部网络服务器s1通过DNAT发布服务到互联网
    • 5.互联网主机pc2能够访问S1服务器,但是不能够进行ping和ssh连接
  • `提示:防火墙的参数多,该实验一定要反复练习目的是会应用在各个场景下:`


一、实验内容

在这里插入图片描述

网络规划
  • 内部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.网络规划

在这里插入图片描述
说明:内网:
ip地址:192.168.1.1 ; 网卡连接 Vmnet1 ; 网卡:ens224; 要连接的防火墙网关为192.168.1.254
外网:
ip地址:10.0.0.1 ; 网卡连接 Vmnet3 ; 网卡:ens161; 要连接的防火墙网关为10.0.0.100
服务器:
ip地址:192.168.2.1 ; 网卡连接 Vmnet2 ; 网卡:ens256; 要连接的防火墙网关为192.168.2.254

防火墙的虚拟机配置:
在这里插入图片描述
还要保证在同一局域网下:
点击更改设置,添加后去掉图中方框中的勾选项(三个都需要去掉)
在这里插入图片描述

2.防火墙配置

2.1配置防火墙的各个网卡ip并禁用自身的firewalld和selinux

[root@SF1 ~] systemctl stop firewalld.service
[root@SF1 ~] setenforce 0
[root@SF1 ~] ifconfig ens224 192.168.1.254/24
[root@SF1 ~] ifconfig ens161 10.0.0.100/8
[root@SF1 ~] ifconfig ens256 192.168.2.254

使用ip a查看配置
在这里插入图片描述

2.2打开firewall路由转发

编辑路由文件

vim /etc/sysctl.conf

在这里插入图片描述
查看路由功能

sysctl -p

在这里插入图片描述

2.3配置内网环境

配置ip地址并禁用firewalld和selinux

[root@PC1 ~] systemctl stop firewalld.service
[root@PC1 ~] setenforce 0
[root@PC1 ~] ifconfig ens160 192.168.1.1/24

配置网关

[root@PC1 ~] route add -net 0/0 gw 192.168.1.254
[root@PC1 ~] route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 ens160
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 ens160
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0

永久配置:

vim /etc/sysconfig/network-scripts/ifcfg-ens224
在这里插入图片描述

查看地址和网关
在这里插入图片描述
下载nginx,并开通服务
我采用的是无网下载,之前的博客有,可以参考下

[root@S1 yum.repos.d] yum -y install nginx
[root@S1 yum.repos.d] systemctl restart nginx

2.4配置服务器

和配置内网步骤一样,完成后同样启动nginx服务

在这里插入图片描述
在这里插入图片描述

2.5配置外网

操作步骤还是和上面一样,只是不用配置网关,也不用管nginx服务

在这里插入图片描述
在这里插入图片描述

环境检测:
使用ping
在这里插入图片描述

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

思考:内网可以联通防火墙,外网可以联通防火墙,所以内网可以转换协议连接到外网所对应的防火墙的网关

iptables -t nat -A POSTROUTING -s 192.168.1.1/24  -o ens161 -j MASQUERADE

​**-t nat
操作 ​
nat 表​(Network Address Translation),专门处理地址转换规则。
-A POSTROUTING
-A:追加规则到指定链(POSTROUTING)。
POSTROUTING 链:在数据包 ​离开本机前​ 修改源地址(路由决策之后)。
-s 192.168.1.0/24
-s:匹配 ​源 IP 地址。
192.168.1.0/24:表示内网网段(IP 范围 192.168.1.1 ~ 192.168.1.254)。
-o ens161
-o:匹配 ​出口网络接口​(数据包离开的网卡)。
ens34:通常是网关连接 ​外网​ 的接口(如公网网卡)。
-j MASQUERADE**​
-j:跳转到目标动作。
MASQUERADE:动态将内网设备的 ​源 IP​ 替换为 ens34 接口的 ​当前公网 IP。
给防火墙添加规则
在这里插入图片描述
检测:
在这里插入图片描述

iptables -A INPUT -s 192.168.1.1 -d 192.168.1.254 -j DROP

-A INPUT
-A:追加规则到指定链(INPUT 链)
INPUT 链:处理 ​进入本机的数据包​(目标地址是本机 IP)
​**-s 192.168.1.1
-s:匹配 ​源 IP 地址​
192.168.1.1:发送数据包的来源主机 IP
-d 192.168.1.254
-d:匹配 ​目标 IP 地址​
192.168.1.254:数据包要发送到的目标主机 IP(通常是本机或其他设备)
-j DROP**​
-j:跳转到目标动作
DROP:​直接丢弃数据包​(不发送任何响应,发送方会等待直到超时)

检测:
在这里插入图片描述

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

先检查nginx是否启动,如果没有启动的话会显示拒绝连接

echo ly_2505 >/usr/share/nginx/html/index.html
手写自定义内容

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.2.1:80

**-t nat**​
操作 ​**nat 表**​(Network Address Translation),专门处理地址转换规则。
​**-A PREROUTING**​
-A:追加规则到指定链(PREROUTING 链)
PREROUTING 链:在数据包 ​进入本机前​ 修改目的地址(路由决策之前)
​**-p tcp**​
匹配 ​TCP 协议​ 的数据包
​**--dport 80**​
匹配 ​目的端口 80​(HTTP 服务的标准端口)
​**-j DNAT**​
跳转到 ​DNAT​ 动作(Destination Network Address Translation)
​**--to-destination 192.168.2.1:80**​
将目的地址重写为 192.168.2.1,端口重写为 80

在这里插入图片描述
检测
在这里插入图片描述

5.互联网主机pc2能够访问S1服务器,但是不能够进行ping和ssh连接

在第二个要求中,已经实现了PC2可以通过访问网关来转发到S1服务器,所以这一步使其不能ping 10.0.0.100 和进行ssh连接

iptables -I INPUT -p tcp --dport 22 -j DROP
## ssh 的端口号是22,禁用掉22端口号iptables -A INPUT -s 10.0.0.1 -j DROP##不能与自己连接

检测:
在这里插入图片描述

提示:防火墙的参数多,该实验一定要反复练习目的是会应用在各个场景下:

相关文章:

  • 基于 PyTorch 的 VGG16 深度学习人脸识别检测系统的实现+ui界面
  • 机器学习的数学基础:线性模型
  • unix/linux,sudo,其高级使用
  • 在 Android 框架中,接口的可见性规则
  • Excel 透视表以及透视图应用(基础版)
  • 实验设计如何拯救我的 CEI VSR 28G 设计
  • Springboot——整合websocket并根据type区别处理
  • Git忽略规则.gitignore不生效解决
  • Dockerfile基础
  • 【Docker 从入门到实战全攻略(二):核心概念 + 命令详解 + 部署案例】
  • 【计算机网络】HTTPS
  • FTPS、HTTPS、SMTPS以及WebSockets over TLS的概念及其应用场景
  • JUC并发编程(二)Monitor/自旋/轻量级/锁膨胀/wait/notify/等待通知机制/锁消除
  • 结构型设计模式之Proxy(代理)
  • 基于VMD-LSTM融合方法的F10.7指数预报
  • 证券交易柜台系统解析与LinkCounter解决方案开发实践
  • 基于Axure+墨刀设计的电梯管理系统云台ERP的中保真原型图
  • Axure 下拉框联动
  • 如果安装并使用RustDesk
  • nt!CcInitializeCacheMap函数分析初始化Vacbs结构
  • 建站哪个网站比较好/东莞百度seo新网站快速排名
  • 用psd做的买书网站/竞价代运营公司
  • asp.net做网站/推广公司简介
  • net动态网站开发/seo学院培训班
  • 设计学习/英文seo是什么
  • 郑州网站建设培训班/seo的课谁讲的好