OPNsense新版本使用了全新的IPsec配置界面,配置过程与旧版本存在较大差异。本文介绍使用 EAP-MSCHAPv2 认证配置IKEv2远程访问的方法,EAP-TLS 认证请自行测试。
EAP-MSCHAPv2是基于服务器证书和EAP预共享密钥(用户名+密码)的配置,可用于不同的客户端,易于设置。客户端访问需要安装CA证书和服务器证书。
添加证书
转到 系统 > 证书 > 颁发,新建一个自签名CA,内容如下:

点击保存,转到证书菜单,新建一个服务器证书。

证书类型选服务器证书,证书颁发机构选中前面创建的CA,通用名称与后面的IPsec连接的本地认证ID保持一致。
添加IP池
转到 VPN > IPsec > 连接 > 池,创建一个IPv4地址池,为所有访问的VPN用户自动分配地址。

如果不想将DNS服务器推送到客户端,DNS字段可以留空。
添加密钥
转到 VPN > IPsec > 预共享密钥 菜单,为所有访问的VPN用户配置一个共用的预共享密钥。

新建连接
转到 VPN > IPsec,使用右下角的复选框启用IPsec并应用。

单击添加按钮新建一个连接,启用高级模式。详细设置如下:

选中启用选项,提案选 aes256-sha256-ecp256(iPhone的IKEv2使用该提案),唯一性策略选Replace,版本选IKEv2,选中MOBIKE,本地端口使用默认值,选中UDP封装,池选中前面创建的地址池,发送证书必须选中始终。
点击保存,将会显示下一个选项。
本地认证
本地认证部分设置如下:

选中启用选项,选中前面创建的连接test,认证选公钥,输入ID和前面创建的服务器证书,公钥不选。输入完成点击保存。
远程认证
远程认证部分设置如下:

选中启用选项,选中前面创建的连接test,认证方式选中EAP-MSCHAPv2,ID留空,EAP ID输入 %any,输入描述说明,点击保存。
安全关联
安全关联部分设置如下:

选中启用选项,选中前面创建的连接test,模式选隧道,选中策略,ESP提案与前面的连接设置一致,允许访问的本地地址范围输入 0.0.0.0/0(建议只输入本地允许访问的网络范围),重生密钥时间600(如果是Windows客户端应设为0),保存并应用配置。
添加规则
转到 防火墙 > 规则 > WAN接口,添加允许IPsec访问的规则,接口放行UDP 500和4500端口。

在IPsec接口上添加规则,允许VPN用户访问内部网络。

这里应该添加范围更小的访问规则,截图设置仅供参考。
客户配置
本文仅介绍在iPhone上的配置方法,其他客户端配置请参考官方文档。
OPNsense导出CA证书和服务器证书,使用隔空投送等工具将证书导入手机,并安装到iPhone上。

转到 设置 > VPN,添加VPN配置。

返回 设置 > VPN,然后选中刚才的配置文件,打开VPN切换开关进行连接。
检查测试
连接成功后,IPsec状态部分会有对应提示:




使用手机浏览器可以正常访问OPNsense:

如果不能正常连接,请检查 /var/log/ipsec/latest.log 日志,分析排除故障。
参考文章
觉得内容不错?我要