![編輯 2020-12-11 1600](https://rvso.com/image/760980/%E7%B7%A8%E8%BC%AF%202020-12-11%201600.png)
我正在嘗試為使用者建立具有 x.509 憑證驗證的 IPSec VPN 連線。
接下來是讓事情順利進行的測試,並不是安全的實作。當我開始工作時,我將從可信任來源獲得證書,同時我正在使用自簽名證書。
我使用的是 Windows 10 20H2
1-我使用 XCA 建立根憑證。
2-我為我的第一個 VPN 使用者建立一個憑證簽署請求。
3-我使用 XCA 簽署請求
4-我以 PEM 格式從 XCA 匯出請求
5-我安裝 OpenSSL 並將環境變數 OPENSSL_CONF 設定為安裝資料夾中的 openssl.cfg 。我用了https://slproweb.com/products/Win32OpenSSL.html(64 位元)適用於 W10 上的 openSSL
6- 樂趣開始了。
據我了解,我必須使用管理單元憑證透過命令列中的 mmc 在 Windows 電腦中新增憑證。加法師的東西。它不接受 pem 格式,它需要 crt 格式。
然後我參考OpenSSL進行格式轉換
當我輸入 x509 -in CERT.pem -out CERTII.crt 時
我收到以下錯誤:
Can't open CERT.pem for reading, No such file or directory
15732:error:02001002:system library:fopen:No such file or directory:crypto\bio\bss_file.c:69:fopen('CERT.pem','r')
15732:error:2006D080:BIO routines:BIO_new_file:no such file:crypto\bio\bss_file.c:76:
unable to load certificate
error in x509
我已經搜索了很多,但找不到這個錯誤的確切含義,我正在考慮將我的頭髮一根一根地拔出來作為一種可行的選擇。
編輯 2020-12-11 1600
重新命名為 .crt 並添加到本地證書給了我一個錯誤:
file type is not recognizable. Select another file.
另外,即使使用管理員權限在 openssl cli 中指定完整路徑,我也會收到錯誤。
例如,如果我將憑證複製到 OpenSSL 資料夾中,並嘗試命令“openssl x509 -in CERT.pem -out CERT.crt”,則會出現以下錯誤:
"unable to load certificate
15252:error:0909006C:PEM routines:get_name:no start line:crypto\pem\pem_lib.c:745:Expecting: TRUSTED CERTIFICATE
error in x509"
編輯 2020-12-10 1610 - 憑證片段
-----BEGIN CERTIFICATE REQUEST-----
MIIDGjCCAgICAQAwgaExCzAJBgNVBAYTAkNBMQ8wDQYDVQQIEwZRVUVCRUMxEjAQ
....
hfz1ew0RTMxZv2hMlN/wn5Y0EZKpRr5jMrgZprG7
-----END CERTIFICATE REQUEST-----
我猜它不應該被列為請求,而應該被列為簽名證書?
編輯 2020-12-10 1626 美國東部時間
無名解決了我的問題。向他們大聲喊叫。
在 XCA 中,當您簽署要求時,並不能立即清楚它是否需要從不同的選項卡(憑證)中匯出。
在用於簽署使用者憑證的根憑證下,有一個帶有簽署使用者憑證的下拉清單。在為其中的憑證建立自訂視圖後,我能夠匯出它並將其新增至 mmc,沒有出現任何問題。
從這裡繼續設定 VPN。
答案1
證書需要與 位於同一目錄中,openssl.exe
或指定完整/絕對路徑,例如C:\temp\cert.pem
.
crt 檔案副檔名適用於 Windows,內容為 base64 PEM 格式。無需“轉換”內容。只需將檔案副檔名從 重新命名.pem
為.crt
.