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

网络安全-安全策略初认识

文章目录

  • 前言
  • 理论介绍
    • 1. 安全策略
      • 1.1 定义:
      • 1.2 关键术语:
    • 2. 防火墙状态监测
  • 实战
    • 步骤1:实验环境搭建
    • 步骤2:配置实现
  • 总结
    • 1. 默认安全策略
    • 2. 自定义安全策略
    • 3. 防火墙状态会话表

前言

who:本文主要写给入门防火墙的技术爱好者。

what:本文介绍安全策略的基本概念和关键术语、防火墙状态监测、实战、总结等。

when:文档创建时间-2024年8月21日

where:作者-Evelynne Alpha 版本-v1

why:期望读者从文档中获得理论知识,并体验实验。




理论介绍

1. 安全策略

1.1 定义:

防火墙安全策略是在防火墙中定义的一组规则,用于控制进出网络的数据包流动。这些策略基于各种条件来决定数据包是否被允许通过防火墙,从而达到保护网络免受未授权访问和潜在威胁的目的。

img



1.2 关键术语:

1.规则匹配条件:安全策略包含一系列匹配条件,例如源安全区域和目的安全区域、源和目标IP地址、端口号、协议类型、应用类型、用户身份和时间范围。数据包必须满足所有指定的条件才能与策略匹配。


2.策略动作:一旦数据包与某条安全策略匹配,防火墙将执行该策略定义的动作,通常是允许(permit)或拒绝(deny)。允许意味着数据包将被转发,而拒绝则意味着数据包会被丢弃。


3.安全配置文件:网络安全设备或软件中用于定义和实施特定安全策略的设置集合。这些配置文件可以帮助组织控制网络流量、保护数据、防止恶意软件传播以及遵守法规要求。

在这里插入图片描述





2. 防火墙状态监测

防火墙会话表(Session Table)是网络防火墙用来跟踪和控制通过网络接口的数据流的机制。每个通过防火墙的连接或会话都会被记录在会话表中,这有助于防火墙执行其安全策略。

防火墙的基础知识(会话表)-CSDN博客






实战

步骤1:实验环境搭建

实验环境:华为eNSP网络模拟器

  1. 添加设备,搭建拓扑

    • 添加一台防火墙、两台交换机、一台Client1、一台Server1。

    • Client1连接 Trust 区域,Server1连接 Untrust 区域。

      在这里插入图片描述

  2. 实验目的

    • 理解防火墙默认安全策略。

    • 理解防火墙安全策略的流量管控。

    • 理解防火墙监测状态会话表。

步骤2:配置实现

  1. PC配置

    • PC1配置IP地址:192.168.1.1/24
    • 设置默认网关为防火墙相应的接口地址。
  2. 交换机配置

    • 禁用生成树协议STP。
    stp disable
    
  3. 防火墙配置

    • 登录防火墙设备。默认用户名admin,默认密码Admin@123
    • 配置接口IP地址:
    system-view
    sysname FW2
    interface GigabitEthernet 1/0/1
    ip address 192.168.1.254 24
    quitinterface GigabitEthernet 1/0/2
    ip address 192.168.2.254 24
    quit
    
    • 配置安全区域。
    firewall zone trust
    add interface GigabitEthernet1/0/1
    quitfirewall zone untrust
    add interface GigabitEthernet1/0/2
    quit
    
    • 配置安全策略
    interface GigabitEthernet1/0/1
    service-manage all permit
    quitinterface GigabitEthernet1/0/2
    service-manage ping permit
    quit
    
    security-policy
    rule name t_2_unt
    source-zone trust
    destination-zone untrust
    source-address 192.168.1.0 24
    destination-address 192.168.2.0 24
    action permit
    quit
    

    4.Server1配置

    • Server配置IP地址:192.168.2.1/24
    • 设置默认网关为防火墙相应的接口地址。
    • 开启http服务。

    5.网络测试

    • Client1客户端 访问Server1服务器的http服务。
    • 查看FW2防火墙的会话状态表。
    • 用Wireshark抓包。





