我有一个 pfSense 2.6 实例,它为客户端托管 OpenVPN。我正在使用客户端版本 OpenVPN Connect 3.3.7 (2979) 进行测试。
有些 Web 端点具有动态 IP 地址,因此我无法通过 轻松推送路由Custom options
。我也不想通过 VPN 重定向所有流量。
我发现了allow-pull-fqdn
,但是 OpenVPN 连接版本 3.x 不支持它,来源:https://github.com/OpenVPN/openvpn3/issues/195
我现在正在寻找如何创建脚本来解析 DNS 记录并将 IP 推送到客户端配置中。
第一个选项如果 OpenVPN 服务器能够解析 DNS 记录并通过脚本或其他方式推送路由,那将是最好的,因为这样我就不需要关心客户端上的脚本了。
有没有办法这样做?
第二种选择是在客户端上运行脚本。客户端操作系统可以是 Windows、Mac 和 Linux,因此需要维护不同的脚本。
我一直在研究client-connect
这个选项,但似乎根本无法让它工作。我写了一个批处理文件vpn_push_routes.bat
echo 'test' > C:\Users\user\Documents\test.txt
我已将这些行添加到客户端配置文件中:
script-security 3
client-connect C:\\Users\\user\\Documents\\vpn_push_routes.bat
OpenVPN Connect 在日志中显示以下行:UNUSED OPTIONS
[Mar 8, 2023, 18:27:20] UNUSED OPTIONS
1 [persist-tun]
2 [persist-key]
3 [data-ciphers] [AES-256-GCM:AES-128-GCM:CHACHA20-POLY1305:AES-256-CBC]
4 [data-ciphers-fallback] [AES-256-CBC]
6 [tls-client]
8 [resolv-retry] [infinite]
10 [nobind]
14 [auth-nocache]
20 [script-security] [3]
21 [client-connect] [C:\Users\user\Documents\vpn_push_routes.bat]
我也同意第二种选择。有人能帮忙吗?
答案1
似乎问题在于第二选项是所使用的客户端是OpenVPN 连接 3.3.7. 关于如何使用附加选项的文档似乎很少。
带客户端版本OpenVPN 社区 2.6.1脚本通过将以下行添加到客户端配置文件中来工作。这是参考手册适用于版本 2.6。
script-security 2
up 'C:\\Users\\user\\Documents\\vpn_push_routes.bat'