Der Nginx-Server gibt ein doppeltes Zwischenzertifikat zurück, wenn sowohl das ECC- als auch das RSA-Zertifikat in Nginx aktiviert werden

Der Nginx-Server gibt ein doppeltes Zwischenzertifikat zurück, wenn sowohl das ECC- als auch das RSA-Zertifikat in Nginx aktiviert werden

Ich habe Nginx so konfiguriert, dass sowohl ECC- als auch RSA-Zertifikate im Hybridmodus unterstützt werden.

Nach der Aktivierung habe ich den folgenden Befehl verwendet, um das vollständige Kettenzertifikat von meinem Server abzurufen:

openssl s_client -showcerts -connect server:443 -servername server-sni

Dann habe ich drei Zertifikate, ein Leaf-Zertifikat und zwei doppelte Zwischenzertifikate (es sollte nur ein Zwischenzertifikat sein).

Ich habe kein Problem mit meiner Nginx-Konfiguration gefunden

    #rsa
    ssl_certificate /path/server_rsa-cert.pem;
    ssl_certificate_key /path/server_rsa-key.pem;
    # ecc
    ssl_certificate /path/server_ecc-cert.pem;
    ssl_certificate_key /path/server_ecc-key.pem;

Dann habe ich versucht, das ECC-Zertifikat oder das RSA-Zertifikat zu entfernen und habe den OpenSSL-Befehl ausgeführt. Danach gibt es kein doppeltes Zwischenzertifikat mehr.

Daher scheint es, dass doppelte Zwischenzertifikate nur auftreten, wenn sich Nginx im Hybrid-Zertifikatsmodus befindet.

Irgendeine Idee dazu?

Antwort1

Ok, nachdem ich herumgestöbert habe, bin ich zu dem Schluss gekommen, dass all diese Probleme durch die alte Libressl-Version verursacht werden, die ich verwendet habe. Ein Upgrade der Libressl-Version auf 2.9.2 und anschließendes Kompilieren von Nginx hat dieses Problem behoben.

verwandte Informationen