Generieren Sie Zertifikate für das Setup des Headless-Browsers für Linux

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 2 Minuten Lesedauer
  • Generieren Sie TLS/SSL-Zertifikate, um die Docker-REST-API zu sichern und HTTP-Anforderungen zu authentifizieren.

    Vorbereitungen

    Führen Sie die im Thema Setup des monitorlosen Browsers für Linux aufgeführten Voraussetzungen aus.

    Erforderliche Rolle: admin in Ihrer Instanz ServiceNow und lokaler Administrator auf dem Hostcomputer.

    Warum und wann dieser Vorgang ausgeführt wird

    Warnung:
    Rufen Sie Zertifizierungsstellenschlüssel von einer vertrauenswürdigen Zertifizierungsstelle ab.

    Wenn die Docker-API verfügbar gemacht wird, werden Anforderungen standardmäßig nicht authentifiziert, wodurch Ihr Hostcomputer angreifbar für Angriffe werden kann. Die Docker-API unterstützt jedoch die TLS-Authentifizierung, bei der Anforderungen anhand von öffentlichen privaten Schlüsseln überprüft werden, die in der HTTPS-Verschlüsselung bereitgestellt werden. In diesem Schritt erstellen Sie diese Schlüssel für den Server und den Client.

    Tipp:
    Um das Speichern dieser zu erleichtern, geben Sie die folgenden Befehle in Ihrem Linux-Terminal ein. Hinweis: Fügen Sie diese Umgebungsvariablen nicht zu Ihrem Terminalprofil hinzu. Aus Sicherheitsgründen sollten sie nur für die Dauer der aktuellen Sitzung vorhanden sein.
    • PASSWORD=" exportieren<password to generate the certificates with> “
    • SERVERIP="<this server's IP address> “
    • HOSTNAME = „“ exportieren<hostname of this server> “
    Weitere Informationen finden Sie unter TLS (HTTPS) zum Schützen des Docker-Daemon-Sockets verwenden.

    Prozedur

    1. Öffnen Sie eine Befehlszeile.
    2. Generieren Sie einen selbstsignierten Zertifizierungsstellenschlüssel, oder rufen Sie ein Schlüsselpaar von einer vertrauenswürdigen Zertifizierungsstelle ab.
      Die folgenden Befehle sind Beispiele. Beachten Sie, dass Ihre Konfiguration variieren kann.
      • openedsl genrsa -aes256 -passout pass:$PASSWORD -out ca-key.pem 4096
      • openedsl req -passin pass:$PASSWORD -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem
      • chmod 0400 ca-key.pem
      • chmod 0444 ca.pem
    3. Generieren Sie das Serverschlüsselpaar mit dem Zertifizierungsstellenschlüssel.
      Die folgenden Befehle sind Beispiele. Beachten Sie, dass Ihre Konfiguration variieren kann.
      • openedsl genrsa -out server-key.pem 4096
      • openedsl req -subj "/CN=$HOSTNAME" -new -key server-key.pem -out server.csr
      • Echo "subjectAltName = DNS:$HOSTNAME,IP:$SERVERIP,IP:127.0.0.1" > extfile.cnf
      • openedsl x509 -passin pass:$PASSWORD -req -days 365 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem -extfile extfile.cnf
    4. Erstellen Sie das Client-Schlüsselpaar mit dem Zertifizierungsstellenschlüssel.
      Die folgenden Befehle sind Beispiele. Beachten Sie, dass Ihre Konfiguration variieren kann.
      • openedsl genrsa -out client-key.pem 4096
      • openedsl req -subj "/CN=$HOSTNAME" -new -key client-key.pem -out client.csr
      • Echo „extendedKeyUsage = clientAuth“ > extfile.cnf
      • openedsl x509 -passin pass:$PASSWORD -req -days 365 -in client.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out client-cert.pem -extfile extfile.cnf

      Jetzt haben Sie alle Ihre Verschlüsselungsschlüssel erstellt.

    5. Importieren Sie den öffentlichen CA-Schlüssel und das Client-Schlüsselpaar in einen Java-Schlüsselspeicher.
      Die folgenden Befehle sind Beispiele. Beachten Sie, dass Ihre Konfiguration variieren kann.

      Erstellen Sie die Schlüsselspeicherdatei, und erstellen Sie ein Passwort dafür (und speichern Sie sie zur späteren Verwendung): keytool -genkey -keyalg RSA -alias dse -keystore my.keystore

      Löschen Sie einen Standardeintrag aus der Schlüsselspeicherdatei: keytool -delete -alias dse -keystore my.keystore

      Importieren Sie den öffentlichen CA-Schlüssel in den Schlüsselspeicher: keytool -import -keystore my.keystore -trustcacerts -alias ca -file ca.pem

      Importieren Sie das Client-Schlüsselpaar.
      Hinweis:
      Sie erstellen eine neue pkcs12-Schlüsselspeicherdatei und importieren das Schlüsselpaar in diese Datei. Kopieren Sie dann den Inhalt in Ihre ursprüngliche Schlüsselspeicherdatei.
      • openedsl pkcs12 -export -name clientkeypair -in client-cert.pem -inkey client-key.pem -out clientkeypair.p12
      • keytool -importkeystore -destkeystore mein.keystore -srckeystore clientkeypair.p12 -srcstoretype pkcs12 -alias clientkeypair

      Nachdem Sie nun alle Zertifikate zur Schlüsselspeicherdatei hinzugefügt haben, speichern Sie die Datei my.keystore für später, da sie in die Instanz ServiceNow hochgeladen wird. Denken Sie außerdem daran, sich das Passwort zu merken, das Sie bei der Aufforderung zum Erstellen der Schlüsselspeicherdatei eingegeben haben. müssen Sie dies in ein Formular in der Instanz ServiceNow eingeben.