介绍


互联网协议安全(IPsec)是互联网工程任务组(IETF)定义的一组协议,用于在未受保护的IP/IPv6网络(如Internet)上保护数据包交换。


IPsec协议套件可以分为以下几组:

  • Internet密钥交换(IKE)协议。动态生成和分发AH和ESP的加密密钥。
  • 认证头(AH)RFC 4302
  • 封装安全负载(ESP)RFC 4303

Internet密钥交换协议(IKE)

IKE (Internet Key Exchange)是一种为ISAKMP (Internet Security Association and Key Management protocol)框架提供经过认证的密钥材料的协议。还有其他与ISAKMP一起工作的密钥交换方案,但IKE是使用最广泛的一种。它们共同提供了对主机进行身份验证和自动管理安全协会(SA)的方法。

大多数时候,IKE守护进程什么也不做。当它被激活时有两种可能的情况:

策略规则捕获了一些流量,需要对其进行加密或身份验证,但该策略没有任何sa。策略通知IKE守护进程,IKE守护进程发起到远程主机的连接。IKE守护进程响应远程连接。在这两种情况下,对等体建立连接并执行2个阶段:

  • 第一阶段—对等体同意在接下来的IKE消息中使用的算法和身份验证。还生成了用于派生所有sa密钥和保护主机之间后续ISAKMP交换的密钥材料。这个阶段应该匹配以下设置:
    • 身份验证方法
    • DH组
    • 加密算法
    • 交换模式
    • 散列算法
    • NAT-T
    • DPD和寿命(可选)
  • 第二阶段—对等体之间建立一个或多个安全联盟,用于IPsec对数据进行加密。所有由IKE守护进程建立的SA都有生命周期值(限制时间,超过此时间SA将失效,或者可以由该SA加密的数据量,或者两者都有)。这个阶段应该匹配以下设置:
    • IPsec协议
    • 方式(隧道或运输)
    • 身份验证方法
    • PFS (DH)组
    • 一生

生命周期有两种价值——软价值和硬价值。当安全联盟达到软生存时间阈值时,IKE守护进程收到通知,开始第二阶段交换,用新的安全联盟替换该安全联盟。如果SA达到硬超时时间,则丢弃SA。

如果在生存期到期时禁用DPD,则不重新验证阶段1,只验证阶段2。要强制阶段1重密钥,请启用DPD。

众所周知,PSK认证在“主动”模式下容易受到离线攻击,但最近的发现表明,在“main”和“ike2”交换模式下,离线攻击也是可能的。一般建议避免使用PSK身份验证方法。

IKE可以选择提供完美前向保密(PFS),这是密钥交换的一个属性,这反过来意味着,对于IKE来说,危及长期阶段1密钥将不允许轻松访问通过该阶段1建立的sa所保护的所有IPsec数据。这意味着为每个阶段2生成一个额外的键控材料。

密钥材料的生成在计算上是非常昂贵的。举例来说,即使在非常快的计算机上,使用modp8192组也需要几秒钟。它通常在每个阶段1交换中发生一次,在任何主机对之间只发生一次,然后保存很长时间。PFS还将这个昂贵的操作添加到每个阶段2交换中。

diffie - hellman组

Diffie-Hellman (DH)密钥交换协议允许没有任何初始共享密钥的双方安全地创建一个密钥。支持以下模指数(MODP)和椭圆曲线(EC2N) Diffie-Hellman(也称为“Oakley”)群:

diffie - hellman集团 名字 参考
组1 768位MODP组 RFC 2409
组2 1024位MODP组 RFC 2409
组3 GP(2^155)上的EC2N群 RFC 2409
组4 GP(2^185)上的EC2N群 RFC 2409
组5 1536位MODP组 RFC 3526
组14 2048位MODP组 RFC 3526
组15 3072位MODP组 RFC 3526
组16 4096位MODP组 RFC 3526
集团17 6144位MODP组 RFC 3526
组18 8192位MODP组 RFC 3526
组19 256位随机ECP组 RFC 5903
集团20 384位随机ECP组 RFC 5903
21集团 521位随机ECP组 RFC 5903

可以找到更多关于标准的信息在这里

IKE流量

为了避免IKE报文命中某些SPD规则的问题,需要对尚未建立SA(该报文可能正在尝试建立SA)进行加密,所以不处理UDP源端口为500的本地报文。同样,目的端口为UDP 500的本地发送报文在入站策略检查中不进行处理。

设置程序

要使IPsec使用IKE-ISAKMP进行自动密钥设置,您必须配置策略、对等体和提议(可选)项。

IPsec对时间变化非常敏感。如果IPsec隧道的两端没有同步时间(例如,不同的NTP服务器没有用相同的时间戳更新时间),隧道就会中断,必须重新建立。

EAP认证方法

外部身份验证 内部身份验证
EAP-GTC
EAP-MD5
EAP-MSCHAPv2
EAP-PEAPv0

EAP-MSCHAPv2
EAP-GPSK
EAP-GTC
EAP-MD5
EAP-TLS

EAP-SIM
EAP-TLS
EAP-TTLS

人民行动党

MS-CHAP
MS-CHAPv2
EAP-MSCHAPv2
EAP-GTC
EAP-MD5
EAP-TLS

EAP-TLS在Windows上称为“智能卡或其他证书”。

认证头(AH)

AH是一种协议,它通过添加基于数据报中的值计算的报头,为数据报的全部或部分内容提供身份验证。数据报的哪些部分用于计算,以及报头的位置取决于使用的是隧道模式还是传输模式。

AH头的存在允许验证消息的完整性,但不加密它。因此,AH提供身份验证,但不提供隐私。另一种协议(ESP)被认为是更好的,它提供数据隐私和自己的身份验证方法。

l雷竞技RouterOS支持的AH认证算法如下:

  • Sha2 (256,512)
  • SHA1
  • MD5

传输模式

在传输模式下,AH头插入在IP头之后。IP数据和报头用于计算认证值。在传输过程中可能发生变化的IP字段,如TTL和跳数,在身份验证之前被设置为零值。

隧道模式

在隧道模式下,原IP报文被封装成一个新的IP报文。所有的原始IP报文都被认证。

封装安全负载(ESP)


ESP (Encapsulating Security Payload)使用共享密钥加密来提供数据隐私。ESP还支持自己的身份验证方案,就像AH中使用的那样。

ESP封装字段的方式与AH非常不同。它不是只有一个标题,而是将其字段分为三个组件:

  • ESP报头-出现在加密数据之前,它的位置取决于ESP是在传输模式还是隧道模式下使用。
  • ESP拖车—加密后的数据。它包含用于对齐加密数据的填充。
  • ESP认证数据—当使用ESP的可选认证特性时,该字段包含一个ICV (Integrity Check Value),计算方式与AH协议的工作方式类似。

传输模式

在传输模式下,ESP头插入到原IP头之后。报文末尾添加ESP拖尾和认证值。在这种模式下,只对IP有效载荷进行加密和认证,对IP报头不进行安全保护。


隧道模式

在隧道模式下,原IP报文被封装在一个新的IP报文中,从而保证了IP负载和IP报头的安全。

加密算法

l雷竞技RouterOS ESP支持多种加密和认证算法。

身份验证:

  • MD5
  • SHA1
  • SHA2(256位,512位)

加密:

  • AES- 128位、192位、256位密钥AES-CBC、AES-CTR、AES-GCM算法;
  • 河豚-自v4.5起添加
  • Twofish-自v4.5起添加
  • 山茶花- 128位,192位和256位密钥山茶花加密算法自v4.5以来添加
  • DES- 56位DES-CBC加密算法;
  • 3 des- 168位DES加密算法;

雷竞技官网网站下载硬件加速

雷竞技官网网站下载硬件加速允许通过使用CPU内部的内置加密引擎来执行更快的加密过程。

提供具有硬件加速功能的设备列表雷竞技官网网站下载在这里

CPU DES和3DES AES-CBC AES-CTR AES-GCM
MD5 SHA1 SHA256 SHA512 MD5 SHA1 SHA256 SHA512 MD5 SHA1 SHA256 SHA512 MD5 SHA1 SHA256 SHA512
88年f7040 没有 是的 是的 是的 没有 是的 是的 是的 没有 是的 是的 是的 没有 是的 是的 是的
AL21400 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的
AL32400 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的
AL52400 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的
AL73400 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的 是的
Ipq-4018 / ipq-4019 没有 是的 是的 没有 没有 是的* 是的* 没有 没有 是的* 是的* 没有 没有 没有 没有 没有
ipq - 6010 没有 没有 没有 没有 没有 是的 是的 是的 没有 是的 是的 是的 没有 是的 是的 是的
ipq - 8064 没有 是的 是的 没有 没有 是的* 是的* 没有 没有 是的* 是的* 没有 没有 没有 没有 没有
MT7621A 对* * * * 对* * * * 对* * * * 没有 是的 是的 是的 没有 没有 没有 没有 没有 没有 没有 没有 没有
P1023NSN5CFB 没有 没有 没有 没有 是的* * 是的* * 是的* * 是的* * 没有 没有 没有 没有 没有 没有 没有 没有
P202ASSE2KFB 是的 是的 是的 没有 是的 是的 是的 是的 没有 没有 没有 没有 没有 没有 没有 没有
PPC460GT 没有 没有 没有 没有 是的* * * 是的* * * 是的* * * 是的* * * 是的* * * 是的* * * 是的* * * 是的* * * 没有 没有 没有 没有
TLR4(瓷砖) 是的 是的 是的 没有 是的 是的 是的 没有 是的 是的 是的 没有 没有 没有 没有 没有
x86 (AES-NI) 没有 没有 没有 没有 是的* * * 是的* * * 是的* * * 是的* * * 是的* * * 是的* * * 是的* * * 是的* * * 是的* * * 是的* * * 是的* * * 是的* * *

*仅支持128位和256位密钥大小

**仅于2016年生产,序列号以5和7开头

***仅加速AES-CBC和AES-CTR加密,在软件中完成哈希雷电竞app下载官方版苹果

