RouterOS(ros)与云上VPC通过IPsec实现内网互通 - 涵盖GUI/CLI两种配置方式

一、前言

ipsec诞生于20世纪90年代,迄今为止,在实现内网互通解决方案中ipsec都是较为常用的。不少网关设备都会考虑集成ipsec的能力,ros便是如此,它作为一个软路由系统,支持的ipsec算法较为完善,本文将以GUI、CLI两种方式讲解ros的ipsec配置,与云上VPC网络实现内网互通。

架构图

二、云上VPN网关与通道配置

1.创建VPN网关

在腾讯云VPN控制台新建VPN网关,并选择需要被打通的VPC,如果涉及到云上多个VPC与云下互通,则需要使用云联网类型网关。

2.创建VPN通道

如下所示创建SPD策略型通道,填写基本配置,本端vpc、vpn网关、对端网关IP:

通信模式可选目的路由和SPD策略类型,具体区别可参考官方文档说明

选择IKE版本、IKE算法、协商模式、远端标识:

需要注意的是,远端标识如果选FQDN,可以是域名也可以是任何标识。是域名的时候,它也只是一个标识,而且云下的本地标识要和云上配置的一样,不要误以为会跟随域名解析到的IP地址来和对端协商,对端网关在第一步基本配置的时候就已经固定了。

配置IPsec算法,生存周期等:

最后点击完成即可。

3.将VPC路由指向VPN网关

修改VPC路由表,将指向192.168.1.0/24的目的路由,下一跳到VPN网关。

到此云上的配置已经完成。

三、GUI模式配置Ros IPsec

1.配置IPsec Profile

winbox登陆到ros后,在IP -> IPsec里打开IPsec配置菜单:

配置IPsec profile:

DH group用来确定密钥交换过程中使用的密钥强度,强度越高开销也会越高,对应比特位参考如下表格:

DH group

Modulus

1

768 bits

2

1024 bits

5

1536 bits

14

2048 bits

15

3072 bits

16

4096 bits

19

ecp256 bits

20

ecp384 bits

21

ecp521 bits

2.配置对端Peer

如下图配置对端网关、协商模式、引用的ipsec profile等:

3.配置身份验证(Identities)

配置用于身份验证的字段,包括本端标识、远端标识、预共享密钥等:

4.配置IPsec Proposal

配置ipsec提议,指定认证算法、加密算法等:

5.配置感兴趣流(Policies)

如下配置策略,指定本端和对端通信的网段即协议,并采用隧道模式(Tunnel):

6.增加NAT ACCEPT规则

增加一条ACCEPT允许规则,并把优先级调整到第一位:

增加一条accept允许规则:

之后鼠标拖动让此规则置顶。

7.查看IPsec状态并测试连通性

上面配置完毕后,回过头来看IPsec的连接状态及系统日志:

可以看到和云上VPC网段已经建联成功。

连通性测试也正常:

到此,本端和云上VPC已实现内网互通。

四、CLI模式配置Ros IPsec

当某些特殊场景下,ros关闭了winbox登陆,只允许ssh的情况下,CLI并发挥用武之地,配置方法和GUI一致,只是用命令行替代图形界面操作,仅此而已,因此在非必要情况下,要写自动化脚本除外,都建议采用GUI配置,对新手较为友好。

1.配置IPsec Profile

[admin@MikroTik] > /ip ipsec profile
[admin@MikroTik] /ip ipsec profile> add dh-group=modp768 hash-algorithm=md5 enc-algorithm=aes-128 name=to_tencent
[admin@MikroTik] /ip ipsec profile>

2.配置对端Peer

[admin@MikroTik] /ip ipsec profile> /ip ipsec peer
[admin@MikroTik] /ip ipsec peer> add address=119.91.254.122 name=to_tencent profile=to_tencent exchange-mode=main
[admin@MikroTik] /ip ipsec peer>

3.配置身份验证(Identities)

[admin@MikroTik] /ip ipsec profile> ..
[admin@MikroTik] /ip ipsec> identity add peer=to_tencent auth-method=pre-shared-key secret=123456
[admin@MikroTik] /ip ipsec> 

4.配置IPsec Proposal

[admin@MikroTik] /ip ipsec> proposal add name=to_tencent auth-algorithms=md5 enc-algorithms=aes-128-cbc pfs-group=none 
[admin@MikroTik] /ip ipsec> 

5.配置感兴趣流(Policies)

[admin@MikroTik] /ip ipsec> policy add peer=to_tencent tunnel=yes src-address=192.168.1.0/24 dst-address=10.100.1.0/24 protocol=all proposal=to_tencent
[admin@MikroTik] /ip ipsec> 

6.增加NAT ACCEPT规则

增加一条NAT规则,并把优先级调整到第一位:

