pfSense WireGuard的作者Christian McDonald在 Netgate Docs上更新了一篇文章,介绍了在pfSense上多站点之间使用WireGuard VPN隧道的方法,现在翻译出来,方便大家配置的时候参考。
项目 | 说明 |
---|---|
设计目标 | 站点到多站点,每个隧道一个对等点,每个隧道多个对等点 |
隧道子网 | 172.16.0.0/30 |
1、总部:
广域网 IP 地址 | 198.51.100.10 |
隧道地址 | 172.16.0.1/30 |
监听端口 | 51820 |
2、远程办公室 A:
广域网 IP 地址 | 198.51.100.100 |
隧道地址 | 172.16.0.2/30 |
监听端口 | 51820 |
LAN 子网 | 10.0.100.0/24 |
3、远程办公室 B:
广域网 IP 地址 | 198.51.100.200 |
隧道地址 | 172.16.0.3/30 |
监听端口 | 51820 |
LAN 子网 | 10.0.200.0/24 |
WireGuard 配置
在三个pfSense防火墙上,分别导航到VPN > WireGuard > 设置,选中启用,接口组成员选择仅未分配的隧道,如下图所示。
隧道配置
在三个站点上分别创建 WireGuard 隧道:导航到VPN > WireGuard > 隧道,单击” “添加隧道,使用网络拓扑图上的信息填写选项,并注明每个站点的变化。选中启用,并填写不同的描述信息。监听接口选默认51820即可,接口密码点右侧的生成按钮创建。注意记录每个防火墙的公钥信息并备注。下面是总部的设置信息,其他的两个办公室参照设置。
分配接口
这些步骤必须在三个站点上同时完成。
首先,修复默认网关,确保不会自动选择 WireGuard:导航到系统 > 路由,将默认网关IPv4设置为特定网关(例如WANGW)或组,如果此 VPN 也将承载 IPv6 流量,请以类似方式设置默认网关 IPv6,保存后并应用更改。如下图所示:
接下来,分配WireGuard使用的接口:
- 导航到接口 > 分配
- 在可用网络端口列表中选择类似于
tun_wg
的接口 - 单击” ” 图标,将接口分配为新的 OPT 接口(如 OPT1)
- 导航到接口配置页面,接口 > OPTx
- 启用接口
- 输入描述信息,如
VPN_HQ
(例如、VPN_SITEA
或VPN_SITEB
) - 使用之前确定的信息填写选项,并注明每个站点的变化:
1、总部设置 (VPN_HQ)
- IPv4 配置类型
Static IPV4
- IPv4 地址
172.16.0.1/30
2、远程办公室 A 设置 (VPN_SITEA)
- IPv4 配置类型
Static IPV4
- IPv4 地址
172.16.0.2/30
3、远程办公室 B 设置 (VPN_SITEB)
- IPv4 配置类型
Static IPV4
- IPv4 地址
172.16.0.3/30
点击保存并应用更改
添加防火墙规则
添加路由
在三个站点上添加允许互访的静态路由。第一步先添加网关。导航到系统 >路由管理 > 网关,在三个站点上分别添加下面的网关。
1、总部设置1
- 接口
tun_wg
- 地址族
IPv4
- 名称
WG_SITEA_GW4
- 网关
172.16.0.2
2、总部设置2
- 接口
tun_wg
- 地址族
IPv4
- 名称
WG_SITEB_GW4
- 网关
172.16.0.3
3、远程办公室 A/B
- 接口
tun_wg
- 地址族
IPv4
- 名称
WG_HQ_GW4
- 网关
172.16.0.1
下面添加静态路由。导航到系统 > 路由管理,为以下网络添加静态路由,完成跨 VPN 路由访问。导航到系统 > 路由 > 静态路由,添加静态路由。使用之前确定的信息填写选项,并注明每个站点的变化。
1、总部设置1
- 目标网络
10.0.100.0/24
(远程办公室 A LAN 段) - 网关
WG_SITEA_GW4
2、总部设置2
- 目标网络
10.0.200.0/24
(远程办公室 B LAN 段) - 网关
WG_SITEB_GW4
3、远程办公室 A 设置
- 目标网络
10.0.200.0/24
(远程办公室 B LAN 段) - 网关
WG_HQ_GW4
4、远程办公室 B 设置
- 目标网络
10.0.100.0/24
(远程办公室 A LAN 段) - 网关
WG_HQ_GW4
经过上述设置,三个站点之间内部子网就可以互相进行访问了。