我可以使用我的 OpenSSL CA 来签署我的 OpenVPN 证书吗?

我可以使用我的 OpenSSL CA 来签署我的 OpenVPN 证书吗?

我不确定这听起来是否是一个愚蠢的问题,但在为 OpenVPN 制作证书时,我所查看的所有指南都使用 Easy-RSA。

我的一些服务器(例如我的 NAS 和我家庭 LAN 上的 OpenMediaVault 服务器)使用 SSL 加密数据,因此我创建了自己的 CA(授权证书),并将其安装到每个客户端。安装单个 CA 证书会自动批准我服务器上使用的任何证书,从而避免在客户端上安装多个证书。

关于 OpenVPN,我宁愿跳过为 OpenVPN 制作第二个根证书,而是利用我在客户端上已安装的 OpenSSL 制作的现有受信任根证书。

这可能吗?

非常感谢

更新

diffie hellman 的生成是否相当于命令openssl req x509

这是我创建 OpenSSL 证书时使用的第一个命令

openssl req -x509 -newkey rsa:4096 -keyout ca/cakey.pem -out ca/cacert.pem -days 3650 -sha256 -nodes -config configs/ca_openssl.cnf

我只是想找出与 easy-RSA 等效的推荐

答案1

所有指南都使用 Easy-RSA,因为它很简单,而且OpenVPN 的一部分。

除此之外,OpenVPN 使用完全标准的基于 RSA 的 X.509 证书,与 HTTPS 和其他 TLS 使用的证书完全相同。(OpenVPN 控制通道甚至使用常规 TLS,尽管是在自定义复用层内。)

唯一重要的区别是,旧版 OpenVPN 对扩展密钥使用的要求比其他 TLS 客户端更严格;例如,如果你使用--remote-cert-tls client它,则需要证书具有仅有的“TLS 客户端”使用并会拒绝设置了服务器和客户端使用 OID 的证书(大多数 TLS 证书都很常见)。

最后,OpenVPN 客户端不需要在系统范围内安装 CA 证书,事实上作者并不鼓励这样做。CA 证书可以内联在配置文件中。

相关内容