[admin@MikroTik] /ip firewall nat> /ip ipsec 
[admin@MikroTik] /ip ipsec> /ip firewall nat
[admin@MikroTik] /ip firewall nat> print all   #如果规则较多一页展示不完,按Enter键翻页,否则会影响下面的move操作找不到items
[admin@MikroTik] /ip firewall nat> move 20 0
[admin@MikroTik] /ip firewall nat> 

7.查看IPsec状态并测试连通性

[admin@MikroTik] /ip firewall> /ip ipsec 
[admin@MikroTik] /ip ipsec> active-peers print where comment=to_tencent
Flags: R - responder, N - natt-peer 
 #    ID                   STATE              UPTIME          PH2-TOTAL REMOTE-ADDRESS                                                                                          DYNAMIC-ADDRESS                                                                
 0  N ;;; to_tencent
                           established        10m34s                  1 119.91.254.122                                                                                         
[admin@MikroTik] /ip ipsec> installed-sa print where (spi=0x2953159 or spi=0x8051BFF6) and (src-address="113.87.48.200:4500" or dst-address~"113.87.48.200")
Flags: H - hw-aead, A - AH, E - ESP 
 0  E spi=0x2953159 src-address=119.91.254.122:4500 dst-address=113.87.48.200:4500 state=mature auth-algorithm=md5 enc-algorithm=aes-cbc enc-key-size=128 auth-key="75dfa24b76a571dcc9eccbb5c48b5b5d" enc-key="df47098bf78a98a7be4e45b1f2a64908" 
      addtime=aug/28/2022 17:22:10 expires-in=19m17s add-lifetime=24m/30m current-bytes=3303 current-packets=19 replay=128 

 1  E spi=0x8051BFF6 src-address=113.87.48.200:4500 dst-address=119.91.254.122:4500 state=mature auth-algorithm=md5 enc-algorithm=aes-cbc enc-key-size=128 auth-key="20e63c4d95095d1f8d96c9e5b0f256cf" enc-key="8d33ed1bea1d2df33f8aa8a28fd073b4" 
      addtime=aug/28/2022 17:22:10 expires-in=19m17s add-lifetime=24m/30m current-bytes=4121 current-packets=25 replay=128 
[admin@MikroTik] /ip ipsec> /ip firewall connection print where tcp-state~"est" and (src-address="^192.*" or dst-address~"^10.100.1.*:[0-9]+")
Flags: E - expected, S - seen-reply, A - assured, C - confirmed, D - dying, F - fasttrack, s - srcnat, d - dstnat 
 #          PROTOCOL SRC-ADDRESS           DST-ADDRESS           TCP-STATE   TIMEOUT     ORIG-RATE REPL-RATE ORIG-PACKETS REPL-PACKETS      ORIG-BYTES      REPL-BYTES
 0  SAC     tcp      192.168.1.12:48964    10.100.1.6:18888      established 23h51m23s        0bps      0bps           23           18           4 009           3 263
[admin@MikroTik] /ip ipsec> 

可以看到建联是成功的,使用本端客户端测试:

到此,CLI模式配置也大功告成。

五、建联过程中涵盖的报错及其含义

报错

原因

invalid HASH_V1 payload length, decryption failed? could not decrypt payloads message parsing failed

预共享密钥不一致。

parsed IKE_SA_INIT response 0 N(NO_PROP) received NO_PROPOSAL_CHOSEN notify error received AUTHENTICATION_FAILED error notify

IKE协议版本不一致。

received AUTHENTICATION_FAILED error notifyed

协商模式不一致。

IKE IDir xxxx does not match to xxxx

本端标识和远端标识不一致。

IKE sending retransmit 1 of request message ID 0, seq 1

对端网关不响应。

received UNSUPPORTED_CRITICAL_PAYLOAD error notify

创建用户网关时,设置错误的公网IP。

received INVALID_ID_INFORMATION error notify

主模式下感兴趣流不一致。

received HASH payload does not match integrity check failed

野蛮模式下感兴趣流不一致。

parsed INFORMATIONAL_V1 request xxxx HASH N(NO_PROP) received NO_PROPOSAL_CHOSEN error notify

加密算法或认证算法不一致。

ESP:AES_CBC_256/HMAC_SHA1_96/MODP_1024/NO_EXT_SEQ no matching proposal found, sending NO_PROPOSAL_CHOSEN

DH分组不一致。

建联过程中遇到各类报错,首先可以对比两端参数配置、算法等是否完全保持一致,常见问题及报错含义部分,可参照腾讯云阿里云官方文档说明。

最后,附上PDF版本:

原文地址:https://cloud.tencent.com/developer/article/2085392

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


