我正在使用 OpenVPN 为多个办公室设置 VPN 网络。这有两个目的:
- LAN 到 LAN VPN 允许流量在办公室之间无缝路由。
- 允许用户在外出时连接到网络。
这导致需要两种独立的身份验证机制:
- LAN 到 LAN 的客户端证书
- 单点登录用户/密码(无客户端证书)对于用户来说。
根据文档:
auth-user-pass-verify
仅需要每个用户提供客户端证书和用户/密码auth-user-pass-verify
并且client-cert-not-required
只需要用户名/密码
问题: 我该如何配置 Open VPN,让某些客户端仅使用客户端证书进行身份验证,而另一些客户端仅使用用户/密码进行身份验证?
答案1
抱歉,我回答了自己的问题。我越看越清楚,在同一台机器上运行两个单独的 OpenVPN 实例是正确的答案。对于 LAN 到 LAN,我计划使用 RIP2 处理路由。对于客户端,这并不合适。
因此,在许多方面,选项将会有所不同:
显然,我必须为 RIP 设置防火墙,防止用户破坏网络。两个独立的 openvpn 实例将在两个独立的内部 (VPN) 子网上运行,这样更容易在它们之间设置防火墙。
问题中提到的不同身份验证机制意味着
auth-user-pass-verify
将client-cert-not-required
用于用户,而不是用于 LAN 到 LANclient-to-client
对于用户来说是可以接受的。实际上没有理由阻止这种情况,因为它不允许任何当同一用户恰好在办公室时不可能发生的事情。但是,如果client-to-client
使用 RIP2,会产生奇怪的结果。push "redirect-gateway def1 bypass-dhcp"
对用户来说是合适且必要的。因为他们不使用 RIP,所以他们需要通过 VPN 服务器发送所有内容并允许其正确路由。我无法想象在 LAN 到 LAN 中启用此功能会产生什么样的后果。