看了一次strongswan ipsec的设置.

2023-11-04

看了一次strongswan ipsec的设置.


这次的设置要求是:
Linux 中 strongwans与hillstone防火墙 stoneOS 建立ipsec连接.
network-network进行通信. 要求Linux可以同时与多台防火墙进行通信.


一 网络结构如下:
linux
地址 192.168.100.252 内网段为 10.0.1.0/24
防火墙1
地址 192.168.100.253 网网段为 10.0.2.0/24
防火墙1
地址 192.168.100.254 网网段为 10.0.3.0/24


二 设置
Linux端的设置:
Debian Linux 11 中运行 libstrongswan 5.9.1-1+deb11u3

apt-get install strongswan libcharon-extra-plugins
软件文档在 https://strongswan.org/

配置文件:
ipsec.conf

config setup

conn c1-c1
keyexchange=ikev1
#aggressive = yes
left=192.168.100.252
leftsubnet=10.0.1.0/24
rightsubnet=10.0.2.0/24
right=192.168.100.253
esp=aes256-sha256-modp1024
ike=aes256-sha256-modp1024
compress=no
rightauth=psk
leftauth=psk
auto=start

conn c2-c2
keyexchange=ikev1
aggressive = yes
left=192.168.100.252
leftsubnet=10.0.1.0/24
rightsubnet=10.0.3.0/24
rightid=@254
esp=aes256-sha256-modp1024
ike=aes256-sha256-modp1024
compress=no
rightauth=psk
leftauth=psk
auto=start

配置说明.
连接 c1-c1(防火墙1)
使用ikev1. main模式. IPsec连接IP为192.168.100.252. 这端的网段是 10.0.1/0/24.
对端的网段是 10.0.2.0/24. 连接的对端为192.168.100.253
二阶段提议 aes256-sha256-modp1024. 一阶段提议 aes256-sha256-modp1024
两端的认证方式都为 psk

连接 c2-c2(防火墙2)
与防火墙1的差别在于. 使用野蛮模式. 对端使用FQDN名字做认证. 非主动连接.

在ipsec.secrets 分别设置好两个对端的认证psk.

防火墙1的设置
ikev1
接口
主模式
静态IP
对端地址 192.168.100.252
本地id ipv4 192.168.100.253
对端id ipv4 192.168.100.252
p1提议 psk-sha256-aes256-g2
psk ****

高级
发起者
NAT-T no

ipsec
tunnel
10.0.2.0/24 10.0.1.0/24 Any
p2提议 esp-sha256-aes256-g2 无压缩

防火墙2的设置
主要差别在 野蛮模式. 主动发起连接
本端的类型使用FQDN .值为 254


三 其他信息:

  1. strongswan与hillstone stoneOS中的 DH group写法不同.
    以下是IPsec中DH(Diffie-Hellman)组的信息:
    DH Group 1:使用768位素数p,提供大约80位的安全强度。
    DH Group 2:使用1024位素数p,提供大约100位的安全强度。
    DH Group 5:使用1536位素数p,提供大约120位的安全强度。
    DH Group 14:使用2048位素数p,提供大约112位的安全强度。
    DH Group 15:使用3072位素数p,提供大约128位的安全强度。
    DH Group 16:使用4096位素数p,提供大约150位的安全强度。
    DH Group 19:使用256位素数p,提供大约128位的安全强度。
    DH Group 20:使用384位素数p,提供大约192位的安全强度。
    DH Group 21:使用521位素数p,提供大约256位的安全强度。

  2. 个人感觉ike版本方面. 如果可能尽量使用v2版.

  3. strongswan直接写ipsec.conf的配置方法已经过时. 可以考虑学习一下swanctl. 我这里主要是进行一下测试就没花太多时间.

  4. strongswan 5.x中 默认不开启 野蛮模式的psk认证方式. 原因是安全问题.

Q: Does strongSwan support IKEv1 Aggressive Mode?
A: Since version 5.0.0 the answer is yes. However, the strongSwan developers still recommend to avoid its use with pre-shared keys. This is due to a known weakness of the protocol. With Aggressive Mode, a hash of the pre-shared key is transmitted in clear-text.
i_dont_care_about_security_and_use_aggressive_mode_psk = yes