****不支持DES,只支持3DES和AES-CBC

各种加密和哈希算法组合的IPsec吞吐量结果发布在雷竞技网站microtik产品页面

政策

策略表用于确定是否应该对数据包应用安全设置。

属性

财产 描述
行动Discard | encrypt | none;默认值:加密 指定对匹配策略的报文进行处理。
  • None -不加修改地传递报文。
  • 丢弃-丢弃数据包。
  • encrypt——应用此策略中指定的转换,它是SA。
评论字符串;默认值:) 政策的简短描述。
禁用是|否;默认值:没有 是否使用策略进行报文匹配。
dst-addressIP / IPv6前缀;默认值:0.0.0.0/32 报文中要匹配的目的地址。适用于隧道模式(tunnel=yes)和模板模式(template=yes)。
dst-port整数:0 . . 65535| any;默认值:任何 报文中要匹配的目的端口。如果设置为任意,所有端口将被匹配。
集团字符串;默认值:默认的 分配此模板的策略组名称。
ipsec-protocols啊,尤指;默认值:esp 指定要应用于匹配流量的身份验证头和封装安全有效载荷协议的组合。
水平要求|唯一的|使用;默认值:需要 指定无法找到此策略的某些sa时的处理方法:
  • use -跳过此转换,不丢弃数据包,也不从IKE守护进程获取SA;
  • require -丢弃数据包并获取SA;
  • unique -丢弃数据包并获取仅用于此特定策略的唯一SA。它用于多个客户端可以位于一个公共IP地址(NAT后的客户端)的设置中。
同行字符串;默认值:) 应用策略的对等体名称。
建议字符串;默认值:默认的 IKE守护进程发送安全提议模板的名称,用于为该策略建立安全联盟。
协议All | egp | ggp| icmp | igmp |…;默认值:所有 要匹配的IP包协议。
src-addressip / ipv6前缀;默认值:0.0.0.0/32 报文中要匹配的源地址。适用于隧道模式(tunnel=yes)和模板模式(template=yes)。
src-port任意|整数:0 ~ 65535;默认值:任何 报文中需要匹配的源端口。如果设置为任意,所有端口将被匹配。
模板是|否;默认值:没有 创建模板,并将模板分配给指定策略组。

模板使用的参数如下:

  • Group -分配此模板的策略组的名称;
  • src-address, dst-address -请求的子网必须在两个方向上都匹配(例如0.0.0.0/0允许所有);
  • 协议-要匹配的协议,如果设置为all,则接受任何协议;
  • 提议-用于此模板的SA参数;
  • level -在NAT后的多个客户端设置中需要unique时非常有用。
隧道是|否;默认值:没有 是否使用隧道模式。

只读属性

财产 描述
活跃的是|否 当前是否在使用此策略。
默认的是|否 是否为默认系统项。
动态是|否 这是动态添加的还是生成的条目。
无效的是|否 策略是否无效——可能原因是存在相同src-address和dst-address的重复策略。
ph2-count整数 与策略相关联的若干活动的第2阶段会话。
ph2-state失效|无相位e2 |已建立 关键建立进度的指示。
sa-dst-addressip / ipv6地址;默认值::: SA目的IP/IPv6地址(对端对等体)。
sa-src-addressip / ipv6地址;默认值::: SA源IP/IPv6地址(本地对等体)。

从v6.40开始,策略顺序非常重要。现在,它的工作原理类似于防火墙过滤器,从上到下执行策略(删除优先级参数)。

所有报文都采用隧道方式进行IPIP封装,其新IP头的src-address和dst-address设置为本策略的sa-src-address和sa-dst-address。如果不使用隧道模式(id test使用传输模式),则只有源地址和目的地址与sa-src-address和sa-dst-address相同的报文才能被此策略处理。传输模式只能用于发源于IPsec对等体(建立安全关联的主机)并以IPsec对等体为目的地的数据包。要加密网络之间(或网络与主机之间)的流量,必须使用隧道模式。

统计数据

此菜单显示各种IPsec统计信息和错误。

只读属性

财产 描述
错误整数 所有与其他计数器不匹配的入站错误。
in-buffer-errors整数 没有空闲缓冲区。
in-header-errors整数 标题错误。
in-no-states整数 没有发现任何状态,即入站SPI、地址或SA的IPsec协议错误。
in-state-protocol-errors整数 特定于转换协议的错误,例如,SA密钥错误或硬件加速器无法处理数据包数量。雷竞技官网网站下载
in-state-mode-errors整数 特定于转换模式的错误。
in-state-sequence-errors整数 序列号就在窗外。
in-state-expired整数 状态已过期。
in-state-mismatches整数 状态有不匹配选项,如UDP封装类型不匹配。
in-state-invalid整数 状态无效。
in-template-mismatches整数 状态没有匹配模板,例如入方向sa正确但SP规则错误。处理步骤可能的原因是sa源地址或sa目的地址不匹配。
in-no-policies整数 没有为状态找到策略,例如入站sa是正确的,但没有找到SP。
in-policy-blocked整数 政策丢弃。
in-policy-errors整数 的政策错误。
out-errors整数 所有与其他计数器不匹配的出站错误。
out-bundle-errors整数 包生成错误。
out-bundle-check-errors整数 包检查错误。
out-no-states整数 没有找到状态。
out-state-protocol-errors整数 转换协议特定的错误。
out-state-mode-errors整数 特定于转换模式的错误。
out-state-sequence-errors整数 序列错误,如序列号溢出。
out-state-expired整数 状态已过期。
out-policy-blocked整数 政策丢弃。
out-policy-dead整数 这个政策已经死了。
out-policy-errors整数 政策错误。

建议

IKE守护进程为某些策略建立安全联盟而发送的提议信息。


属性

财产 描述
auth-algorithmsmd5零| | sha1 | sha256 | sha512;默认值:sha1 允许的授权算法。SHA(安全哈希算法)更强,但速度较慢。MD5使用128位的密钥,sha1-160位的密钥。
评论字符串;默认值:)
禁用是|否;默认值:没有 是否禁用某项。
enc-algorithms零des | | 3 des | aes - 128 - cbc | aes - 128 - cbc | aes - 128 gcm | aes - 192 - cbc | aes - 192 ctr | aes - 192 gcm | aes - 256 - cbc | aes - 256 ctr | aes - 256 gcm |河豚|山茶花- 128 |山茶花- 192 |山茶花twofish - 256 |;默认值:aes - 256 - cbc, aes - 192 - cbc, aes - 128 - cbc 允许用于sa的算法和密钥长度。
一生时间;默认值:30米 使用SA多长时间才会把它扔掉。
名字字符串;默认值:)
pfs-groupEc2n155 | ec2n185 | ecp256 | ecp384 | ecp521 | modp768 | modp1024 | modp1536 | modp2048 | modp3072 | modp4096 | modp6144 | modp8192 |无;默认值:modp1024 diffie-Helman组用于完全向前保密。


只读属性

财产 描述
默认的是|否 是否为默认系统项。

在此菜单中,可以创建策略模板使用的其他策略组。


属性

财产 描述
名字字符串;默认值:)
评论字符串;默认值:)

同行

对等体配置设置用于IKE守护进程之间建立连接。然后,该连接将用于协商sa的密钥和算法。交换模式是对等体之间唯一的标识符,这意味着只要使用不同的交换模式,就可以有多个对等体配置具有相同的远程地址。

属性

财产 描述
地址IP / IPv6前缀;默认值:0.0.0.0/0 如果远端对等体的地址与此前缀匹配,则使用对等体配置进行认证和建立第一阶段.如果多个对等体的地址与多个配置项匹配,则使用最具体的地址(即网掩码最大的地址)。
评论字符串;默认值:) 对对等体的简短描述。
禁用是|否;默认值:没有 是否使用peer匹配远端对等体的前缀。
exchange-mode进攻型|基地|主|艾克2;默认值:主要 根据RFC 2408不同的ISAKMP第一阶段交换模式。的主要Mode放宽了rfc2409章节5.4,允许在主模式下进行预共享密钥认证。ike2 mode启用Ikev2 RFC 7296。IKEv2忽略的参数proposal-check、compatibility-options、lifebytes、dpd-maximum-failures、nat-traversal。
本地地址IP / IPv6地址;默认值:) 路由器的本地地址,阶段1应该绑定到该地址。
名字字符串;默认值:)
被动是|否;默认值:没有 启用被动模式时,将等待远端对等体发起IKE连接。启用被动模式也表示对等体是xauth响应器,关闭被动模式- xauth启动器。当被动模式被禁用时,如果在阶段1中配置或创建了策略,对等体不仅会尝试自动建立阶段1,还会自动建立阶段2。
港口整数:0 . . 65535;默认值:500 当路由器为启动器时,如果远端对等体使用非默认端口,则与远端对等体连接时使用的通信端口。
配置文件字符串;默认值:默认的 IKE协商时使用的配置文件模板名称。
send-initial-contact是|否;默认值:是的 指定是发送初始接触IKE报文还是等待对端,该报文触发清除当前源地址的旧对等体安全联盟。通常,在road warrior设置中,客户端是启动器,此参数应设置为no。如果ikev1使能了modecfg或xauth,则不发送初始联系。

只读属性

财产 描述
动态是|否 这是否是由不同的服务(例如L2TP)动态添加的条目。
应答器是|否 此对等体是否仅充当响应器(侦听传入请求)而不发起连接。

身份

身份是特定于远程对等体的配置参数。身份的主要目的是处理身份验证和验证对等体的完整性。

属性

