Einbinden von 2 CAs in VirtualHost in Apache unter Verwendung von httpd für den https-Telefon/Server-Handshake

Einbinden von 2 CAs in VirtualHost in Apache unter Verwendung von httpd für den https-Telefon/Server-Handshake

Ich versuche, ein Serverzertifikat von GoDaddy zu laden, habe also xxxxxxx.crt und bundle.crt und einen Schlüssel/CSR erstellt, den wir zum Erstellen der Zertifikate verwendet haben. Ich versuche jetzt, ein weiteres Zertifikat zu laden, da das von uns verwendete Telefon einen Handshake mit unserem Server durchführen muss, und dann hoffentlich die Hersteller-CA finden muss, um eine sichere Bereitstellung zu gewährleisten.

Meine anfängliche Konfiguration sah so aus:

<VirtualHost ip.ip.ip.ip:443>
    JkMount /* worker1
    JkMount / worker1

    ServerAdmin [email protected]
    ServerName identifier.server.domain.co.uk

    SSLEngine on
    SSLVerifyClient require

    SSLCertificateFile /path/path/XXXXXXXXxxxxxxx.crt
    SSLCACertificateFile /path/path/gd_bundle-g2.crt
    SSLCertificateKeyFile /path/path/polycom.key

    SSLCertificateFile /path/path/Polycom_Root_CA.crt

    SSLVerifyDepth 10
    SSLOptions +ExportCertData

    ErrorLog logs/identifier.server.domain.co.uk-error_log
    CustomLog logs/identifier.server.domain.co.uk-access_log common
</VirtualHost>

Wenn ich das Polycom-Zertifikat auskommentiere, kann ich httpd ohne Fehler neu starten, aber der Versuch, dies einzuschließen, bricht den Neustart ab. Mache ich etwas unglaublich Dummes oder muss ich die Zertifikate miteinander verketten?

Antwort1

Sie können nicht zwei Zertifikate in einen einzigen virtuellen Host laden. Das macht keinen Sinn

Die Regel lautet: ein x509-Zertifikat pro virtuellem Host.

Wenn Sie CAs zur Kette hinzufügen möchten, die Ihr Zertifikat signiert hat, fügen Sie sie einfach in einer einzigen SSLCACertificateFile hinzu.

Bedenken Sie auch, dass Sie in 2.4 einfach das SSLCACertificateFile überspringen und die gesamte Zertifikatskette vom Blatt bis zur Wurzel im SSLCertificateFile hinzufügen können.

Antwort2

Das von mir wahrgenommene Problem wurde behoben, indem ich die Polycom CA-Datei als PEM statt als DER formatierte, diese zur SSLCACertificateFile machte und die Änderung vornahm;

SSLCertificateChainFile /path/path/gd_bundle-g2.crt

Ich bekomme jetzt einen positiven Handshake vom Telefon zum Server und es werden sichere Pakete zugestellt.

verwandte Informationen