总结

1. 默认安全策略

华为防火墙默认安全策略是拒绝所有流量。

display security-policy rule all

在这里插入图片描述

但是,可以修改。这个可以用于业务没上线之前,没做安全策略之前,测试网络互通。 通俗的说,这个时候防火墙相当于路由器的功能了。

security-policy
default action permit

在这里插入图片描述

2. 自定义安全策略

在FW2防火墙上做如下配置

security-policy
rule name t_2_unt
source-zone trust
destination-zone untrust
source-address 192.168.1.0 24
destination-address 192.168.2.0 24
action permit
quit

在这里插入图片描述

3. 防火墙状态会话表

Server1服务器不能主动访问Client1客户端。在这里插入图片描述

client1客户端访问Server1服务器的http服务,然后立马回到FW2防火墙上查看状态会话表。

display firewall session table 

在这里插入图片描述

抓包结果:
在这里插入图片描述

SYN, ACK, FIN: 这些是TCP控制位,表示不同的TCP连接状态:

  • SYN: 同步序列编号,用于建立连接。
  • ACK: 确认应答,表示接收到的数据包已被确认。
  • FIN: 结束连接,用于关闭连接。

Client1->Server1: 创建会话表

在这里插入图片描述

Server1->Client1: 命中会话表

在这里插入图片描述

注意:防火墙会话表中的条目会在一定时间内自动过期。目的是为了控制流量,有效地管理和保护网络通信。

在本文中做的安全策略配置可以使untrust安全区域主动访问trust安全区域不会建立会话表,但当trust安全区域主动访问untrust安全区域的时候,才会建立会话表。

相关文章:

网络安全-安全策略初认识

文章目录 前言理论介绍1. 安全策略1.1 定义:1.2 关键术语: 2. 防火墙状态监测 实战步骤1:实验环境搭建步骤2:配置实现 总结1. 默认安全策略2. 自定义安全策略3. 防火墙状态会话表 前言 who:本文主要写给入门防火墙的技…...

python import相对导入与绝对导入

文章目录 相对导入与绝对导入绝对导入相对导入何时使用相对导入何时使用绝对导入示例 相对导入与绝对导入 在Python中,from .file_manager import SomeFunction 和 from file_manager import SomeFunction 两种导入方式看似相似,但在模块寻找机制上存在…...

深入理解 Go 语言原子内存操作

原子内存操作提供了实现其他同步原语所需的低级基础。一般来说,你可以用互斥体和通道替换并发算法的所有原子操作。然而,它们是有趣且有时令人困惑的结构,应该深入了解它们是如何工作的。如果你能够谨慎地使用它们,那么它们完全可以成为代码优化的好工具,而不会增加复杂性…...

PostgreSQL几个扩展可以帮助实现数据的分词和快速查询

在 PostgreSQL 数据库中,有几个扩展可以帮助实现数据的分词和快速查询,特别是在处理全文搜索和文本分析时。以下是几个常用的扩展: 1. pg_trgm pg_trgm(Trigram)扩展是 PostgreSQL 中的一个强大的工具,它可以通过计算字符串之间的相似度来实现快速文本搜索。它支持基于…...

C盘满了怎么办?教你清理C盘的20个大招,值得收藏备用

C盘满了怎么办?教你清理C盘的20个大招,值得收藏备用 今天给大家介绍20种C盘清理的方法,下次遇到C盘满了红了就知道怎么做了,喜欢请点赞收藏关注点评。 清理更新缓存 清理微信缓存 查找大文件清理或者迁移 磁盘缓存清理 系统还…...

原生js实现下滑到当前模块进度条填充

<div style"height: 1500px;"></div> <div class"progress-container"><div class"progress-bar" data-progress"90%"><p class"progress-text">Google Ads在Google搜索引擎上覆盖超过90%的互…...

显示弹出式窗口的方法