财产 描述
auth方法数字签名| eap | eap-radius | pre-shared-key | pre-shared-key-xauth | rsa-key | rsa-signature-hybrid;默认值:pre-shared-key 验证方法:
  • 数字签名—使用一对RSA证书进行身份验证;
  • eap - IKEv2对发起方(网掩码为/32的对等体)进行eap认证。必须与eap方法一起使用;
  • EAP - RADIUS - IKEv2 EAP响应方RADIUS直通认证(RFC 3579)。在这种情况下,需要服务器证书。如果没有指定服务器证书,那么只有支持EAP-only (RFC 5998)的客户端才能连接。请注意,EAP方法应与仅EAP兼容;
  • pre-shared-key -通过对等体之间共享的密码(预共享密钥)字符串进行身份验证(不建议,因为预共享密钥可能受到离线攻击);
  • RSA -key -使用在keys菜单中导入的RSA密钥进行身份验证。仅支持IKEv1;
  • pre-shared-key- XAuth -通过对等体之间共享的密码(预共享密钥)字符串+ XAuth用户名和密码进行身份验证。仅支持IKEv1;
  • rsa-signature-hybrid -响应者证书认证与启动器XAuth。仅IKEv1支持。
证书字符串;默认值:) 系统/证书(签名包)中列出的证书名称;证书必须有私钥)。使用数字签名认证方式(auth-method=digital-signature)或EAP认证方式(auth-method= EAP)时适用。
评论字符串;默认值:) 对身份的简短描述。
禁用是|否;默认值:没有 是否使用身份匹配远端对等体。
eap-methodsEap-mschapv2 | eap-peap | eap-tls | eap-tls;默认值:eap-tls 所有EAP方法都需要在System/ certificates菜单中显示整个证书链,包括中间和根CA证书。此外,还必须指定用户名和密码(如果身份验证服务器需要)。可以指定多个EAP方法,并将以指定的顺序使用。目前支持的EAP方法:
  • eap-mschapv2;
  • eap-peap -也称为PEAPv0/EAP-MSCHAPv2;
  • Eap-tls -需要在证书参数下指定额外的客户端证书;
  • eap-ttls。
generate-policy否| port-override | port-strict;默认值:没有 允许该对等体为不存在的策略建立安全联盟。这些策略是在SA的生命周期内动态创建的。例如,自动策略允许创建IPsec安全的L2TP隧道,或者在配置时不知道远程对等体IP地址的任何其他设置。
  • No -不生成策略;
  • 端口覆盖-生成策略并强制策略使用任何端口(旧行为);
  • Port-strict -使用对等体提议中的端口,这些端口必须匹配对等体的策略。
关键字符串;默认值:) keys菜单中的私钥名称。使用RSA密钥认证方式(auth-method= RSA -key)时适用。
配以Remote-id |证书;默认值:remote-id 定义用于对等体身份验证的逻辑。
  • remote-id -根据remote-id的设置验证对等体的ID。
  • Certificate将使用远程证书设置下指定的内容验证对等方的证书。
mode-config无| *request-only | string;默认值:没有一个 mode-config菜单中的配置参数名称。设置该参数后,启用mode-config模式。
我的身份证Auto | address | FQDN | user-fqdn | key-id;默认值:汽车 在启动器上,它控制发送给响应器的ID_i。在响应器上,它控制发送给启动器的ID_r。在IKEv2中,响应者也期望从发起者接收到的ID_r中的这个ID。
  • auto -尝试自动使用正确的ID:预共享密钥为IP,基于证书的连接为SAN(如果不存在);
  • address——使用IP地址作为ID;
  • dn - ASN.1 X.500专有名称的二进制区分编码规则(DER)编码;
  • FQDN—完全限定域名;
  • key- ID -使用指定的key ID作为标识;
  • 用户FQDN -指定一个完全限定的用户名字符串,例如“user@domain.com”。
notrack-chain字符串;默认值:) 将匹配IPsec策略的IP/Firewall/Raw规则加入指定链。与generate-policy一起使用。
密码字符串;默认值:) XAuth或EAP密码。如果使用带XAuth认证方法的预共享密钥(auth-method=pre-shared-key- XAuth)或EAP (auth-method= EAP),则适用。
同行字符串;默认值:) 应用该身份的对等体的名称。
policy-template-group无| string;默认值:默认的 如果启用了generate-policy,将根据来自同一组的模板检查流量选择器。如果没有匹配的模板,阶段2 SA将无法建立。
remote-certificate字符串;默认值:) 用于对远端进行认证的证书名称(在System/Certificates中列出)(验证数据包;不需要私钥)。如果未指定远程证书,则使用从远程对等点接收到的证书,并在证书菜单中对照CA进行检查。必须在证书存储区中导入适当的CA。如果指定remote-certificate and match-by=certificate参数,则只匹配指定的客户端证书。使用数字签名认证方式(auth-method=digital-signature)时适用。
remote-idAuto | FQDN | user-fqdn | key-id | ignore;默认值:汽车 该参数控制期望从远程对等体获得的ID值。请注意,除了忽略之外,所有类型都将使用接收到的证书验证远程对等体的ID。如果对等体发送证书名称作为自己的ID,则对照证书进行检查,否则对照Subject Alt. name进行检查。
  • 自动接受所有ID;
  • FQDN -完全限定域名。仅支持IKEv2;
  • 用户FQDN—完全限定的用户名字符串,例如“user@domain.com”。仅支持IKEv2;
  • key- ID指定标识的key ID。仅支持IKEv2;
  • ignore -不使用证书验证收到的ID(危险)。
远程密钥字符串;默认值:) keys菜单中的公钥名称。使用RSA密钥认证方式(auth-method= RSA -key)时适用。
秘密字符串;默认值:) 秘密的字符串。如果以'0x'开头,则将其解析为十六进制值。如果使用预共享密钥认证方式(auth-method=pre-shared-key和auth-method=pre-shared-key-xauth),则适用。
用户名字符串;默认值:) XAuth或EAP用户名。如果使用带XAuth认证方法的预共享密钥(auth-method=pre-shared-key- XAuth)或EAP (auth-method= EAP),则适用。


只读属性

财产 描述
动态是|否 这是否是由不同的服务(例如L2TP)动态添加的条目。

配置文件

配置文件定义了一组参数,这些参数将用于阶段1的IKE协商。这些参数可能与其他对等体配置相同。

属性

财产 描述
dh-groupModp768 | modp1024 | ec2n155 | ec2n185 | modp1536 | modp2048 | modp3072 | modp4096 | modp6144 | modp8192 | ecp256 | ecp384 | ecp521;默认值:modp1024, modp2048 Diffie-Hellman组(密码强度)
dpd-intervalTime | disable-dpd;默认值:2米 死对等体检测间隔。如果设置为disable-dpd,则不使用死对等体检测。
dpd-maximum-failures整数:1 . . 100;默认值:5 直到对等体被认为已死为止的最大失败计数。启用DPD时适用。
enc-algorithm3des | aes-128 | aes-192 | aes-256 |河豚|山茶-128 |山茶-192 |山茶-256 | des;默认值:aes - 128 对等体将使用的加密算法列表。
散列算法Md5 | sha1 | sha256 | sha512;默认值:sha1 散列算法。SHA(安全哈希算法)更强,但速度较慢。MD5使用128位密钥,sha1-160位密钥。
lifebytes整数:0 . . 1 - 4294967295;默认值:0 阶段1 lifebytes仅用作添加到提案中的管理值。用于远端对等体需要特定的lifebytes值来建立阶段1的情况。
一生时间;默认值:1 d 阶段1生存期:指定SA的有效期。
名字字符串;默认值:)
nat-traversal是|否;默认值:是的 采用Linux NAT- t机制解决IPsec对等体之间NAT路由器不兼容的问题。这只能用于ESP协议(设计上不支持AH,因为它签名整个数据包,包括IP头,这是由NAT改变,使AH签名无效)。该方法将IPsec ESP流量封装到UDP流中,以克服ESP与NAT不兼容的一些小问题。
proposal-check要求|精确|服从|严格;默认值:服从 阶段2生命周期检查逻辑:
  • 声明-在建议和配置的生命周期中选择最短的,并通知发起者
  • 精确-要求生命周期是相同的
  • 服从——接受发起者发送的任何信息
  • 严格—如果提议的生命周期长于默认值,则拒绝该提议,否则接受提议的生命周期

活跃的同龄人

此菜单提供有关当前已建立阶段1连接的远程对等体的各种统计信息。


只读属性

财产 描述
动态地址ip / ipv6地址 通过mode config动态分配IP地址
时间 自该对等体收到最后一条消息以来的持续时间。
本地地址ip / ipv6地址 该对等体使用的路由器上的本地地址。
natt-peer是|否 是否对该对等体使用NAT-T。
ph2-total整数 激活的IPsec安全联盟总数。
远程地址ip / ipv6地址 对端ip/ipv6地址。
应答器是|否 连接是否由远端对等体发起。
rx-bytes整数 从对等体接收的总字节数。
rx-packets整数 从该对等体接收的报文总数。
一边启动器|响应器 显示哪一方发起了Phase1协商。
状态字符串 与对等体的第一阶段协商状态。例如,当协商阶段1和阶段2时,它将显示状态“已建立”。
tx-bytes整数 发送到该对等体的字节总数。
tx-packets整数 发送到该对等体的报文总数。
正常运行时间时间 对等体处于已建立状态的时间。


命令

财产 描述
kill-connections() 手动断开所有远端对等体连接。

模式配置

ISAKMP和IKEv2配置属性在该菜单中配置。


属性

财产 描述
地址无| string;默认值:) 为启动器指定单个IP地址,而不是指定整个地址池。
地址池无| string;默认值:) 如果启用了mode-config,响应器将尝试从中分配地址的地址池名称。
address-prefix-length整数[1 . . 32];默认值:) 分配给池的地址的前缀长度(netmask)。
评论字符串;默认值:)
名字字符串;默认值:)
应答器是|否;默认值:没有 指定配置将作为启动器(客户端)还是响应器(服务器)工作。发起者将向响应者请求模式配置参数。
split-includeIP前缀列表;默认值:) 需要隧道的CIDR格式子网列表。子网将使用CISCO UNITY扩展发送到对等端,远程对等端将创建特定的动态策略。
src-address-list地址列表;默认值:) 指定地址列表将生成动态源NAT规则。该参数仅在responder=no时有效。带有NAT的roadWarrior客户端
static-dnsIP列表;默认值:) 手动配置发送给客户端的DNS服务器IP地址。
system-dns是|否;默认值:) 启用此选项后,DNS地址将从/ ip dns


