サーバーのSSL証明書のインポートに問題があります
myZyxel GS1920-8HPv2 上の https Web 接続。
スイッチの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
次に、pcks12 コンテナを構築しました。
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 を使用するアプリケーションはこれらのファイルを開いて処理することができません。