所以我已经迁移了 OpenVPN 服务器,这看起来很简单,我只是将 /etc/openvpn/* 复制到新服务器。
但是,当我生成密钥时,客户端连接时出现错误。当我使用旧的 ca.crt 时,我能够成功连接。
我有几个相关的简单问题..
- ca.crt 是我们所有客户获得的同一个文件,还是为每个用户生成的文件? (我的印象是每个客户都有相同的文件,但我不是 100%)
我一般会生成3个文件
client.csr client.crt client.key
在 .ovpn 配置文件内部,它要求
ca.crt
client.crt
client.key
3. 客户端会获得哪些文件是根据每个用户生成的,通常是这 3 个文件中的哪一个?
我对我需要哪些文件有点困惑,我很久以前就为自己做过这件事,但现在我被要求在更大的范围内做这件事,并且需要更彻底的理解,“它作品”。
我认为我过去所做的是将 client.csr 重命名为 client.ca,但我可能是错的。
/etc/openvpn/ 根目录下有一个 ca.crt 但不起作用!但是,看起来我还有另一个完整的证书树被遗弃在 /etc/openvpn/techsupport/ 下,但自 2011 年以来就没有使用过!那里还有一个 ca.crt 我需要尝试一下。
答案1
我不是 100% 这是正确的,所以如果不是,请告诉我,我不想传播错误信息,但我为我的假设/答案找到了一个不错的来源。
技术上我在使用时创建了 4 个文件
./构建密钥传递
Id.pem = where Id is the index number
client.crt = Clients Cert
cleint.key = client Key
client.csr = Client Signing Request
客户端得到以下信息:
clients:
ca.crt CA's public certificate
ClientXXXX.crt The client certificate
ClientXXXX.key The client key
一旦创建/签署了 CSR,就可以将其删除(根据我的阅读这里)
ID.pem 用于稍后撤销,类似于基于文件的数据库系统。您需要的两个文件是 client.crt 和 client.key,然后是“public CA.crt”这意味着它有 2 个品质。
它不是秘密的,并且与所有 Open-VPN-Key 对一起部署。
所以我的问题是,我一直在使用 /etc/openvpn/* 目录中找到的不正确的 ca.crt,我应该将其与明显废弃的 /techsupport 一起存档,然后在服务器上重新创建 ca.crt,以便这种混乱不会再发生。
After comparing my ca.crt with a co-workers, this seems the logical choice.
最后一点:
- /etc/openvpn/ 中的文件 ca.crt 是否用于任何用途,或者只是将其存储的逻辑位置?
[更新] 关于我的最后一点,我注意到 /certs/keys/ 中有一个 ca.crt,这是我本地的。再次,我的问题是, /etc/openvpn/ 中的 ca.crt 是否会执行任何操作,是否应该将其删除/替换为 /keys/ 中的 ca.crt 我的想法是它来自旧的设置/配置?