只读属性

财产 描述
默认的是|否 是否为默认系统项。

并不是所有的IKE实现都支持split-include选项提供的多个分裂网络。

如果Rl雷竞技outerOS客户端是发起者,它将始终发送CISCO UNITY扩展,并且RouterOS只支持该扩展的split-include。

不能同时使用system-dns和static-dns。

安装SAs

此菜单提供有关已安装的安全关联(包括密钥)的信息。


只读属性

财产 描述
是|否 该安全联盟是否使用AH协议。
ESP是|否 本安全联盟是否使用ESP协议。
add-lifetime时间/时间 增加软/硬格式SA的生存时间:
  • 软时间,在此之后IKE将尝试建立新的安全联盟;
  • SA被删除的硬性时间。
addtime时间 添加此SA的日期和时间。
auth-algorithmMd5 | null | sha1 |… 当前使用的认证算法。
auth-key字符串 使用的认证密钥。
current-bytes64位整数 此SA看到的字节数。
dst-address知识产权 该SA的目的地址。
enc-algorithmDes | 3des | aes-cbc |… 当前使用的加密算法。
enc-key字符串 使用的加密密钥。
enc-key-size数量 使用的加密密钥长度。
将于是|否 还有时间重新输入。
hw-aead是|否 SA是否硬件加速。雷竞技官网网站下载
重播整数 重放窗口的大小(以字节为单位)。
spi字符串 Security Parameter索引标识标签
src-address知识产权 该SA的源地址。
状态字符串 显示SA的当前状态(“成熟”、“垂死”等)


命令

财产 描述
冲洗() 手动删除所有已安装的安全关联。

此菜单列出可用于对等身份验证的所有导入的公钥和私钥。菜单有几个命令与键一起工作。


属性

财产 描述
名字字符串;默认值:)


只读属性

财产 描述
关键尺寸1024 | 2048 | 4096 这个键的大小。
私有密匙是|否 是否是私钥。
rsa是|否 是否是RSA密钥。


命令

财产 描述
export-pub-key文件名称;关键 从现有私钥之一导出公钥到文件。
generate-key键的大小;名字 生成私钥。接受两个参数:新生成密钥的名称和密钥大小1024、2048和4096。
进口文件名称;名字 从文件中导入密钥。

设置


财产 描述
会计是|否;默认值:) 是否向RADIUS服务器发送RADIUS计费请求。使用EAP Radius (auth-method= EAP - Radius)或预共享密钥+ XAuth认证方式(auth-method=pre-shared-key- XAuth)时适用。
中期财报时间;默认值:) 每次RADIUS计费连续更新的时间间隔。必须启用会计。
xauth-use-radius是|否;默认值:) XAuth用户是否使用Radius客户端。

应用程序向导

带有NAT的RoadWarrior客户端

考虑如下所示的设置。l雷竞技RouterOS作为一个连接到Office的RoadWarrior客户端,允许访问其内部资源。

建立隧道,接收本地模式配置的IP地址,并生成一组动态策略。

[admin@雷竞技网站mikrotik] > ip ipsec policy print Flags:T -模板,X -禁用,D -动态,I -无效,A -激活,* -默认0 T *组=默认src-address =:: / 0 dst-address =:: / 0协议=所有提案=默认模板=是的1 DA src-address = 192.168.77.254/32 src-port =任何dst-address = 10.5.8.0/24 dst-port =任何协议=所有的行动= =独特ipsec-protocols = esp隧道加密水平=是的sa-src-address = 10.155.107.8 sa-dst-address = 10.155.107.9提议=默认ph2-count = 1 2 DA src-address = 192.168.77.254/32 src-port =任何dst-address = 192.168.55.0/24 dst-port =任何协议=所有的行动= =独特ipsec-protocols = esp加密级别隧道=yes sa-src-address=10.155.107.8 sa-dst-address=10.155.107.9 proposal=default ph2-count=1

目前,只有源地址为192.168.77.254/32的报文才会匹配到IPsec策略。为了使本地网络能够访问远程子网,需要将本地主机的源地址更改为动态分配模式配置的IP地址。可以动态生成源NAT规则。这可以通过创建一个包含应该应用NAT规则的所有本地网络的新地址列表来实现。在我们的例子中,它是192.168.88.0/24。

/ip firewall address-list add address=192.168.88.0/24 list=local-RW

通过在mode-config initiator配置下指定地址列表,可以动态生成一组源NAT规则。

/ip ipsec mode-config set [find name="request-only"] src-address-list=local-RW

IPsec隧道建立后,可以看到每个网络动态创建的源NAT规则。现在,192.168.88.0/24中的每台主机都可以访问Office的内部资源。

[admin@雷竞技网站mikrotik] > ip firewall nat print标志:X - disabled, I - invalid, D - dynamic 0 D;;;ipsec mode-config chain=srcnat action=src-nat to-addresses=192.168.77.254 dst-address=192.168.55.0/24 src-address-list=local-RW 1 D;;ipsec mode-config chain=srcnat action=src-nat to-addresses=192.168.77.254 dst-address=10.5.8.0/24 src-address-list=local-RW

只允许IPsec封装的流量

在某些情况下,出于安全原因,如果传入/传出数据包未加密,您可能希望放弃对特定网络的访问。例如,如果我们有L2TP/IPsec设置,我们希望放弃非加密的L2TP连接尝试。

有几种方法可以做到这一点:

  • IPsec策略匹配器在防火墙中的应用
  • 使用通用IPsec策略行动设置为下降和较低的优先级(可用于道路勇士设置,其中动态策略生成);
  • 通过在mangle中设置DSCP或优先级,并在解封装后在防火墙中匹配相同的值。

IPsec策略匹配器

让我们设置一个IPsec策略匹配器来接受所有匹配任何IPsec策略的数据包,并丢弃其余的数据包:

add chain=input comment="ipsec policy matcher" in-interface=WAN ipsec-policy=in,ipsec add action=drop chain=input comment="drop all" in-interface=WAN log=yes

IPsec策略匹配器接受两个参数方向,政策.我们使用了入方向和IPsec策略。IPsec策略选项允许我们在解封装后检查数据包,因此,例如,如果我们想只允许来自特定源地址的GRE封装数据包,并丢弃其余的,我们可以设置以下规则:

add chain=input comment="ipsec policy matcher" in-interface=WAN ipsec-policy=in,ipsec protocol=gre src=address=192.168.33.1 add action=drop chain=input comment="drop all" in-interface=WAN log=yes

对于L2TP规则集将为:

add action=drop chain=input comment="ipsec policy matcher" in-interface=WAN ipsec-policy=in,ipsec协议=udp dst-port=1701 add action=drop chain=input协议=udp dst-port=1701 comment="drop l2tp" in-interface=WAN log=yes

使用通用IPsec策略

此方法的诀窍是添加一个带有动作拖放的默认策略。让我们假设我们在一个公共1.1.1.1地址上运行L2TP/IPsec服务器,我们想要删除所有未加密的L2TP:

/ip ipsec policy add src-address=1.1.1.1 dst-address=0.0.0.0/0 sa-src-address=1.1.1.1 protocol=udp src-port=1701 tunnel=yes action=discard

现在,路由器将丢弃任何L2TP未加密的流量,但在L2TP/IPsec连接成功后,会创建比默认静态规则优先级更高的动态策略,匹配该动态规则的报文可以转发。

政策秩序很重要!要做到这一点,请确保静态删除策略低于动态策略。如果需要,将其移动到策略模板下方。

[admin@rack2_10g1] /ip ipsec policy> print Flags:T -模板,X -禁用,D -动态,I -非激活,* -默认0 T *组=默认src-address =:: / 0 dst-address =:: / 0协议=所有提案=默认模板=是的1 D src-address = 1.1.1.1/32 src-port = 1701 dst-address = 10.5.130.71/32 dst-port = = udp协议行动=加密级别=需要ipsec-protocols = esp隧道=没有sa-src-address = 1.1.1.1 sa-dst-address = 10.5.130.71 2 src-address = 1.1.1.1/32 src-port = 1701 dst-address = 0.0.0.0/0 dst-port = = udp协议行动=丢弃水平=独特ipsec-protocols = =是的sa-src-address = 1.1.1.1 esp隧道Sa-dst-address =0.0.0.0 proposal=default manual-sa=none

手工指定“对等体配置”下的local-address参数

使用不同的路由表

IPsec和RouterOS中的其他业务一样,无论如何都使用主l雷竞技路由表本地地址参数用于对端配置。IKE流量和IPSec流量都需要使用路由标记。

考虑下面的例子。缺省路由有两条——一条在主路由表中,另一条在路由表“备份”中。IPsec点到点隧道需要使用备份链路。

[admin@pair_r1] > /ip route print detailX - disabled, A - active, D - dynamic, C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme, b - blackhole, U -不可达,P -禁止0 S dst-address = 0.0.0.0/0网关= 10.155.107.1 gateway-status = 10.155.107.1可以通过ether1距离= 1 = 30 target-scope范围= 10 routing-mark =备份1 S dst-address = 0.0.0.0/0网关= 172.22.2.115 gateway-status = 172.22.2.115可以通过ether2距离= 1 = 30 target-scope范围= 10 2 ADC dst-address = 10.155.107.0/25 pref-src = 10.155.107.8网关= ether1 gateway-status = ether1可及的距离= 0 = 10 3 ADC dst-address =范围172.22.2.0/24 pref-src = = ether2 172.22.2.114网关gateway-status=ether2可达距离=0 scope=10 4 ADC dst-address=192.168.1.0/24 pref-src=192.168.1.1 gateway=bridge-local gateway-status=ether2可达距离=0 scope=10 [admin@pair_r1] > /ip firewall nat print标志:X - disabled, I - invalid, D - dynamic 0 chain=srcnat action=masquerade out-interface=ether1 log=no log-prefix="" 1 chain=srcnat action=masquerade out-interface=ether2 log=no log-prefix=""

使用备份链路的源地址和IPsec隧道流量的NAT bypass规则创建IPsec对等体和策略。

