IPSec隧道协议学习(一)

前情回顾

  • 前面介绍的GRE隧道协议,可以字LAN之间通过Internet建立隧道,实现网络间资源共享,但是GRE隧道协议不能实现加密功能,传输的数据不受加密保护,为了实现在隧道间传输数据包收到加密保护,需要使用IPSec隧道协议

什么是LAN

在这里插入图片描述

VPN提供的安全服务有哪些方面

  • 机密性
  • 完整性(即传输的数据不被修改)
  • 验证服务

VPN可以在哪些层上实现

  • 链路层,例如:点对点隧道协议(PPTP)
  • 二层转发,例如:二层转发协议(L2FP)、二层隧道协议(L2TP)
  • 网络层,例如:IP安全协议(IPSec)
  • 传输层,例如:安全套接字协议(SSL)

IPSec隧道协议

简介

  • 一种开放标准的安全框架结构
  • 基于AH、ESP等安全协议的基础上网络层隧道协议

在这里插入图片描述

使用特性

  • 在两台设备之间开始传递数据之前,他们之间通过协商,建立安全联盟(SA)搭建传递数据的安全通道,采用的协议方法可以是手工配置或者采用标准的IKE(Internet Key Exchange)协议方式

IPsec中的两个安全协议

  • 鉴别首部AH协议,提供源点身份鉴别和数据完整性检查,但是不提供保密
  • ESP除了提供AH那两种特性外海提供了保密功能

常用术语
对等体:参与Ipsece的设备亦或者其他设备,例如网关路由器、计算机
安全联盟
安全参数索引
安全联盟生命周期
交换集
加密映射条目

IPSec连接过程

IPSec启动

  • 一个对等体向两一个对等体发送需要保护的数据流量时,则IPSec进程自动启动,也可以通过手动启动

建立管理连接(IKE SA)

  • 启动IPSec进程后,首要做的事情就是建立IKE安全联盟,即建立管理连接,在这个阶段完成的主要任务如下:
策略协商
  • 确认采用什么样的加密方法(AES-256,AES-192等等),采用 什么样的完整性检查方法(SHA1、MD5),采用什么样的验证方法(KerberosV5、证书或预共享秘钥),采用什么样的创建秘钥方法(DH Group14、DH Group2等)
验证身份
交换参数并创建管理秘钥
  • IKE的一个主要特征就是不在网络上传递秘钥,只在网络传递创建秘钥需要的相关参数,然后由通信双方计算机依据交换的相关参数分别产生相同管理秘钥,管理秘钥主要用于对管理连接中交换的数据加密和解密。

建立数据连接(IPSec SA)

  • 完成IKE安全联盟建立之后,可以创建IPSec数据连接,在这个阶段主要任务:
策略协商
  • 去顶IpSec采用什么安全协议(AH、ESP等)、完整性与验证方法采用什么样的散列方法(MD5、SHA1等),采用什么样的加密方法(AES-256,AES-192等等)
创建会话秘钥
将SA、秘钥以及安全参数索引SPI应用于驱动程序
  • SPI是每对SA的标志符、每对SA有唯一的SPI值

传输数据

IPSec配置

  • IPSec配置是为了建立IPSec安全联盟

两种方式

  • 手工配置IPSec安全联盟,手工配置的不需要IKE介入,加密秘钥由管理员手工设置,但是需要指定更多的参数,安全性低
  • 通过IKE协商创建配置IPSec安全联盟,这里面的加密秘钥是由IKE产生,但是需要对IKE参数进行配置,加密秘钥可以定期自动协商更新,安全性较高

IPSec配置过程中主要有以下任务

  • 创建加密访问列表
  • 定义变换集
  • 创建加密映射条目
  • 将加密映射条目应用到接口上
  • 配置默认生命周期
  • 监视和维护IPSec

下次再记录配置的过程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/54726.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GitLab发送邮件功能详解:如何配置自动化?

GitLab发送邮件的设置指南?怎么优化GitLab发送邮件? GitLab作为一个强大的代码管理平台,不仅提供了代码托管、CI/CD等功能,还集成了发送邮件的功能,使得开发团队能够及时获取项目动态。AokSend将详细介绍如何配置GitL…

代码随想录 -- 回溯 -- 非递减子序列

491. 非递减子序列 - 力扣(LeetCode) 思路:重点是去重 收集结果:每次进入递归先判断path中的元素数量,如果大于1了,就将path收集到result中。 递归参数:nums,index,pa…

2024 go-zero社交项目实战

背景 一位商业大亨,他非常看好国内的社交产品赛道,想要造一款属于的社交产品,于是他找到了负责软件研发的小明。 小明跟张三一拍即合,小明决定跟张三大干一番。 社交产品MVP版本需求 MVP指:Minimum Viable Product&…

职场能力强的人都在做什么---今日头条

【职场里,能力强的人都在做哪些事... - 今日头条】https://m.toutiao.com/is/ikn6kt9q/ 知识雷达 2024-09-21 16:33 目录 职场里,能力强的人都在做哪些事呢? 1、复盘; 2、多角度思考;3、记录信息; 4、永远积极主动;5、主动获取信息差; 6、明确人和人的关系;7、…

【Altium Designer程序开发】BGA芯片自动扇出

BGA自动扇出功能支持将BGA器件从4个方向上扇出,里面有无空白区域均可支持,执行速度非常快,通常在秒级的时间内即可处理完成,程序可以通过以下几种方式启动。 ➡️支持从菜单栏启动 ➡️支持从工具栏启动 ➡️支持从服务器面板启动…

