我不小心刪除了我的 OpenVPN ca.crt
、ca.key
、server.crt
和server.key
命令./clean-all
。我不知道伺服器配置(目前也是“簽名機”)指向目錄easy-rsa/keys
而不是certificates
像我們在客戶端上所做的那樣指向資料夾。 (我知道不先檢查這一點很愚蠢,但現在已經太晚了)
由於某種原因,已連接的裝置仍保持連線狀態。我也可以將新客戶端與現有(舊的/目前部署的)憑證連接起來。我想這是因為我還沒有重新啟動VPN服務,不是嗎?(我現在不敢重新啟動服務,因為我害怕我無法再訪問客戶端)
有沒有辦法讓ca.key
我生成一個新的server.crt
and server.key
?(或者也許也可以回來server.x
)。我仍然有ca.crt
客戶可用的。
當我無法挽回時ca.key
,解決問題的最佳方法是什麼?我想我需要
- 產生一個新的
ca.crt
和ca.key
- 產生新的伺服器證書
- 產生新的客戶端證書
- 將新的(客戶端)憑證分發給客戶端(因為我現在仍然可以透過 VPN 聯絡他們)
- 重新啟動用戶端上的 VPN 服務(以便它們使用新憑證)
- 重新啟動伺服器上的 VPN 服務,以便新憑證生效(當我忘記客戶端時,它從現在起就「遺失」了嗎?)
重要的是我不要「失去」客戶,因為我需要開車幾個小時才能接觸到一些客戶!
答案1
我沒有找到恢復我的 CA.crt 的解決方案,因此決定部署新證書,因為連接目前仍然有效。我設定了一個測試環境並測試了下面描述的工作流程。之後,我也使用該工作流程進行即時連接,並且工作得很好!
- 首先產生「CA機器」上的所有憑證(CA、伺服器和用戶端憑證)
- 將證書部署到所有客戶端並確保配置正確,以便他們使用新證書
- 在每個客戶端上(單獨)重新啟動 OpenVPN 服務,並確保 OpenVPN 伺服器上不再有“開放連線”
- 更換OpenVPN伺服器憑證並重新啟動OpenVPN伺服器上的OpenVPN服務
確保在交換新憑證並檢查設定之前不要重新啟動任何服務。重要的是,在所有用戶端獲得新憑證並且用戶端上的服務重新啟動之前,請勿重新啟動 OpenVPN 伺服器服務。
現在我用新憑證恢復了所有客戶端連線。
答案2
如果我有時間,我可以嘗試在備用的樹莓派上執行此操作,然後看看。但是,如果做不到這一點,我要做的第一件事就是確保您可以遠端存取客戶端計算機,無論是使用teamviewer 或類似的東西,這樣您最終不得不把所有東西都扔掉並重新開始,您可以遠端存取它們。