/ip ipsec peer add address=10.155.130.136/32 local-address=10.155.107.8 secret=test /ip ipsec policy add sa-src-address=10.155.107.8 src-address=192.168.1.0/24 dst-address=10.155.130.136 tunnel=yes /ip firewall NAT add action=accept chain=srcnat src-address=192.168.1.0/24 dst-address=172.16.0.0/24 place-before=0

目前,我们在日志中看到“phase1协商失败,原因是超时”的错误。这是因为IPsec试图使用带有错误源地址的主路由表到达远端对等体。需要使用Mangle标记UDP/500、UDP/4500和ipsec-esp报文:

/ip firewall mangle add action=mark-connection chain=output connection-mark=no-mark st-address=10.155.130.136 dst-port=500,4500 new-connection-mark=ipsec passthrough=yes protocol=udp add action=mark-connection chain=output connection-mark=no-mark st-address=10.155.130.136 new-connection-mark=ipsec passthrough=yes protocol=ipsec-esp add action=mark-routing chain=output connection-mark=ipsec new-routing-mark=backup passthrough=no

使用多个IP地址的同一路由表

考虑下面的例子。公网接口上存在多个来自同一子网的IP地址。在出接口上配置了掩码规则。有必要明确地使用其中一个IP地址。

[admin@pair_r1] > /ip address print标志:X - disabled, I - invalid, D - dynamic # address NETWORK INTERFACE 0 192.168.1.1/24 192.168.1.0 bridge-local 1 172.22.2.1/24 172.22.2.0 ether1 2 172.22.2.2/24 172.22.2.0 ether1 3 172.22.2.3/24 172.22.2.0 ether1 [admin@pair_r1] > /ip route print标志:X -禁用,-活跃,D -动态、C -连接,S -静态,r - rip, b -边界网关协议,o - ospf, m -居里夫人,b -黑洞,U -遥不可及的,P -禁止# DST-ADDRESS PREF-SRC网关距离1 S 0.0.0.0/0 172.22.2.115 1 3 ADC 172.22.2.0/24 172.22.2.1 ether1 0 4 ADC 192.168.1.0/24 192.168.1.1 bridge-local 0 [admin@pair_r1] / ip防火墙nat >打印标志:X -禁用,I -无效,D -动态0链= srcnat action =化装out-interface = ether1日志=没有log-prefix = "

使用其中一个公网IP地址创建IPsec对等体和策略配置。

/ip ipsec peer add address=10.155.130.136/32 local-address=172.22.2.3 secret=test /ip ipsec policy add sa-src-address=172.22.2.3 src-address=192.168.1.0/24 dst-address=172.16.0.0/24 sa-dst-address=10.155.130.136 tunnel=yes /ip firewall add action=accept chain=srcnat src-address=192.168.1.0/24 dst-address=172.16.0.0/24 place-before=0

目前,阶段1连接使用与我们指定的源地址不同的源地址,并且在日志中显示“阶段1协商由于超时而失败”错误。这是因为masquerade正在改变连接的源地址,以匹配所连接路由的pref-src地址。解决方案是排除来自公网IP地址的连接被伪装。

/ip firewall NAT add action=accept chain=srcnat protocol=udp src-port=500,4500 place-before=0

应用实例

站点到站点IPsec (IKEv1)隧道

考虑如下所示的设置。两个远端办公路由器连接到internet,办公工作站位于NAT后。每个办公室都有自己的本地子网,Office1为10.1.202.0/24,Office2为10.1.101.0/24。两个远程办公室都需要连接路由器后面的本地网络的安全隧道。


站点1配置

首先创建一个新的阶段1配置文件及第2期建议使用适合您需要的更强或更弱的加密参数的条目。建议为每个菜单创建单独的条目,以便它们对每个对等项都是唯一的如果将来需要调整任何设置。这些参数必须在站点之间匹配,否则连接将无法建立。

/ip ipsec profile add dh-group=modp2048 ipsec -algorithm=aes-128 name=ike1-site2 /ip ipsec proposal add en -algorithms=aes-128-cbc name=ike1-site2 pfs-group=modp2048

继续配置同行.指定地址远程路由器的。该地址应该可以通过UDP/500和UDP/4500端口访问,因此请确保对路由器的防火墙采取适当的操作。指定名字对于这个对等体以及新创建的配置文件

/ip ipsec peer add address=192.168.80.1/32 name=ike1-site2 profile=ike1-site2

下一步是创建一个身份.对于基本的预共享密钥安全隧道,除了要设置强大的秘密同行这个恒等式也适用。

/ip ipsec identity add peer=ike1-site2 secret=thisisnotasecurepsk

如果安全问题,请考虑使用IKEv2和其他协议auth方法

最后,创建一个政策它控制网络/主机之间的流量应该加密。

/ip ipsec policy add src-address=10.1.202.0/24 src-port=any dst-address=10.1.101.0/24 dst-port=any tunnel=yes action=encrypt proposal=ike1-site2 peer=ike1-site2


站点2配置

office2的配置与office1几乎相同,只是配置了正确的IP地址。首先创建一个新的阶段1配置文件及第2期建议条目:

/ip ipsec profile add dh-group=modp2048 ipsec -algorithm=aes-128 name=ike1-site1 /ip ipsec proposal add en -algorithms=aes-128-cbc name=ike1-site1 pfs-group=modp2048

下一个是同行身份:

/ip ipsec peer add address=192.168.90.1/32 name=ike1-site1 profile=ike1-site1 /ip ipsec identity add peer=ike1-site1 secret=thisisnotasecurepsk

完成后,创建一个政策

/ip ipsec policy add src-address=10.1.101.0/24 src-port=any dst-address=10.1.202.0/24 dst-port=any tunnel=yes action=encrypt proposal=ike1-site1 peer=ike1-site1

此时,应该在两台路由器上建立隧道并建立两个IPsec安全联盟:

/ip ipsec active-peers print install -sa print

NAT和快速通道旁路

此时,如果您尝试通过IPsec隧道发送流量,它将不起作用,数据包将丢失。这是因为两个路由器都有NAT规则(伪装),在数据包加密之前改变源地址。日志含义由于报文的源地址与策略配置中配置的地址不匹配,路由器无法对报文进行加密。有关更多信息,请参见IPsec报文流示例。

为了解决这个问题,我们需要设置IP /防火墙/ NAT绕过规则。

办公室1路由器:

/ip firewall NAT add chain=srcnat action=accept place-before=0 src-address=10.1.202.0/24 dst-address=10.1.101.0/24

办公室2路由器:

/ip firewall NAT add chain=srcnat action=accept place-before=0 src-address=10.1.101.0/24 dst-address=10.1.202.0/24

如果在添加NAT bypass规则之前尝试建立IP连接,则必须清除现有连接的连接表或重启两台路由器。

将旁路规则放在所有其他NAT规则的顶部是非常重要的。

另一个问题是如果你有IP / Fasttrack启用后,报文将绕过IPsec策略。所以我们需要在FastTrack之前添加accept规则。

/ip firewall filter添加链=forward action=accept placebefore =1 src-address=10.1.101.0/24 dst-address=10.1.202.0/24 connection-state=established,related添加链=forward action=accept placebefore =1 src-address=10.1.202.0/24 dst-address=10.1.101.0/24 connection-state=established,related

但是,如果有相当数量的隧道,并且每个隧道上都有大量的流量,那么这会给路由器的CPU增加很大的负载。

解决办法是使用IP /防火墙/原料绕过连接跟踪,这样就消除了对上面列出的过滤规则的需要,并将CPU负载减少了大约30%。

/ip firewall raw add action=notrack chain=prerouting src-address=10.1.101.0/24 dst-address=10.1.202.0/24 add action=notrack chain=prerouting src-address=10.1.202.0/24 dst-address=10.1.101.0/24

站点到站点GRE IPsec隧道(IKEv2),使用DNS协议

本举例介绍在一个站点或两个站点都没有静态IP地址的情况下,如何在两台RouterOS设备之间建立安全、加密的GRE隧道。l雷竞技在进行此配置之前,有必要将DNS名称分配给其中一个设备,该设备将充当响应器(服务器)。为了简单起见,我们将使用RouterOS内置的DDNS服l雷竞技务IP /云

站点1(服务器)配置

这是侦听传入连接并充当响应器的一方。我们将使用模式配置为第二个站点提供IP地址,但首先,创建一个环回(空白)桥并为其分配一个IP地址,该IP地址将在稍后建立GRE隧道时使用。

/interface bridge add name=loopback /ip地址add address=192.168.99.1 interface=loopback

继续IPsec配置,首先创建一个新的阶段1配置文件及第2期建议使用适合您需要的更强或更弱的加密参数的条目。注意,这个配置示例将侦听所有传入的IKEv2请求,这意味着配置文件配置将在所有其他配置(例如RoadWarrior)之间共享。

/ip ipsec profile add dh-group=ecp256,modp2048,modp1024 enth -algorithm=aes-256,aes-192,aes-128 name=ike2 /ip ipsec proposal add auth-algorithms=null enth -algorithms=aes-128-gcm name=ike2-gre pfs-group=none

接下来,创建一个新的模式配置入口与应答器= yes.这将为另一个站点提供IP配置,并为策略生成提供主机(环回地址)。

/ip ipsec mode-config add address=192.168.99.2 address-prefix-length=32 name=ike2-gre split-include=192.168.99.1/32 system-dns=no

建议新建一个策略组将此配置与任何现有或未来的IPsec配置分开。

/ip ipsec策略组add name=ike -gre

现在是时候建立一个新的政策将匹配远端对等体的新动态地址和环回地址的模板。

/ip ipsec policy add dst-address=192.168.99.2/32 group=ike2-gre proposal=ike2-gre src-address=192.168.99.1/32 template=yes

下一步是创建一个同行将监听所有IKEv2请求的配置。如果您已经有这样的条目,您可以跳过此步骤。

/ip ipsec peer add exchange-mode=ike2 name=ike2 passive=yes profile=ike2

最后,设置一个身份这将通过预共享密钥身份验证与特定的秘密

