在 Windows 10 上打開 SSL 錯誤 - 將簽名的 CSR 從 PEM 轉換為 CRT
我正在嘗試為使用者創建具有 x.509 證書身份驗證的 IPSec VPN 連接。
接下來是一個讓事情順利進行的測試,並不是一個安全的實現。當我得到這個工作時,我將從受信任的來源獲得證書,同時我正在使用自簽名。
我在 Windows 10 20H2 上
1- 我用 XCA 創建了一個根證書。
2- 我為我的第一個 vpn 使用者創建了一個證書籤名請求。
3- 我用 XCA 簽署請求
4-我以 PEM 格式從 XCA 導出請求
5- 我安裝 OpenSSL 並將環境變數 OPENSSL_CONF 設置為安裝文件夾中的 openssl.cfg。我在 W10 上使用https://slproweb.com/products/Win32OpenSSL.html(64位)作為 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.
此外,即使使用 admin priv. 在 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 EST
UnNamed 解決了我的問題。對他們大喊大叫。
在 XCA 中,當您簽署請求時,並不清楚它需要從不同的選項卡(證書)導出。
在用於簽署使用者證書的根證書下,是一個帶有已簽名使用者證書的下拉列表。在為其中的證書創建自定義視圖後,我能夠將其導出並將其添加到 mmc 中而不會出現問題。
繼續從這裡設置 VPN。
證書需要與 位於同一目錄中,
openssl.exe
或者指定完整/絕對路徑,例如C:\temp\cert.pem
.crt 文件副檔名適用於 Windows,內容為 base64 PEM 格式。無需“轉換”內容。只需將文件副檔名從 重命名
.pem
為.crt
.