文章目录 1. 概念介绍2. 使用方法3. 示例代码 我们在上一章回中介绍了Sliver综合示例相关的内容&#xff0c;本章回中将介绍PopupMenuButton组件.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 概念介绍 我们在本章回中介绍的PopupMenuButton组件位于AppBar右侧&#xf…...

Java-什么是缓存线程池?

什么是缓存线程池? 缓存线程池 (CachedThreadPool) 是一种特殊的线程池,它能够动态地调整线程的数量,以适应任 务的需求。这种线程池非常适合处理大量短暂的任务,因为它会根据任务的数量自动增加或减少线 程的数量。 缓存线程池的特点: 线程数量动态调整:缓存线程池…...

esbuild中的Binary Loader:处理二进制文件

在前端或Node.js项目中&#xff0c;有时需要处理二进制文件&#xff0c;如图片、音频、视频或其他非文本资源。esbuild提供了一款名为Binary Loader的插件&#xff0c;它能够在构建时将二进制文件加载为二进制缓冲区&#xff0c;并使用Base64编码将其嵌入到打包文件中。在运行时…...

深度好文:从《黑神话:悟空》看未来游戏趋势:高互动性、个性化与全球化

引言 在数字时代的浪潮中&#xff0c;游戏产业以其独特的魅力和无限的可能性&#xff0c;成为了全球娱乐文化的重要组成部分。随着科技的飞速发展&#xff0c;特别是高性能计算和人工智能技术的突破&#xff0c;游戏的世界变得越来越真实、细腻且富有深度。而在这股技术洪流中…...

【中项第三版】系统集成项目管理工程师 | 第 12 章 执行过程组

前言 本章属于10大管理的内容&#xff0c;上午题预计会考8-10分&#xff0c;下午案例分析也会进行考查。学习要以教材为主。 目录 12.1 指导与管理项目工作 12.1.1 主要输入 12.1.2 主要输出 12.2 管理项目知识 12.2.1 主要输入 12.2.2 主要输出 12.3 管理质量 12.3.…...

C语言自动生成宏定义枚举类型和字符串

#include <stdio.h>// 定义错误枚举 #define ERROR_LIST(e) \e(SUCCESS) \e(FAILURE) \e(NOT_FOUND) \e(TIMEOUT)// 使用宏生成枚举 #define GENERATE_ENUM(ENUM) ENUM, typedef enum {ERROR_LIST(GENERATE_ENUM) } ErrorCode;// 使用宏生成字符串数组…...

C#单例模式

&#xfeff;using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace _3._3._6_单例模式 {public class Singleton{private static Singleton s_instance;private int _state;private Singleton(int …...

10-使用sentinel流控

本文介绍sentinel的直接流控的使用。 0、环境 jdk 1.8sentinel 1.8.2springboot 2.4.2 1、sentinel环境搭建 从官方发布的网站上下载: sentinel Jar&#xff0c;下载对应版本。 下载完成后&#xff0c;进入刚才下载的Jar文件所在的目录&#xff0c;执行如下命令&#xff1a…...

redis AOF机制

在redis运行期间&#xff0c;不断将redis执行的写命令写到文件中&#xff0c;redis重启之后&#xff0c;只要将这些命令重复执行一遍就可以恢复数据。因为AOF只是将少量的写命令写入AOF文件中&#xff0c;因此其执行效率高于RDB&#xff0c;开启AOF即使Redis发生故障&#xff0…...

Day 21代码|随想录| 二叉树完结撒花,今日刷题669.修剪二叉搜索树、108.将有序数组转换为二叉搜索树、538.吧二叉搜索树转换为累加树

提示&#xff1a;DDU&#xff0c;供自己复习使用。欢迎大家前来讨论~ 文章目录 二叉树 Part06二、题目题目一&#xff1a;669.修剪二叉搜索树解题思路&#xff1a;递归法迭代法&#xff1a; 题目二&#xff1a; 108.将有序数组转换为二叉搜索树解题思路递归法&#xff1a;迭代…...

cmake教程一