/ip ipsec identity add generate-policy=port-strict mode-config=ike2-gre peer=ike2 policy-template-group=ike2-gre secret=test

服务器端现在已经配置好并监听所有IKEv2请求。请确保防火墙没有阻塞UDP/4500端口。

最后一步是创建GRE接口本身。以后在从客户端建立IPsec连接时也可以这样做。

/interface gre add local-address=192.168.99.1 name=gre-tunnel1 remote-address=192.168.99.2

配置GRE接口到远端网络的IP地址和路由。

/ip address add address=172.16.1.1/30 interface=gre-tunnel1 /ip route add dst-network=10.1.202.0/24 gateway=172.16.1.2

站点2(客户端)配置

与服务器配置类似,首先创建一个新的阶段1配置文件及第2期建议配置。由于此站点将是启动器,因此我们可以使用更具体的配置文件来控制使用哪些确切的加密参数,只需确保它们与服务器端配置的参数重叠即可。

/ip ipsec profile add dh-group=ecp256 enth -algorithm=aes-256 name=ike2-gre /ip ipsec proposal add auth-algorithms=null enth -algorithms=aes-128-gcm name=ike2-gre pfs-group=none

接下来,创建一个新的模式配置入口与应答器=没有.这将确保对等端从服务器请求IP和拆分网络配置。

/ip ipsec mode-config add name=ike -gre responder=no

建议创建一个新的策略组将此配置与任何现有或未来的IPsec配置分开。

/ip ipsec策略组add name=ike -gre

新建一个政策模板在客户端也是如此。

/ip ipsec policy add dst-address=192.168.99.1/32 group=ike2-gre proposal=ike2-gre src-address=192.168.99.2/32 template=yes

接着看同行配置。现在我们可以为下面的服务器指定DNS名称地址参数。显然,您也可以使用IP地址。

/ip ipsec peer add address=n.mynetname.net exchange-mode=ike2 name=p1。ez profile = ike2-gre

最后,创建一个身份为我们新创造的同伴。

/ip ipsec identity add generate-policy=port-strict mode-config=ike -gre peer=p1。Ez policy-template-group=ike2-gre secret=test

如果一切都做得好,应该会有一个新的充满活力的政策出现。

/ip ipsec policy print标志:T -模板,X -禁用,D -动态,I -无效,A -激活,* -默认0 T *组=默认src-address =:: / 0 dst-address =:: / 0协议=所有提案=默认模板=是的1 T组= ike2-gre src-address = 192.168.99.2/32 dst-address = =所有提案= ike2-gre 192.168.99.1/32协议模板=是的2 DA src-address = 192.168.99.2/32 src-port =任何dst-address = 192.168.99.1/32 dst-port =任何协议=所有的行动= =独特ipsec-protocols = esp隧道加密水平=是的sa-src-address = 192.168.90.1 sa-dst-address = (n.mynetname.net)的当前IP提议= ike2-gre ph2-count = 1

现在在两个站点之间建立了一个安全隧道,它将加密192.168.99.2 <=> 192.168.99.1地址之间的所有流量。我们可以使用这些地址来创建GRE隧道。

/interface gre add local-address=192.168.99.2 name=gre-tunnel1 remote-address=192.168.99.1

配置GRE接口到远端网络的IP地址和路由。

/ip address add address=172.16.1.2/30 interface=gre-tunnel1 /ip route add dst-network=10.1.101.0/24 gateway=172.16.1.1

公路勇士设置使用IKEv2与RSA认证

本举例介绍了一台接入Internet的设备(roadwarrior客户端)与一台作为服务器的RouterOS设备之间建立IPsec安全连接的方法。l雷竞技

l雷竞技RouterOS服务器配置

在配置IPsec之前,需要先建立证书。可以使用单独的证书颁发机构进行证书管理,但在本例中,自签名证书是在RouterOS中生成的l雷竞技系统/证书菜单。要将各种设备连接到服务器,需要满足一些证书要求:

  • 通用名称应包含服务器的IP或DNS名称;
  • SAN(主题备选名称)应具有服务器的IP或DNS;
  • 需要EKU(扩展密钥使用)tls-server和tls-client。

考虑到以上所有要求,生成CA和服务器证书:

/certificate add common-name=ca name=ca sign ca ca-crl-host=2.2.2.2 add common-name=2.2.2.2 subject-alt-name=IP:2.2.2.2 key-usage=tls-server name=server1 sign server1 ca=ca

现在在路由器上创建了有效的证书,添加一个新的阶段1配置文件及第2期建议条目pfs-group =没有:

/ip ipsec profile add name=ike2 /ip ipsec proposal add name=ike2 pfs-group=none

模式配置用于地址分配从IP /池:

/ip ipsec mode-config add address-pool=ike2-pool ranges=192.168.77.2-192.168.77.254 /ip ipsec mode-config add address-pool=ike2-pool address-prefix-length=32 name=ike2-conf . conf

因此,必须调整策略模板以只允许特定的网络政策,建议单独创建策略集团和模板。

/ip ipsec安全策略组add name=ike2-policies /ip ipsec安全策略add dst-address=192.168.77.0/24 group=ike2-policies proposal=ike2 src-address=0.0.0.0/0 template=yes

新建IPsec同行条目,将侦听所有传入的IKEv2请求。

/ip ipsec peer add exchange-mode=ike2 name=ike2 passive=yes profile=ike2

身份配置

的身份菜单允许匹配特定的远程对等体,并为每个对等体分配不同的配置。首先,创建一个默认身份,它将接受所有对等点,但将使用其证书验证对等点的身份。

/ip ipsec identity add auth-method=数字签名certificate=server1 generate-policy=port-strict mode-config=ike2-conf peer=ike2 policy-template-group=ike2-policies

如果对等体的ID (ID_i)与其发送的证书不匹配,则身份查找将失败。看到remote-id身份部分。

例如,我们想要分配一个不同的模式配置对于用户“A”,它使用证书“rw-client1”向服务器验证自己。首先,确保创建了一个新的模式配置,并准备好应用于特定用户。

/ip ipsec mode-config add address=192.168.66.2 address-prefix-length=32 name=usr_A split-include=192.168.55.0/24 system-dns=no

可以使用以下命令为用户“A”应用此配置配以=证书参数并指定其证书remote-certificate

/ip ipsec identity add auth-method=数字签名certificate=server1 generate-policy=port-strict match-by=certificate mode-config=usr_A peer=ike2 policy-template-group=ike2-policies remote-certificate=rw-client1

(可选)配置分裂隧道

拆分隧道是一种方法,它允许公路战士客户端只访问特定的安全网络,同时根据其内部路由表发送其余的流量(而不是通过隧道发送所有流量)。若要配置分割隧道,请更改为模式配置需要参数。

例如,我们将允许我们的公路战士客户端只访问10.5.8.0/24网络。

/ip ipsec mode-conf set [find name="rw-conf"] split-include=10.5.8.0/24

也可以发送一个特定的DNS服务器供客户端使用。默认情况下,system-dns = yes使用,它发送在路由器本身上配置的DNS服务器IP /域名.可以强制客户端使用不同的DNS服务器static-dns参数。

/ip ipsec mode-conf set [find name="rw-conf"] system-dns=no static-dns=10.5.8.1

虽然可以调整IPsec策略模板,使其只允许生成道路战士客户端政策到以下配置的网络split-include参数,这可能导致与不同供应商实现的兼容性问题(参见已知的限制).允许访问安全的网络,而不是调整策略模板IP /防火墙/过滤器放下其他的事情。

/ip firewall filter add action=drop chain=forward src-address=192.168.77.0/24 dst-address=!10.5.8.0/24

分离网络不是一种安全措施。客户端(发起者)仍然可以请求一个不同的阶段2流量选择器。

生成客户端证书

为客户端生成一个新证书,并用之前创建的CA对其签名。

/certificate add common-name=rw-client1 name=rw-client1 key-usage=tls-client sign rw-client1 ca=ca

PKCS12格式被大多数客户机实现所接受,因此在导出证书时,确保指定PKCS12。

/certificate export-certificate rw-client1 export-passphrase=1234567890 type=pkcs12

一个名为cert_export_rw-client1.p12现在位于路由器系统/文件部分。该文件应安全地传输到客户端设备。

通常PKCS12包还包含一个CA证书,但有些供应商可能没有安装这个CA,因此必须使用PEM格式单独导出自签名CA证书。

/certificate export-certificate ca type=pem

一个名为cert_export_ca.crt现在位于路由器系统/文件部分。该文件还应安全地传输到客户端设备。

PEM是另一种在不支持PKCS12的客户端软件中使用的证书格式。雷电竞app下载官方版苹果原理是差不多的。

/certificate export-certificate ca export-certificate rw-client1 export-passphrase=1234567890

现在有三个文件位于路由器文件部分:cert_export_ca.crtcert_export_rw-client1.crtcert_export_rw-client1.key应安全地传输到客户端设备。

已知的限制

下面列出了流行的客户端软件IKEv2实现的已知限制。雷电竞app下载官方版苹果

  • Windows将始终忽略由split-include和请求策略与目的地0.0.0.0/0 (TSr)。当生成IPsec-SA时,Windows请求DHCP option 249, RouterOS将以configured响应l雷竞技split-include自动网络。
  • 苹果的macOS和iOS都只接受前者split-include网络。
  • 苹果的macOS和iOS都将使用来自system-dnsstatic-dns仅当0.0.0.0/0时可配置split-include使用。
  • 虽然有些实现可以在阶段2中使用不同的PFS组,但建议使用pfs-group =没有建议以避免任何兼容性问题。

l雷竞技RouterOS客户端配置

在RouterOS中导入PKCS12格式的证书。l雷竞技

/certificate import file-name=cert_export_l雷竞技RouterOS_client. cerp12密码= 1234567890

现在在certificate菜单中应该有自签名CA证书和客户端证书。找出客户端证书的名称。

/证书打印

cert_export_l雷竞技RouterOS_client.p12_0是客户端证书。

建议单独创建阶段1配置文件及第2期建议配置不干扰任何现有的IPsec配置。