四 一些废话
这次的配置只是进行简单测试. 目前没有实际使用. 就算是复杂一次ipsec相关的知识吧.
linux中 ike部分的程序有很多. 记得上次我看的还是 racoon.这次发现主流使用的程序已经是 strongswan了.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

看了一次strongswan ipsec的设置. 的相关文章

  • Linux 上的基准测试程序

    对于一项任务 我们需要使用不同的优化和参数来对我们的实现进行基准测试 有没有一种可行的方法可以在Linux命令行 我知道时间 上使用不同的参数对小程序进行基准测试 从而为我提供CSV或类似内容的时间数据 输出可能类似于 Implementa
  • Python 脚本作为 Linux 服务/守护进程

    Hallo 我试图让 python 脚本作为服务 守护进程 在 ubuntu linux 上运行 网络上存在多种解决方案 例如 http pypi python org pypi python daemon http pypi python
  • 使用 plistBuddy 获取值数组

    var keychain access groups declare a val usr libexec PlistBuddy c Print var sample plist echo val echo val 0 Ouput Array
  • vagrant ssh -c 并在连接关闭后保持后台进程运行

    我正在编写一个脚本来启动和后台流浪机器内的进程 似乎每次脚本结束和 ssh 会话结束时 后台进程也会结束 这是我正在运行的命令 vagrant ssh c cd vagrant src nohup python hello py gt he
  • 嵌入式linux编写AT命令

    我在向 GSM 模块写入 AT 命令时遇到问题 当我使用 minicom b 115200 D dev ttySP0 term vt100 时它工作完美 但我不知道如何在 C 代码中做同样的事情 我没有收到任何错误 但模块对命令没有反应 有
  • linux命令中括号的用途是什么[重复]

    这个问题在这里已经有答案了 我在 Linux 终端中运行以下命令 谁能告诉我 Linux 终端中括号和以下命令的用途是什么 echo GET HTTP 1 0 echo 主机 www google com echo 数控 www googl
  • 为什么我的 Dockerfile CMD 不起作用?

    所以在我的 Dockerfile 的末尾我有这样的内容 WORKDIR home CMD django admin startproject whattt CMD bin bash 当我创建映像然后运行容器时 一切都按预期运行 没有错误 D
  • 使用 posix_spawn 启动进程

    我正在使用以下代码在 Linux 中启动新进程 pid t processID char argV 192 168 1 40 char 0 int status 1 status posix spawn processID home use
  • 捕获数据包后会发生什么?

    我一直在阅读关于网卡捕获数据包后会发生什么的内容 我读得越多 我就越困惑 首先 我读过传统上 在网卡捕获数据包后 它会被复制到内核空间中的一个内存块 然后复制到用户空间 供随后处理数据包数据的任何应用程序使用 然后我读到了 DMA 其中 N
  • 使用 inotify 的正确方法是什么?

    我想使用inotifyLinux 上的机制 我希望我的应用程序知道文件何时aaa被改变了 您能给我提供一个如何做到这一点的示例吗 文档 来自监视文件系统活动 inotify https developer ibm com tutorials
  • 配置:错误:无法运行C编译的程序

    我正在尝试使用 Debian Wheezy 操作系统在我的 Raspberry Pi 上安装不同的软件 当我运行尝试配置软件时 我尝试安装我得到此输出 checking for C compiler default output file
  • dlopen 或 dlclose 未调用信号处理程序

    我在随机时间内收到分段错误 我注册了信号 但发生分段错误时未调用信号处理程序 include
  • 从 php/linux 获取 pdf 的布局模式(横向或纵向)

    给定一个 PDF 如何使用 PHP lib 或 Linux 命令行工具获取 PDF 的布局模式 或相对宽度 高度 Using http www tecnick com public code cp dpage php aiocp dp tc
  • 错误:命令“c++”失败,退出状态为 1

    所以我尝试按照以下说明安装 Pyv8https andrewwilkinson wordpress com 2012 01 23 integrating python and javascript with pyv8 https andre
  • 在 Linux 上创建线程与进程的开销

    我试图回答在 python 中创建线程与进程有多少开销的问题 我修改了类似问题的代码 该问题基本上运行一个带有两个线程的函数 然后运行带有两个进程的相同函数并报告时间 import time sys NUM RANGE 100000000
  • 无需 root 访问权限即可安装 zsh? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 有可能 以及如何 我确实需要在几台具有 ssh 访问权限 但没有 root 访问权限 的远程计算机上使用此功能 下载 zsh wget O zsh t
  • 运行此处编译的 C 程序会导致在另一台服务器上找不到 GLIBC 库错误 - 是我的错还是他们的错?

    此处编译的 C 程序在我们的 Ubuntu 服务器上运行良好 但是当其他人尝试在他们的特定 Linux 服务器上运行它时 他们会收到以下错误 myprog install lib tls libc so 6 version GLIBC 2
  • 可以作为命令行参数传递多少数据?

    在 Linux 下生成进程时可以发送多少字节作为命令行参数 gahooa 推荐了一篇好文章http www in ulm de mascheck various argmax http www in ulm de mascheck vari
  • 提高mysql导入速度[关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 我有一个很大的数据库22GB 我曾经用过进行备份mysqldumpgzip 格式的命令 当我提取 gz 文件时 它会生成 sql文件的
  • 如何在文件夹中的 xml 文件中 grep 一个单词

    我知道我可以使用 grep 在这样的文件夹中的所有文件中查找单词 grep rn core 但我当前的目录有很多子目录 我只想搜索当前目录及其所有子目录中存在的所有 xml 文件 我怎样才能做到这一点 我试过这个 grep rn core

随机推荐

  • STM32应用开发实践教程:基于 RS-485 总线的多机通信应用开发

    5 1 1 任务分析 本任务要求设计一个基于 RS 485 总线的多机通信系统 系统中有两台设备 理论上最多可 接入 32 台设备 其中一台设备作为主机 连接 OLED 显示屏 另一台设备作为从机 连接温 湿度传感器 DHT11 与 LED
  • Centos 7安装部署PostgreSql 12

    安装 yum install https download postgresql org pub repos yum reporpms EL 8 x86 64 pgdg redhat repo latest noarch rpm yum i
  • 装饰器原理

    原理 原有函数 def fun 1 正常调用原有函数 fun 1 现有需要需要在原有函数基础上添加新功能 但是不改变原有函数法一 1 添加新函数 装饰一波 def fun 2 fun 1 嵌套函数 返回函数地址 fun 3 调用时才执行 d
  • Java数组全排列

    递归法 当数组元素重复时 会出现重复排列 public static void main String args int arr new int 1 2 3 4 5 6 7 8 9 f arr 0 static void f int arr
  • 聊聊Qt中的Widget调色板QPalette

    在实际的应用开发中 经常需要对某个窗体或某个控件的颜色外观 如背景色 前景色等进行设置 已达到界面美化的效果 Qt中的窗体或控件都是Widget类 Qt中提供的调色板QPalette类就是专门用于管理控件的外观显示 QPalette类相当于
  • bert模型蒸馏实战

    由于bert模型参数很大 在用到生产环境中推理效率难以满足要求 因此经常需要将模型进行压缩 常用的模型压缩的方法有剪枝 蒸馏和量化等方法 比较容易实现的方法为知识蒸馏 下面便介绍如何将bert模型进行蒸馏 一 知识蒸馏原理 模型蒸馏的目的是
  • 计算机的配件知识,组装一台电脑需要哪些配件 DIY装机必看的电脑硬件知识详解 (全文)...

    组装电脑是指用户可以按照自己的预算和用途来 在兼容的基础上 灵活搭配电脑硬件 又称为DIY组装电脑 DIY攒机等 由于灵活 高性价比 按需搭配等特性 是不少台式电脑主流方案之选 那么组装一台电脑需要哪些配件 下面 电脑爱好者 分享一下DIY
  • MinIO 对象存储(可以当作免费的图床)

    什么是Minlo MinIO与传统的存储和其他的对象存储不同的是 特征 一 快速入门 1 下载直接去官网 2 新建minio安装目录 执行如下命令 3 后台启动 4 查看状态 二 进行访问 并设置桶 1 访问 三 springboot进行实
  • Java中类数组,创建后使用set函数,报NullPointerException空指针异常

    最近从新学习数组发现了一些问题 先创建一个Person类 public class Person private String name private int age public Person String name int age t
  • 线程状态是五种对?还是六种对?

    五种 线程在一定条件下 状态会发生变化 线程一共有以下几种状态 1 新建状态 New 新创建了一个线程对象 2 就绪状态 Runnable 线程对象创建后 其他线程调用了该对象的start 方法 该状态的线程位于 可运行线程池 中 变得可运
  • 推荐系统系列——推荐系统简介

    目录 演化关系图 推荐系统简介 什么是推荐系统 为什么需要推荐系统 如何构建推荐系统 推荐系统的步骤 常用评测指标 召回与排序 召回层与排序层的特点 多路召回 使用Embedding做召回 A B测试 为什么需要A B测试 A B测试的流程
  • 基于神经回路的靶向治疗的未来

    以靶向大脑回路为原则的治疗方法 随着诸如经颅磁刺激 TMS 深部脑刺激 DBS 和聚焦超声 FUS 等脑刺激治疗的发展 逐渐引起了广泛关注 这些技术可以有效治疗不同的神经精神疾病 但治疗特定疾病取决于选择合适的治疗目标 在这里 我们提出了一
  • 删除type报ORA-02303错误

    drop type result type 时 报错ORA 02303 无法使用类型或表的相关性来删除或取代一个类型 drop type result type array 时报错 对象不存在 CREATE OR REPLACE TYPE
  • 练习敲代码速度

    2023年9月18日 周一晚上 今晚不想学习 但又不想玩游戏 于是找了一些练习敲代码的网站来玩玩 顺便练习一下敲代码的速度 目录 参考资料 个人推荐 第一个 第二个 第三个 参考资料 电脑打字慢 有哪些比较好的练打字软件 知乎 https
  • C#——Lambda 表达式

    C Lambda 表达式 Lambda 表达式 是采用以下任意一种形式的表达式 表达式 lambda 表达式为其主体 input parameters gt expression 语句 lambda 语句块作为其主体 input param
  • 分布式相关论文

    想从事分布式系统 计算 hadoop等方面 需要哪些基础 推荐哪些书籍 转自知乎 作者 廖君 链接 https www zhihu com question 19868791 answer 88873783 来源 知乎 分布式系统 Dist
  • 线性代数学习之正交性,标准正交矩阵和投影

    正交基和标准正交基 前言 经过上一次线性代数学习之向量空间 维度 和四大子空间的学习 对于空间的概念已经有了非常深刻的认识了 而描述空间很重要的方式除了维度以外 那就是空间的基了 而如小标题所示就是跟空间的基相关 所以先来回忆一下空间基的相
  • autojs获取最近创建的媒体文件,获取本机音频视频图片文件脚本源码,翻译自java

    说明 本文提供的代码仅供参考 不建议用于生产环境 可能有些地方在最新版本的Auto js上面需要做修改 才能运行 Auto js简介 Auto js是利用安卓系统的 辅助功能 实现类似于按键精灵一样 可以通过代码模拟一系列界面动作的辅助工作
  • 宋人千首绝句【全十卷】

    千首宋人绝句 是清代严长明编辑的书籍 全书共十卷 分七言 五言 六言三部分 其中七言七卷 五言两卷 六言一卷 且按帝王 后妃 宫掖 宗室 降王 宋臣 闺媛等分类 收录有王安石 苏轼 黄庭坚 秦观 陆游 杨万里 范成大等著名诗人的六言绝句 编
  • 看了一次strongswan ipsec的设置.

    看了一次strongswan ipsec的设置 这次的设置要求是 Linux 中 strongwans与hillstone防火墙 stoneOS 建立ipsec连接 network network进行通信 要求Linux可以同时与多台防火墙