Go weak包前瞻:弱指针为内存管理带来新选择

在介绍Go 1.23引入的unique包的《Go unique包:突破字符串局限的通用值Interning技术实现》一文中,我们知道了unique包底层是基于internal/weak包实现的,internal/weak是一个弱指针功能的Go实现。所谓弱指针(Weak Pointer,也称为弱…

HarmonyOS鸿蒙开发实战(5.0)自定义路由栈管理

鸿蒙HarmonyOS NEXT开发实战往期文章必看(持续更新......) HarmonyOS NEXT应用开发性能实践总结 HarmonyOS NEXT应用开发案例实践总结合集 最新版!“非常详细的” 鸿蒙HarmonyOS Next应用开发学习路线!(从零基础入门…

真实数据,告诉你3S相关专业本硕毕业生就业去向

本期推文将基于2015届-2023届3S相关专业毕业生(包括本硕博所有毕业生)的生源地、性别分布、行业岗位等数据进行分析,为各位同学提供一些参考,希望可以对各位同学的职业规划与有一定的帮助。 GIS开发资料分享https://www.wjx.cn/v…

10.Lab Nine —— file system-上

首先切换分支到fs git checkout fs make clean 预备知识 mkfs程序创建xv6文件系统磁盘映像,并确定文件系统的总块数,这个大小在kernel/param.h中的FSSIZE写明 // kernel/params.h #define FSSIZE 200000 // size of file system in blocks Make…

Redisson分布式锁的概念和使用

Redisson分布式锁的概念和使用 一 简介1.1 什么是分布式锁?1.2 Redisson分布式锁的原理1.3 Redisson分布式锁的优势1.4 Redisson分布式锁的应用场景 二 案例2.1 锁竞争案例2.2 看门狗案例2.3 参考文章 前言 这是我在这个网站整理的笔记,有错误的地方请指出&#xff…

生活英语口语柯桥学英语“再确认一下“ 说成 “double confirm“?这是错误的!

在追求英语表达的过程中,我们常常会遇到一些看似合理实则错误的表达习惯。今天,我们就来聊聊一个常见的误区——“再确认一下”被误译为“double confirm”。 “再次确认”不是double confirm 首先,我们需要明确,“double confi…

2.1 HuggingFists系统架构(二)

部署架构 上图为HuggingFists的部署架构。从架构图可知,HuggingFists主要分为服务器(Server)、计算节点(Node)以及数据库(Storage)三部分。这三部分可以分别部署在不同的机器上,以满足系统的性能需求。为部署方便,HuggingFists社区版将这三部…

YOLOv9改进,YOLOv9主干网络替换为GhostNetV2(华为提出的轻量化架构)

摘要 摘要:轻量级卷积神经网络(CNN)专为移动设备上的应用而设计,具有更快的推理速度。卷积操作只能在窗口区域内捕捉局部信息,这限制了性能的进一步提升。将自注意力引入卷积可以很好地捕捉全局信息,但会极大地拖累实际速度。本文提出了一种硬件友好的注意力机制(称为 D…

前端文件上传全过程

特别说明:ui框架使用的是蚂蚁的antd 这里主要是学习前端上传接口的传递参数包括前端上传之前对于代码的整理 一、第一步将前端页面画出来 源代码: /** 费用管理 - IT费用管理 - 费用数据上传 */ import { useState } from "react"; import {…

Prometheus篇之利用promtool工具校验配置正确性

promtool工具 promtool是Prometheus的一个命令行工具,它提供了一些功能来帮助用户进行Prometheus配置文件(如prometheus.yml)的检查、规则检查和调试。 解释 promtool check config: 验证Prometheus配置文件的语法和设置。 promtool命令&…

【最基础最直观的排序 —— 选择排序算法】

最基础最直观的排序 —— 选择排序算法 选择排序算法是一种简单直观的排序算法。其基本思想是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后,再从剩余未排序元素中继续寻找最小&a…

WebPage-Bootstrap框架(container类,container-fluid类,栅格系统)

1.Bootstrap Bootstrap为页面内容和栅格系统包裹了一个.container容器,框架预先定义类 1.1container类 响应式布局容器的宽度 手机-小于768px 宽度设置100%; 平板-大于等于768px 设置宽度为750px 桌面显示器-大于等于992px 设置宽度 970px 大屏幕显…

【Bug解决】Nacos启动成功,但却无法访问(提示:无法访问此网站,192.168.10.88的响应时间过长)

情形如下:第一次启动运行一些正常,非正常关闭虚拟机,第二次启动虚拟机查看容器状态如下: docker nacos容器一切正常启动,但是就是无法访问web控制面板,访问无法连接。 首先:执行命令查看日志 …

ClickHouse 与 Quickwit 集成实现高效查询

1. 概述 在当今大数据分析领域,ClickHouse 作为一款高性能的列式数据库,以其出色的查询速度和对大规模数据的处理能力,广泛应用于在线分析处理 (OLAP) 场景。ClickHouse 的列式存储和并行计算能力使得它在处理结构化数据查询时极具优势&…

初探shell与bash使用指南

文章目录 一、shell二、bash第一步、新建脚本第二步、添加权限第三步、执行bash脚本 在日常开发中,经常使用到Linux服务器相关知识,输入命令获取想要的结果,本篇介绍shell 与 bash的相关知识。 一、shell 是命令行解释器,接收用户…