/ip ipsec安全框架add name=ike2-rw /ip ipsec安全提议add name=ike2-rw pfs-group=none

虽然可以使用默认值政策模板生成策略时,最好创建一个新策略集团和模板将此配置与任何其他IPsec配置分开。

/ip安全策略组add name=ike2-rw /ip安全策略组add group=ike2-rw proposal=ike2-rw template=yes

新建一个模式配置入口与应答器=没有这将从服务器请求配置参数。

/ip ipsec mode-config add name=ike -rw responder=no

最后,创建同行身份配置。

/ip ipsec peer add address=2.2.2.2/32 exchange-mode=ike2 name=ike2-rw-client /ip ipsec identity add auth-method=数字签名certificate=cert_export_RouterOS_clienl雷竞技t。P12_0 create -policy=port-strict mode-config=ike2-rw peer=ike2-rw-client policy-template-group=ike2-rw

验证连接是否成功建立。

/ip ipsec active-peers print install -sa print

启用源NAT动态规则生成功能

如果我们看一下生成的动态策略中,我们看到只有具有特定(接收方)的流量模式配置)源地址将通过隧道发送。但在大多数情况下,路由器需要通过隧道路由特定的设备或网络。在这种情况下,我们可以使用源NAT改变报文的源地址,以匹配模式配置地址。由于mode配置地址是动态的,所以不能创建静态源NAT规则。在Rol雷竞技uterOS中,可以为mode config客户端生成动态源NAT规则。

例如,我们在路由器后面有一个本地网络192.168.88.0/24,我们希望来自该网络的所有流量都通过隧道发送。首先,我们要做一个新的IP /防火墙/地址列表我们的本地网络由哪些组成

/ip firewall address-list add address=192.168.88.0/24 list=local

完成后,我们可以分配新创建的IP /防火墙/地址列表模式配置配置。

/ip ipsec mode-config set [find name=ike2-rw] src-address-list=local

验证隧道建立时动态生成正确的源NAT规则。

[admin@雷竞技网站MikroTik] > /ip firewall nat print标志:X - disabled, I - invalid, D - dynamic 0 D;;;Ipsec mode-config chain=srcnat action=src-nat to-addresses=192.168.77.254 src-address-list=local dst-address-list=!当地的

确保动态模式配置地址不是本地网络的一部分。

Windows客户端配置

在Windows计算机上打开PKCS12格式的证书文件。按照说明安装证书。确保选择了本地计算机存储位置。您现在可以进入网络和Internet设置-> VPN并添加新配置。填写“连接名称”、“服务器名称”或“地址”参数。在“VPN类型”下选择“IKEv2”。完成后,需要选择“使用机器证书”。这可以通过单击VPN连接的属性菜单在网络和共享中心中完成。设置位于Security选项卡下。

目前,Windows 10兼容以下第一阶段(配置文件)及第二阶段(建议)建议书集:

第一阶段
散列算法 加密算法 DH组
SHA1 3 des modp1024
SHA256 3 des modp1024
SHA1 aes - 128 - cbc modp1024
SHA256 aes - 128 - cbc modp1024
SHA1 aes - 192 - cbc modp1024
SHA256 aes - 192 - cbc modp1024
SHA1 aes - 256 - cbc modp1024
SHA256 aes - 256 - cbc modp1024
SHA1 aes - 128 gcm modp1024
SHA256 aes - 128 gcm modp1024
SHA1 aes - 256 gcm modp1024
SHA256 aes - 256 gcm modp1024


第二阶段
散列算法 加密算法 PFS集团
SHA1 aes - 256 - cbc 没有一个
SHA1 aes - 128 - cbc 没有一个
SHA1 3 des 没有一个
SHA1 DES 没有一个
SHA1 没有一个 没有一个

macOS客户端配置

在macOS计算机上打开PKCS12格式的证书文件,在“System”密钥链中安装证书。有必要手动将CA证书标记为受信任,因为它是自签名的。在系统选项卡下找到证书macOS Keychain Access应用程序,并将其标记为始终信任。

您现在可以进入System Preferences -> Network,并通过单击+按钮添加新的配置。选择“接口:VPN”,“VPN类型:IKEv2”,并为连接命名。远端ID必须等于服务器证书的common-name或subjAltName。本地ID可以为空。在“身份验证设置”下选择“无”,并选择客户端证书。现在可以测试连接性了。

目前,macOS兼容以下第一阶段(简介)及第二阶段(建议书)建议书集:

第一阶段
散列算法 加密算法 DH组
SHA256 aes - 256 - cbc modp2048
SHA256 aes - 256 - cbc ecp256
SHA256 aes - 256 - cbc modp1536
SHA1 aes - 128 - cbc modp1024
SHA1 3 des modp1024


第二阶段
散列算法 加密算法 PFS集团
SHA256 aes - 256 - cbc 没有一个
SHA1 aes - 128 - cbc 没有一个
SHA1 3 des 没有一个

iOS客户端配置

通常PKCS12包还包含一个CA证书,但iOS不安装此CA,因此必须使用PEM格式单独安装自签名CA证书。在iOS设备上打开这些文件,并按照说明安装两个证书。需要在iOS设备上将自签名CA证书标记为受信任证书。这可以在设置->常规->关于->证书信任设置菜单中完成。完成后,检查两个证书是否在Settings -> General -> Profiles菜单下标记为“已验证”。

您现在可以进入设置->常规-> VPN菜单并添加新配置。远端ID必须等于服务器证书的common-name或subjAltName。本地ID可以为空。

目前,iOS兼容以下第一阶段(简介)及第二阶段(建议书)建议书集:

第一阶段
散列算法 加密算法 DH组
SHA256 aes - 256 - cbc modp2048
SHA256 aes - 256 - cbc ecp256
SHA256 aes - 256 - cbc modp1536
SHA1 aes - 128 - cbc modp1024
SHA1 3 des modp1024


第二阶段
散列算法 加密算法 PFS集团
SHA256 aes - 256 - cbc 没有一个
SHA1 aes - 128 - cbc 没有一个
SHA1 3 des 没有一个

如果你通过WiFi连接到VPN, iOS设备可以进入睡眠模式并断开网络连接。

Android (strongSwan)客户端配置

目前,Android中没有IKEv2原生支持,但是,可以使用Google Play Store中的strongSwan将IKEv2引入Android。StrongSwan接受PKCS12格式的证书,所以在StrongSwan中设置VPN连接之前,确保您下载了PKCS12包到您的Android设备。完成后,在strongSwan中创建一个新的VPN配置文件,输入服务器IP,并选择“IKEv2证书”作为VPN类型。选择User证书时,按Install并通过指定PKCS12包执行证书提取过程。保存配置文件,并在VPN配置文件上按下测试连接。

通过勾选“显示高级设置”复选框,可以在strongSwan中指定自定义加密设置。目前,strongSwan默认兼容以下第1阶段(简介)及第二阶段(建议书)建议书集:

第一阶段
散列算法 加密算法 DH组
沙* AES - * cbc modp2048
沙* AES - * cbc ecp256
沙* AES - * cbc ecp384
沙* AES - * cbc ecp521
沙* AES - * cbc modp3072
沙* AES - * cbc modp4096
沙* AES - * cbc modp6144
沙* AES - * cbc modp8192
沙* AES - * gcm modp2048
沙* AES - * gcm ecp256
沙* AES - * gcm ecp384
沙* AES - * gcm ecp521
沙* AES - * gcm modp3072
沙* AES - * gcm modp4096
沙* AES - * gcm modp6144
沙* AES - * gcm modp8192


第二阶段
散列算法 加密算法 PFS集团
没有一个 aes - 256 gcm 没有一个
没有一个 aes - 128 gcm 没有一个
SHA256 aes - 256 - cbc 没有一个
SHA512 aes - 256 - cbc 没有一个
SHA1 aes - 256 - cbc 没有一个
SHA256 aes - 192 - cbc 没有一个
SHA512 aes - 192 - cbc 没有一个
SHA1 aes - 192 - cbc 没有一个
SHA256 aes - 128 - cbc 没有一个
SHA512 aes - 128 - cbc 没有一个
SHA1 aes - 128 - cbc 没有一个

Linux (strongSwan)客户端配置

下载PKCS12证书包并移动到/etc/ipsec。d /私人目录。

将导出的私钥密码添加到/etc/ipsec中。strongSwan_client. secrets文件其中“P12”为文件名,“1234567890”为密码。

: P12 strongSwan_client. P12p12“1234567890”

在/etc/ipsec.conf文件中添加一个新的连接

conn "ikev2" keyexchange=ikev2 ike=aes128-sha1-modp2048 esp=aes128-sha1 leftsourceip=%modeconfig leftcert=strongSwan_client. cnp12 leftfirewall=yes right=2.2.2.2 rightid="CN=2.2.2.2" rightsubnet=0.0.0.0/0 auto=add . p12

现在可以重新启动(或启动)ipsec守护进程并初始化连接

$ ipsec restart $ ipsec up ikev2

使用IKEv2,由用户管理器处理EAP-MSCHAPv2认证的Road Warrior设置(RouterOS v7)l雷竞技

本举例介绍连接Internet的设备(公路勇士客户端)与运行RouterOS的设备(分别作为IKEv2服务器和User Manager)之间建立IPsec安全连接的方法。l雷竞技可以在网络中的单独设备上运行用户管理器,但是在本例中,用户管理器和IKEv2服务器将在同一设备(Office)上配置。

l雷竞技RouterOS服务器配置

需求

要使这个设置工作,路由器有几个先决条件:

  1. 路由器的IP地址应该有一个有效的公共DNS记录——IP云可以用来实现这一点。
  2. 路由器应该通过TCP/80端口在Internet上可达——如果服务器在NAT之后,应该配置端口转发。
  3. 路由器上应该安装User Manager包。

生成让我们加密证书

