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 连接的密码,类型选EAP。如果有多个 VPN 服务器,使用FQDN可以轻松掌握用户被分配到哪一个服务器。
新建连接
转到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日志,分析排除故障。
参考文章:
旧界面的配置方法请参考(需要安装旧插件):
















