OpenVPN 文档设置了来自单个 CA 的单个证书,供所有客户端使用。
有没有办法将服务器设置为启用来自不同 CA 的多个证书,只要客户端拥有来自受信任机构的有效证书?
答案1
据我所知,OpenVPN 文档设置了为每个客户端使用不同的证书。确实,它们都是由同一个 CA 签名的,但这并不意味着它们都是同一个证书。您应该为每个客户端制作一个新证书(否则撤销证书将成为非常不愉快的全有或全无的提议)。每个客户端使用不同的证书,全部由同一个 CA 签名,这还不足以满足您的要求吗?
如果您已经知道 OpenVPN 会这样做,并且有充分的理由说明它对您不起作用,我深表歉意;但您的问题并没有表明您意识到这一点。
答案2
根据手册页,选项指定的文件ca
可以包含多个证书,还有一个capath
选项可以指定包含多个证书文件的目录。尝试在服务器上使用这些来指向您要验证客户端的所有 CA 证书。
答案3
一种方法是让多个配置文件和多个 openvpn 实例监听不同的端口。
每个客户端都必须配置正确实例的地址和端口 [或者如果您想使用相同的配置文件,并且可以有更长的连接时间],则所有可用的地址/端口的列表如下:
remote server.address 10001
remote server.address 10002
remote server.address 10002