Skip to main content

Problembehandlung bei TLS-Fehlern

Bei TLS-Problemen mit deiner Appliance kannst du Maßnahmen ergreifen, um diese zu beheben.

Passphrase aus deiner Schlüsseldatei entfernen

Wenn du über eine Linux-Maschine mit installiertem OpenSSL verfügst, kannst du deine Passphrase entfernen.

  1. Benenne deine ursprüngliche Schlüsseldatei um.
    $ mv yourdomain.key yourdomain.key.orig
  2. Generiere einen neuen Schlüssel ohne eine Passphrase.
    $ openssl rsa -in yourdomain.key.orig -out yourdomain.key

Wenn du diesen Befehl ausführst, wirst du aufgefordert, die Passphrase des Schlüssels einzugeben.

Weitere Informationen zu OpenSSL findest du in der Dokumentation zu OpenSSL.

TLS-Zertifikat oder -Schlüssel in das PEM-Format umwandeln

Wenn du OpenSSL installiert hast, kannst du den Schlüssel mit dem Befehl openssl in das PEM-Format umwandeln. Beispielsweise kannst du einen Schlüssel vom DER- in das PEM-Format umwandeln.

$ openssl rsa -in yourdomain.der -inform DER -out yourdomain.key -outform PEM

Andernfalls kannst du das SSL Converter-Tool verwenden, um dein Zertifikat in das PEM-Format umzuwandeln. Weitere Informationen findest du in der Dokumentation des SSL-Konvertertools.

Nicht antwortende Installation nach dem Hochladen eines Schlüssels

Wenn your GitHub Enterprise Server instance nach dem Hochladen eines TLS-Schlüssels nicht mehr reagiert, kontaktiere den GitHub Enterprise-Support mit den entsprechenden Details, einschließlich einer Kopie deines TLS-Zertifikats. Vergewissere dich, dass dein privater Schlüssel nicht enthalten ist.

Zertifizierungsgültigkeitsfehler

Clients wie Webbrowser und die Git-Befehlszeile zeigen eine Fehlermeldung an, wenn die Gültigkeit eines TLS-Zertifikats nicht verifiziert werden kann. Dies ist oftmals bei selbstsignierten Zertifikaten und bei „verketteten Root“-Zertifikaten der Fall, die von einem Root-Zwischenzertifikat ausgestellt wurden, das vom Client nicht anerkannt wird.

Wenn du ein von einer Zertifizierungsstelle (CA) signiertes Zertifikat verwendest, muss die von dir auf GitHub Enterprise Server hochgeladene Zertifikatsdatei eine Zertifikatskette mit dem Root-Zertifikat der CA enthalten. Verkette zum Erstellen einer solchen Datei deine gesamte Zertifikatskette (oder „Zertifikats-Bundle“) am Ende deines Zertifikats, um sicherzustellen, dass das Hauptzertifikat mit deinem Hostnamen zuerst angezeigt wird. Auf den meisten Systemen kannst du dazu einen Befehl ausführen, der folgendem ähnelt:

$ cat yourdomain.com.crt bundle-certificates.crt > yourdomain.combined.crt

Du solltest ein Zertifikatsbundle (z. B. bundle-certificates.crt) von deiner Zertifizierungsstelle oder deinem TLS-Anbieter herunterladen können.

Selbstsignierte oder Root-Zertifikate von nicht vertrauenswürdigen Zertifizierungsstellen (CA) installieren

Wenn deine GitHub Enterprise Server-Appliance mit anderen Maschinen in deinem Netzwerk interagiert, die ein selbstsigniertes oder nicht vertrauenswürdiges Zertifikat verwenden, musst du das Root-Zertifikat der signierenden CA in den systemweiten Zertifikatsspeicher importieren, um über HTTPS auf diese Systeme zugreifen zu können.

  1. Rufe das Root-Zertifikat der CA von deiner lokalen Zertifizierungsstelle ab, und stelle sicher, dass es im PEM-Format vorliegt.
  2. Kopiere über die SSH als der Benutzer „admin“ auf Port 122 die Datei auf deine GitHub Enterprise Server-Appliance.
    $ scp -P 122 rootCA.crt admin@HOSTNAME:/home/admin
  3. Stelle über die SSH als der Benutzer „admin“ auf Port 122 eine Verbindung zur GitHub Enterprise Server-Verwaltungsshell her.
    $ ssh -p 122 admin@HOSTNAME
  4. Importiere das Zertifikat in den systemweiten Zertifikatsspeicher.
    $ ghe-ssl-ca-certificate-install -c rootCA.crt

TLS-Zertifikat aktualisieren

Du kannst ein neues selbstsigniertes Zertifikat generieren oder mit dem Befehlszeilenprogramm ghe-ssl-certificate-setup ein vorhandenes TLS-Zertifikat für your GitHub Enterprise Server instance aktualisieren. Weitere Informationen findest du unter Befehlszeilenprogramme.