有详细了解 IPSec 的同学吗?
最近业务上需要接入一家国企内部的 IPsec VPN ,对方给的配置信息较为含糊(或者说是本人对 IPSec 不甚了解),我尝试创建 Windows 10 内置的 VPN 连接,各种配置试了试均不成功。
对方给的配置信息:
阶段 1:
主模式
加密:3des
验证:md5
算法:group 2
阶段 2:
加密:3des
验证:md5
算法:group 2
源 IP 地址:xx.xx.xx.xx
目的 IP 地址:xx.xx.xx.xx
共享密钥:xxxxxxxx
除此之外再无多余信息,配置起来真让人头大。
这个配置信息,是纯 IPSec 的 VPN (不带 L2TP 的)还是 IPsec + L2TP 的 VPN ?
我在 Windows 10 下的网络设置中,创建内置的 VPN ,类型试了“IKEv2”、“L2TP/IPSec 预共享密钥”这两种,创建的时候,用户名密码留空,但之后连接的时候,必须输入用户名密码才行,而对方的这个 VPN 配置是没有用户名密码的。
此外,关于 3des/md5/group2 这些算法的配置,Win10 图形界面里没有,网上搜了下,似乎是在组策略里配置。在“Windows Defender 防火墙高级安全”右键属性,选择 IPSec 选项卡。是在这里配置吗?
1
crab 2021-11-30 01:31:02 +08:00
|
2
einsdisp OP @crab 早看过了,没用,还是要输入用户名密码。关键我不太了解,对方给的这个配置,是纯 IPsec 还是 IPsec+L2TP 。网上的教程大多数是针对 IPsec+L2TP 的。
|
3
cmlz 2021-11-30 02:44:42 +08:00 via Android
这是纯 IPsec ,你需要企业级路由器来接入,比如 ROS ,华为,思科之类路由。
|
4
einsdisp OP @cmlz
感谢回复! 我研究了下,对方的这个配置似乎是 IKEv1 ?而 windows 只支持 IKEv2 ? 此外,暂时没有企业级“硬件”路由器,使用 OpenWRT / pfSense 这种软路由,或者 linux 系统下的软件包 strongswan 应该也行吧(但是配置文件太复杂了,还在研究中)? 另外,很重要的一点,这种纯 IPsec 是否支持 NAT ? 我们这里的网关设备虽有公网 ip ,但一般轻易不动(最多设置个端口转发)。内网获得的是网关设备分发的内网 DHCP 地址(类似 192.168.x.x )。 不操作网关设备本身,只在内网的机器上折腾是否可行?比方说在内网另安装一个软路由系统(或者使用 linux 上 strongswan 软件包),或者干脆在内网添加一个硬件企业级路由器(如果软路由不管用),是否可行? 如果不可行,在网关上设置将 IPsec 的相关的端口转发到内网的 ipsec 客户端机器上是否可行? |
5
cmlz 2021-11-30 04:29:03 +08:00 via Android
对方不支持野蛮模式接入,所以你必须有公网固定 IP 的路由或者 Linux 才能连通。
|
6
einsdisp OP @cmlz
谢谢回复! 1 、对方的这个配置似乎是 IKEv1 么? 2 、公网固定 IP 有。是否必须在路由设备上配置 ipsec ?如果路由设备不动,只在内网的机器上找一台 linux 进行 ipsec 配置是否可行? |
7
einsdisp OP @cmlz
想问问,根据对方给的这配置能否判断是否支持 NAT 穿越? 背景是这样的,我们这个路由设备可以配置端口转发到内网的机器,但要在路由设备上直接配置 ipsec 暂时不方便。如果能在内网找一台机器配置 ipsec 是最好的。 |
8
cmlz 2021-11-30 10:52:34 +08:00 via Android
上面回答得很清楚了,内网 IP ,或者映射都不行的,必须是有固定公网 IP 的网关才能连接。至于是 IKEv1 还是 IKEv2 那得问对方,因为在设置时是可选的。
|
10
einsdisp OP @cmlz 是否用 strongswan 并了解其配置?可以的话,愿意 200 元有偿帮我看下,这玩意配置文件挺复杂,目前还没搞定。把你联系方式发我邮箱,我 id 爱特 gmail 。
|
12
einsdisp OP @cmlz
刚刚尝试,直接把公网网线接入一台 linux 系统,安装配置好 strongswan ,可以连接成功,但是无法 ping ,`ip` 命令显示并没有多出一张虚拟网卡。以前我用 openvpn ,连接成功后会多一张虚拟 interface ,可对这个 interface 配置路由策略。 `/etc/ipsec.conf`配置: ``` config setup charondebug="all" # strictcrlpolicy=yes # uniqueids = no conn testvpn auto=add type=tunnel keyexchange=ikev1 #authby=secret leftauth=psk rightauth=psk left=<我方公网 IP> leftsubnet=<我方内网 IP>/24 right=<对方公网 IP> rightsubne=<对方内网 IP>/24 ike=3des-md5-modp1024 esp=3des-md5-modp1024 aggressive=no keyingtries=%forever ikelifetime=86400s lifetime=86400s #dpddelay=30s #dpdtimeout=120s dpdaction=restart ``` |
13
cmlz 2021-12-01 09:39:21 +08:00
IPsec 是不会生成虚拟网卡的,没配过 strongswan ,但我的经验是 Linux 需要开启转发功能,在隧道建立后,添加静态路由,指定自己内网出口的下一跳为对方内网接口 IP ,这样才能连通两端内网。
|
14
julyclyde 2021-12-01 13:38:19 +08:00
阶段 1 、阶段 2 ,那肯定是 IKE/IPsec 了。如果是 ppp 系列的话需要用户名密码的
不过似乎还应该给双方的 IP 段才能凑齐所有信息? 你拿个 linux 过去连,然后看看日志信息吧 |