所以很多人都会选择将这些生活琐事来交给智能化产品,在众多产品中,扫拖机器人所给我们带来的便利性最强,扫地、拖地全都一气呵成,不需要人为过多干预,不过目前大多数扫拖机器人对于双手解放得不彻底。而石头作为
“昨天的经历都将成为明天的力量。” 将绝大部分精力都奉献给璃月港的刻晴,可以说是《原神》中的高人气角色了,虽然是常驻角色,并且对于普通玩家来说……刻师傅别刮了……不过作为开服就存在的角色,还有独特的剑法
最近,全球知名的通信产业盛会MWC 2024(2024世界移动通信大会)正式召开,其中,联发科以“连接AI宇宙”(Connecting the AI-verse)为主题,为大众展示出一系列在AI和移动通信技术等领域的最新突破,吸引了大量行业
今年上半年有很多值得关注的机型,其中华为最新的影像旗舰华为P70 Art也自然受到了业界不少的关注目光,目前关于这款机型的轮廓图已经在网上曝光。
目前,2024世界移动通信大会(MWC)正在西班牙巴塞罗那举行,值得一提的是,此次大会参展中国厂商非常多,包括华为、中兴、小米、荣耀等等多家厂商均在其列。
就在去年,真我推出了11 Pro+,用一个2亿像素传感器和zoom变焦功能,开启了中端手机影像的长焦大战,而后友商才姗姗来迟的跟进了2亿像素传感器。
【手机之家新闻】一年一度的MWC已经于当地时间2月26日在巴塞罗那正式开展,在本次MWC2024上全球各大厂商齐聚一堂,展出自家最新的技术与产品,其中中兴就参展本次MWC2024,并且展出了诸多面向企业端的产品,而旗下的
近日,联发科在MWC 2024(2024 世界移动通信大会)上展出了一系列令人瞩目的AI和移动通信技术突破,以“连接AI宇宙”(Connecting the AI-verse)的展厅吸引了无数业界精英和媒体的目光。特别是其现场的生成式AI技术
虽然目前国内已经有不少厂商入局折叠屏产品,但是努比亚却迟迟没有入局。不过在近日举办的MWC 2024展会上,努比亚发布了自家首款折叠屏手机——努比亚Flip,预计国内很快也会上市。
MWC 2024正在西班牙巴塞罗那举办,和往年一样,荣耀这次依旧携众多新产品、新技术参会。荣耀Magic6 Pro、荣耀Magic V2 RSR保时捷设计的机型在海外正式发布,并且还展示了魔法大模型、任意门等诸多新技术。
MWC 2024正在西班牙巴塞罗那如火如荼地举行,其中小米也参加了今年的大会,在会上发布了在国内大受欢迎的小尺寸旗舰——小米14。值得一提的是,高通公司CEO安蒙甚至亲临发布会现场为这款机型助阵。
《原神》是一直以来在机圈深受欢迎的游戏,在充满幻想的提瓦特大陆上,你可以邂逅不少性格迥异、能力独特的伙伴。而一加Ace系列一直就拥有非常强烈的电竞属性,也是畅玩《原神》的热门机型,而在本月,一加Ace 3将推
有不少网友发现,今年新机的发布时间相对于往年大幅提前,很多厂商在春节之前密集发布了自己最新的中高端机型,给人一种年后没什么新机可发了的感觉。不过魅族全新的大杯机型——魅族21 PRO非常值得期待,魅族科技也
2022年7月,小米12S Ultra正式发布,这款产品率先将1英寸大底主摄引入到移动影像领域,同时凭借鲜明的徕卡影调给人留下深刻的印象,同时这款产品也被视为了影像旗舰地位的机型。如果从那时算起,到现在差不多已经快过
随着智能手机的日益普及和智能化进程的加速,智能穿戴设备成为了人们关注的焦点。各大智能手机厂商纷纷进军智能穿戴市场,试图在这一新兴领域抢占先机。
早在去年秋天,HyperOS操作系统发布的时候,小米便勾勒出了“人车家全生态”的美好蓝图,而在这其中,小米的多终端统一战略是核心,目前已经有不少小米产品预装或者接受到了HyperOS操作系统的推送,在过去几个月的时
今年雷军将把更多的精力放在小米汽车上,所以接下来的手机业务将由刚刚兼任小米品牌总经理卢伟冰接管。同时雷军也在微博上表示小米2024年开年旗舰——小米14 Ultra即将在近期发布,并且将有卢伟冰进行讲解。另外,卢
新的一年有龙则灵,有愿必达。自1月19日起,荣耀加码“新年荣耀,一起成龙”年货节,在全国荣耀线下门店上线了“新年许愿处”、“龙运当头”等趣味活动,吸引大批消费者到店打卡许愿,戴龙头迎好运。与此同时,为了回
小米在官网微博中已经透露了关于小米14 Ultra信息,所以新机上市应该不会太晚。根据德国莱茵的官方消息,目前小米14 Ultra(型号为24030PN60G)获得了莱茵无频闪认证,表明这款手机可以有效减轻屏幕给用户带来的视觉疲
2月22日,上海广播电视台与华为举办鸿蒙合作签约仪式,宣布其官方客户端看看新闻APP将基于HarmonyOS NEXT鸿蒙星河版启动鸿蒙原生应用开发,为用户提供更加极致的新闻资讯服务体验。此次合作标志着上海广播电视台成为全国