在EAP-MSCHAPv2身份验证期间,必须进行TLS握手,这意味着服务器必须具有可由客户端验证的证书。为了简化这一步,我们将使用Let's Encrypt证书,大多数操作系统都可以验证该证书,而无需用户进行任何干预。要生成证书,只需在Certificates菜单下启用SSL证书。缺省情况下,该命令使用IP Cloud提供的动态DNS记录,但也可以指定自定义DNS名称。请注意,DNS记录应该指向路由器。

enable-ssl-certificate /证书

如果证书生成成功,您应该看到在Certificates菜单下安装了Let's Encrypt证书。

/证书打印名称~"letsencrypt"的详细信息

配置用户管理器

首先,允许接收来自本地主机(路由器本身)的RADIUS请求:

/user-manager router add address=127.0.0.1 comment=localhost name=local shared-secret=test

启用User Manager并指定将用于对用户进行身份验证的Let's Encrypt证书(将证书的名称替换为设备上安装的证书)。

/user-manager set certificate="letsencrypt_2021-04-09T07:10:55Z" enabled=yes

最后,添加客户端将用于向服务器进行身份验证的用户及其凭据。

/user-manager user add name=user1 password=password

配置RADIUS客户端

为了使路由器使用RADIUS服务器进行用户身份验证,需要添加一个新的RADIUS客户端,该客户端具有我们已经在user Manager上配置的相同的共享密钥。

/radius add address=127.0.0.1 secret=test service=ipsec

IPsec (IKEv2)服务器配置

添加一个新的阶段1配置文件及第2期建议条目pfs-group =没有:

/ip ipsec profile add name=ike2 /ip ipsec proposal add name=ike2 pfs-group=none

模式配置用于从IP/池分配地址。

/ip ipsec mode-config add address-pool=ike2-pool ranges=192.168.77.2-192.168.77.254 /ip ipsec mode-config add address-pool=ike2-pool address-prefix-length=32 name=ike2-conf . conf

由于需要调整策略模板,使其只允许特定的网络策略,因此建议单独创建策略组和模板。

/ip ipsec安全策略组add name=ike2-policies /ip ipsec安全策略add dst-address=192.168.77.0/24 group=ike2-policies proposal=ike2 src-address=0.0.0.0/0 template=yes

创建一个新的IPsec对等项,它将侦听所有传入的IKEv2请求。

/ip ipsec peer add exchange-mode=ike2 name=ike2 passive=yes profile=ike2

最后,创建一个新的IPsec身份条目,它将匹配所有尝试使用EAP进行身份验证的客户端。注意,必须指定生成的Let's Encrypt证书。

/ip ipsec identity add auth-method=eap-radius certificate="letsencrypt_2021-04-09T07:10:55Z" generate-policy=port-strict mode-config=ike2-conf peer=ike2 \ policy-template-group=ike2-policies

(可选)配置分裂隧道

拆分隧道是一种方法,它允许公路战士客户端只访问特定的安全网络,同时根据其内部路由表发送其余的流量(而不是通过隧道发送所有流量)。若要配置分割隧道,请更改为模式配置需要参数。

例如,我们将允许我们的公路战士客户端只访问10.5.8.0/24网络。

/ip ipsec mode-conf set [find name="rw-conf"] split-include=10.5.8.0/24

也可以发送一个特定的DNS服务器供客户端使用。默认情况下,system-dns = yes使用,它发送在路由器本身上配置的DNS服务器IP /域名.可以强制客户端使用不同的DNS服务器static-dns参数。

/ip ipsec mode-conf set [find name="rw-conf"] system-dns=no static-dns=10.5.8.1


分离网络不是一种安全措施。客户端(发起者)仍然可以请求一个不同的阶段2流量选择器。

(可选)为用户分配静态IP地址

可以使用RADIUS Framed-IP-Address属性为任何用户分配静态IP地址。

/user-manager user set [find name="user1"] attributes=Framed-IP-Address:192.168.77.100 shared-users=1

为避免冲突,静态IP地址应排除在其他用户的IP池之外,并将特定用户的shared-users设置为1。

(可选)计费配置

为了跟踪每个用户的正常运行时间、下载和上传统计数据,可以使用RADIUS计费。缺省情况下,IPsec已启用RADIUS计费功能,但建议配置定时向RADIUS服务器发送统计信息的临时更新定时器。如果路由器需要处理大量的并发会话,建议增加更新定时器,以避免增加CPU的使用。

/ip ipsec设置set interim-update=1m

L2TP/IPsec基本配置

本示例演示了如何在RouterOS上轻松建立L2TP/IPsec服务器,用于公路战士连接(适用于Windows、Android、iOS、macl雷竞技OS和其他厂商的L2TP/IPsec实现)。

l雷竞技RouterOS服务器配置

第一步是启用L2TP服务器:

/interface l2tp-server server set enabled=yes use-ipsec=required ipsec-secret=mySecret default-profile=default

使用ipsec设为要求确保只接受IPsec封装的L2TP连接。

现在它所做的是启用L2TP服务器并创建具有指定密钥的动态IPsec对等体。

[admin@雷竞技网站MikroTik] /ip ipsec peer> print 0 D address=0.0.0.0/0 local-address=0.0.0.0 passive=yes port=500 auth-method=pre-share -key secret="123" generate-policy=port-strict exchange-mode=main-l2tp send-initial-contact=yes nat-traversal=yes hash-algorithm=sha1 cn -algorithm=3des,aes-128,aes-192,aes-256 dh-group=modp1024 lifetime=1d dpd-interval=2m dpd-maximum-failures=5

如果存在静态IPsec对等体配置,则必须小心。

下一步是创建VPN池并添加用户。

/ip pool add name=vpn-pool range=192.168.99.2-192.168.99.100 /ppp配置文件set default local-address=192.168.99.1 remote-address=vpn-pool /ppp secret add name=user1 password=123 add name=user2 password=234

现在,路由器已经准备好接受L2TP/IPsec客户端连接。

l雷竞技RouterOS客户端配置

要使Rol雷竞技uterOS作为L2TP/IPsec客户端,只需添加一个新的L2TP客户端即可。

/interface l2tp-client add connect-to=1.1.1.1 disabled=no ipsec-secret=mySecret name=l2tp-out1 \ password=123 use-ipsec=yes user=user1

自动创建动态IPsec对等体和策略配置。

故障诊断/常见问题解答

阶段1未能获得有效提案

[admin@雷竞技网站MikroTik] /log> print (..) 17:12:32 ipsec,没有找到合适的提议。17:12:32 ipsec,error 10.5.107.112 failed to get valid proposal.日志含义17:12:32 ipsec,error 10.5.107.112 failed to pre-process ph1 packet (side: 1, status 1). 17:5.107.112 error 10.5.107.112 phase1 negotiation failed。(. .)

对等端无法协商加密参数,导致连接断开。为了解决这个问题,可以打开IPSec的日志调试开关,找出对端对等体提出的参数,并对配置进行相应的调整。

[admin@雷竞技网站MikroTik] /system logging> add topics=ipsec,!调试
[admin@雷竞技网站MikroTik] /log> print (..) 17:21:08 ipsec被拒绝的hashtype: DB(prop#1:trns#1):Peer(prop#1:trns#1) = MD5:SHA 17:21:08 ipsec被拒绝的hashtype: DB(prop#1:trns#2):Peer(prop#1:trns#1) = 3DES-CBC:AES-CBC 17:21:08 ipsec被拒绝的hashtype: DB(prop#1:trns#2):Peer(prop#1:trns# 2) = AES-CBC:3DES-CBC 17:21:08 ipsec被拒绝的hashtype: DB(prop#1:trns#1):Peer(prop#1:trns#2) = AES-CBC:3DES-CBC 17:21:08 ipsec被拒绝的hashtype: DB(prop#1:trns#1):Peer(prop#1:trns#2) = MD5:SHA 17:21:08 ipsec被拒绝的hashtype: DB(prop#1:trns#1):Peer(prop#1:trns#2) = MD5:SHA 17:21:08 ipsec被拒绝的hashtype: DB(prop#1:trns#1):Peer(prop#1:trns#2) = MD5:SHA 17:21:08日志含义DB(prop#1:trns#2):Peer(prop#1:trns#2) = MD5:SHA 17:21:08 ipsec,没有找到合适的提议。17:21:08 ipsec,错误10.5.107.112未能获得有效的提议。17:21:08 ipsec,error 10.5.107.112 failed to pre-process ph1 packet (side: 1, status 1). 17:21:08 ipsec,error 10.5.107.112 phase1 negotiation failed。(. .)

本例中,对端要求使用SHA1作为哈希算法,但本地路由器配置了MD5。本端配置列号“:”前的参数,远端配置列号“:”后的参数。

“phase1 negotiation failed to time up”是什么意思?

对等体之间存在沟通问题。可能的原因包括:第一阶段IP地址配置错误;防火墙阻止UDP端口500和4500;对等体间NAT转换不能正确转换IPsec协商报文。当没有正确使用local-address参数时,也会出现此错误消息。更多信息请点击这里。

随机丢包或隧道上的连接非常慢,启用数据包嗅探器/火炬修复问题?

问题是,封装前的报文被送到Fasttrack/FastPath,从而绕过了IPsec策略检查。解决方案是将需要封装/解封装的流量排除在Fasttrack之外,参见配置示例。

如何启用ike2?

对于启用ike2的基本配置非常简单,只需将对等体设置中的交换模式更改为ike2。

致命的no - proposal - selected通知消息?

发送的远程对等体通知它不能接受提议的算法,要找到问题的确切原因,请查看远程对等体调试日志或配置,并验证客户机和服务器都具有相同的算法集。

我只能朝一个方向ping ?

这种情况下的典型问题是严格的防火墙,防火墙规则只允许在一个方向上创建新连接。解决方案是重新检查防火墙规则,或者显式地接受所有应该封装/解封装的流量。

我可以只允许加密的流量吗?

是的,你可以的,明白吗?”只允许IPsec封装的流量”的例子。

我在StrongSwan上启用IKEv2 REAUTH,得到错误“发起者没有按要求重新认证”。

l雷竞技RouterOS不支持rfc4478,必须在StrongSwan上关闭reauth。

  • 没有标签