Importieren Sie ein benutzerdefiniertes SSL-Zertifikat in Zyxel GS1920-8HPv2

Importieren Sie ein benutzerdefiniertes SSL-Zertifikat in Zyxel GS1920-8HPv2

Ich habe ein Problem beim Importieren eines Server-SSL-Zertifikats für

https-Webverbindung auf myZyxel GS1920-8HPv2.

Auf der WebGUI des Switches gibt es eine Information, dass das Zertifikat und der Schlüssel

muss in einem pkcs12-Container sein.

Zum Erstellen des Server-CRT habe ich Folgendes getan:

Generieren Sie einen privaten Schlüssel:

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

Erstellen Sie einen CSR:

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

Erstellen Sie das signierte Zertifikat von meiner Zertifizierungsstelle:

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

Dann habe ich den pcsks12-Container erstellt:

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

ich habe auch die Option „certfile“ mit Fullchain (ca + intermediate) getestet:

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

Aber wenn ich versuche, den pkcs12-Container zu importieren, läuft der Switch in einem Timeout, ohne dass Protokollmeldungen ausgegeben werden.

ist das Verfahren, das ich beim Erstellen des pkcs12-Containers angewendet habe, korrekt und hat jemand eine Idee, wie man das Server-Zertifikat auf diesem Zyxel-Switch importiert?

Antwort1

Inzwischen habe ich eine Lösung gefunden, um das Problem zu beheben:

Wenn ich den pkcs12-Container mit OpenSSL 3.0.2 (Ubuntu 22.04) erstelle und den Container auf mein iPhone und meinen Zyxel-Switch importiere, funktioniert es nicht.

Wenn ich den pkcs12-Container mit OpenSSL 1.1.1.f (Ubuntu 20.04) erstelle, funktioniert es.

Wenn ich einen pkcs12-Container mit OpenSSL 3.0.2 erstelle und versuche, den Container mit OpenSSL1.1.1 zu lesen (OpenSSL Pkcs12-Info ...), erhalte ich die folgende Fehlermeldung:

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 ()

Offenbar verwendet OpenSSL 3.0 einen anderen Algorithmus zum Erstellen des Containers, und Anwendungen, die OpenSSL 1.XX verwenden, können diese Dateien nicht öffnen und verarbeiten.

verwandte Informationen