在 Zyxel GS1920-8HPv2 中匯入自訂 SSL 憑證

在 Zyxel GS1920-8HPv2 中匯入自訂 SSL 憑證

我在匯入伺服器 ssl 憑證時遇到問題

myZyxel GS1920-8HPv2 上的 https 網路連線。

在交換器的WebGui上,有一個訊息,即憑證和金鑰

必須位於 pkcs12 容器中。

我做了以下事情來創建伺服器 crt:

產生私鑰:

openssl genrsa \
    -aes256 \
    -out private/zyxel-server.key.pem 4096

產生 CSR:

openssl req \
       -config openssl.cnf \
       -key private/zyxel-server.key.pem\
       -new -sha512 \
       -out csr/zyxel-server.csr.pem

從我的 ca 建立簽署的憑證:

openssl ca -config openssl.cnf \
           -extensions server_cert_zyxel \
           -days 1095 -notext -batch -md sha512 \
           -passin file:mypass.enc \
           -in csr/zyxel-server.csr.pem \
           -out certs/zyxel-server.pem

然後我建造了 pks12 容器:

openssl pkcs12 \
       -export \
       -out cert.pfx \
       -inkey private/zyxel-server.key.pem \
       -in certs/zyxel-server.pem \
       -certfile certs/ca.cert.pem \

我還使用全鏈(ca +中間)測試了“certfile”選項:

openssl pkcs12 \
       -export \
       -out cert.pfx \
       -inkey private/zyxel-server.key.pem \
       -in certs/zyxel-server.pem \
       -certfile certs/ca-fullchain.cert.pem \

但是當我嘗試匯入 pkcs12 容器時,交換器正在逾時運行,沒有任何日誌訊息。

我在建立 pkcs12 容器時執行的過程是否正確,有人知道如何在此 zyxel 交換器上匯入伺服器憑證?

答案1

同時,我找到了解決問題的方法:

如果我使用 openssl 3.0.2 (ubuntu 22.04) 建立 pkcs12 容器並將容器匯入到我的 iphone 和 zyxel 交換器中,它不起作用。

如果我使用 openssl 1.1.1.f (ubuntu 20.04) 建立 pkcs12 容器,它就可以運作。

如果我使用 openssl 3.0.2 建立 pkcs12 容器並嘗試使用 openssl1.1.1 讀取 (openssl pkcs12 info ...) 容器,我會收到以下錯誤訊息:

Enter Import Password:
MAC: sha1, Iteration 2048
MAC length: 20, salt length: 8
PKCS7 Encrypted data: pbeWithSHA1And40BitRC2-CBC, Iteration 2048
Error outputting keys and certificates
4047620DD67F0000:error:0308010C:digital envelope routines:inner_evp_generic_fetch:unsupported:../crypto/evp/evp_fetch.c:349:Global default library context, Algorithm (RC2-40-CBC : 0), Properties ()

似乎 openssl 3.0 使用另一種演算法來建立容器,並且使用 openssl 1.XX 的應用程式無法開啟和處理這些檔案。

相關內容