1. Start 1.1 构建简单工程 cmake_minimum_required(VERSION 3.0) project(Step1) add_executable(Step1 main.cpp)设置cmake最低版本要求设置工程名字设置工程生成可执行程序 2. 声明 C Standard set(CMAKE_CXX_STANDARD 11) set(CMAKE_CXX_STANDARD_REQUIRED True)如果我…...

3D场景标注标签信息,three.js CSS 2D渲染器CSS2DRenderer、CSS 3D渲染器CSS3DRenderer(结合react)

如果你想用HTML元素作为标签标注三维场景中模型信息&#xff0c;需要考虑定位的问题。比如一个模型&#xff0c;在代码中你可以知道它的局部坐标或世界坐标xyz&#xff0c;但是你并不知道渲染后在canvas画布上位置&#xff0c;距离web页面顶部top和左侧的像素px值。自己写代码把…...

C++参悟-单例模式

单例模式 一、概述1. 特点2. 实现方式3. 应用场景 二、实现代码1. 静态局部变量的懒汉单例2. 加锁的懒汉式单例3. 使用 C11 中的 std::call_one 的懒汉单例4. 饿汉式单例 一、概述 这里记录一下单例模式的最常用使用&#xff0c;单例模式&#xff08;Single Pattern&#xff0…...

【题解】—— LeetCode一周小结32

&#x1f31f;欢迎来到 我的博客 —— 探索技术的无限可能&#xff01; &#x1f31f;博客的简介&#xff08;文章目录&#xff09; 【题解】—— 每日一道题目栏 上接&#xff1a;【题解】—— LeetCode一周小结31 5.不含连续1的非负整数 题目链接&#xff1a;600. 不含连续…...

docker详细操作--未完待续

docker介绍 docker官网: Docker&#xff1a;加速容器应用程序开发 harbor官网&#xff1a;Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台&#xff0c;用于将应用程序及其依赖项&#xff08;如库、运行时环…...

电脑插入多块移动硬盘后经常出现卡顿和蓝屏

当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时&#xff0c;可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案&#xff1a; 1. 检查电源供电问题 问题原因&#xff1a;多块移动硬盘同时运行可能导致USB接口供电不足&#x…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成

厌倦手动写WordPress文章&#xff1f;AI自动生成&#xff0c;效率提升10倍&#xff01; 支持多语言、自动配图、定时发布&#xff0c;让内容创作更轻松&#xff01; AI内容生成 → 不想每天写文章&#xff1f;AI一键生成高质量内容&#xff01;多语言支持 → 跨境电商必备&am…...

SpringTask-03.入门案例

一.入门案例 启动类&#xff1a; package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在 GPU 上对图像执行 均值漂移滤波&#xff08;Mean Shift Filtering&#xff09;&#xff0c;用于图像分割或平滑处理。 该函数将输入图像中的…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台

🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...

用鸿蒙HarmonyOS5实现中国象棋小游戏的过程

下面是一个基于鸿蒙OS (HarmonyOS) 的中国象棋小游戏的实现代码。这个实现使用Java语言和鸿蒙的Ability框架。 1. 项目结构 /src/main/java/com/example/chinesechess/├── MainAbilitySlice.java // 主界面逻辑├── ChessView.java // 游戏视图和逻辑├──…...

ubuntu22.04 安装docker 和docker-compose

首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...

TCP/IP 网络编程 | 服务端 客户端的封装

设计模式 文章目录 设计模式一、socket.h 接口&#xff08;interface&#xff09;二、socket.cpp 实现&#xff08;implementation&#xff09;三、server.cpp 使用封装&#xff08;main 函数&#xff09;四、client.cpp 使用封装&#xff08;main 函数&#xff09;五、退出方法…...

js 设置3秒后执行

如何在JavaScript中延迟3秒执行操作 在JavaScript中&#xff0c;要设置一个操作在指定延迟后&#xff08;例如3秒&#xff09;执行&#xff0c;可以使用 setTimeout 函数。setTimeout 是JavaScript的核心计时器方法&#xff0c;它接受两个参数&#xff1a; 要执行的函数&…...