Solaris 9 4/04 Installationshandbuch

(Optional) Schützen der Daten mit HTTPS

Zum Schutz Ihrer Daten während der Übertragung vom WAN-Boot-Server auf den Client können Sie HTTPS (HTTP over Secure Sockets Layer) einsetzen. Wenn Sie die in Sichere WAN-Boot-Installationskonfiguration beschriebene sicherere Installationskonfiguration verwenden möchten, müssen Sie HTTPS auf Ihrem Webserver aktivieren.

Führen Sie die folgenden Schritte durch, um die Webserver-Software auf dem WAN-Boot-Server auf die Verwendung von HTTPS einzustellen:

Einsatz digitaler Zertifikate für die Server- und Client-Authentifizierung

Das WAN-Boot-Installationsverfahren erlaubt den Einsatz von PKCS#12-Dateien für eine Installation über HTTPS mit Server- oder sowohl Server- als auch Client-Authentifizierung. Die Voraussetzungen und Richtlinien für die Verwendung von PKCS#12-Dateien lesen Sie bitte unter Voraussetzungen für digitale Zertifikate nach.

Führen Sie folgende Schritte durch, um eine PKCS#12-Datei in der WAN-Boot-Installation zu verwenden:

Der Befehl wanbootutil stellt Optionen zum Durchführen der Schritte in der vorigen Liste zur Verfügung.

Erzeugen Sie, bevor Sie eine PKCS#12-Datei aufteilen, geeignete Unterverzeichnisse in der /etc/netboot-Hierarchie auf dem WAN-Boot-Server.

So erzeugen Sie ein vertrauenswürdiges Zertifikat und einen privaten Schlüssel für den Client
  1. Nehmen Sie auf dem WAN-Boot-Server den gleichen Benutzerstatus an wie der Webserver-Benutzer.

  2. Extrahieren Sie das vertrauenswürdige Zertifikat aus der PKCS#12-Datei. Fügen Sie das Zertifikat in die Datei truststore des Clients in der /etc/netboot-Hierarchie ein.


    # wanbootutil p12split -i p12cert \
      -t /etc/netboot/Netz-IP/Client-ID/truststore
    
    p12split

    Option für den Befehl wanbootutil, die bewirkt, dass eine PKCS#12-Datei in separate Dateien für den privaten Schlüssel und das Zertifikat aufgeteilt wird.

    -i p12cert

    Steht für den Namen der aufzuteilenden PKCS#12-Datei.

    -t /etc/netboot/Netz-IP/Client-ID/truststore

    Fügt das Zertifikat in die Datei truststore des Clients ein. Netz-IP ist die IP-Adresse des Teilnetzes, in dem sich der Client befindet. Client-ID kann eine benutzerdefinierte oder die per DHCP zugewiesene Client-ID sein.

  3. (Optional) Entscheiden Sie, ob Sie mit Client-Authentifizierung arbeiten möchten.

    1. Fügen Sie das Client-Zertifikat in die Datei certstore des Clients ein.


      # wanbootutil p12split -i p12cert -c \
        /etc/netboot/Netz-IP/Client-ID/certstore -k Schlüsseldatei
      
      p12split

      Option für den Befehl wanbootutil, die bewirkt, dass eine PKCS#12-Datei in separate Dateien für den privaten Schlüssel und das Zertifikat aufgeteilt wird.

      -i p12cert

      Steht für den Namen der aufzuteilenden PKCS#12-Datei.

      -c /etc/netboot/Netz-IP/Client-ID/certstore

      Fügt das Client-Zertifikat in die Datei certstore des Clients ein. Netz-IP ist die IP-Adresse des Teilnetzes, in dem sich der Client befindet. Client-ID kann eine benutzerdefinierte oder die per DHCP zugewiesene Client-ID sein.

      -k Schlüsseldatei

      Steht für den Namen des privaten SSL-Schlüssels des Clients, der aus der aufgeteilten PKCS#12-Datei generiert werden soll.

    2. Fügen Sie den privaten Schlüssel in die keystore-Datei des Clients ein.


      # wanbootutil keymgmt -i -k Schlüsseldatei \
         -s /etc/netboot/Netz-IP/Client-ID/keystore -o type=rsa
      
      keymgmt -i

      Fügt einen privaten SSL-Schlüssel in die Datei keystore des Clients ein.

      -k Schlüsseldatei

      Steht für den Namen der im vorigen Schritt erzeugten Schlüsseldatei des Clients.

      -s /etc/netboot/Netz-IP/Client-ID/keystore

      Gibt den Pfad zur Datei keystore des Clients an.

      -o type=rsa

      Gibt RSA als Schlüsseltyp an.


Beispiel 43–3 Generieren vertrauenswürdiger Zertifikate für die Server-Authentifizierung

In folgendem Beispiel wird der Client 010003BA152A42 im Teilnetz 192.168.255.0 unter Verwendung einer PKCS#12-Datei installiert. Dabei wird aus einer PKCS#12-Datei namens client.p12 ein Zertifikat extrahiert. Anschließend speichert der Befehl den Inhalt des vertrauenswürdigen Zertifikats in der Datei truststore des Clients.

Bevor Sie diese Befehle ausführen, müssen Sie die Benutzerrolle des Webserver-Benutzers annehmen. In diesem Beispiel die Benutzerrolle nobody.


server# su nobody
Passwort:
nobody# wanbootutil p12split -i client.p12 \
   -t /etc/netboot/192.168.255.0/010003BA152A42/truststore
nobody# chmod 600 /etc/netboot/192.168.255.0/010003BA152A42/truststore

Erzeugen eines Hashing- und eines Chiffrierschlüssels

Wenn Sie Ihre Daten mit HTTPS übertragen möchten, müssen Sie einen HMAC SHA1-Hashing-Schlüssel und einen Chiffrierschlüssel (Verschlüsselung) erzeugen. Falls Sie beabsichtigen, die Installation über ein halbprivates Netzwerk vorzunehmen, können Sie sich auch gegen eine Verschlüsselung der Installationsdaten entscheiden. Mit einem HMAC SHA1-Hashing-Schlüssel kann die Integrität des wanboot-Programms überprüft werden. In Schutz der Daten während einer WAN-Boot-Installation erhalten Sie eine Übersicht über Hashing-Schlüssel und die Verschlüsselung (Chiffrierschlüssel).

Mit dem Befehl wanbootutil keygen können Sie diese Schlüssel generieren und im gewünschten /etc/netboot-Verzeichnis speichern.

So erzeugen Sie einen Hashing- und einen Chiffrierschlüssel
  1. Nehmen Sie auf dem WAN-Boot-Server den gleichen Benutzerstatus an wie der Webserver-Benutzer.

  2. Erzeugen Sie den HMAC SHA1-Masterschlüssel.


    # wanbootutil keygen -m
    
    keygen -m

    Erzeugt den HMAC SHA1-Masterschlüssel für den WAN-Boot-Server.

  3. Erzeugen Sie aus dem Masterschlüssel den HMAC SHA1-Hashing-Schlüssel für den Client.


    # wanbootutil keygen -c -o [net=Netz-IP,{cid=Client-ID,}]type=sha1
    
    -c

    Generiert den Hashing-Schlüssel für den Client aus dem Masterschlüssel.

    -o

    Bedeutet, dass dem Befehl wanbootutil keygen weitere Optionen übergeben werden.

    (Optional) net=Netz-IP

    Gibt die IP-Adresse des Teilnetzes an, in dem sich der Client befindet. Wenn Sie die Option net nicht angeben, wird der Schlüssel in der Datei /etc/netboot/keystore gespeichert und steht allen WAN-Boot-Clients zur Verfügung.

    (Optional) cid=Client-ID

    Gibt die Client-ID an. Die Client-ID kann eine benutzerdefinierte oder die per DHCP zugewiesene Client-ID sein. Der Option cid muss ein gültiger net=-Wert vorangestellt werden. Wenn Sie die Option cid nicht zusammen mit net angeben, wird der Schlüssel in der Datei /etc/netboot/Netz-IP/keystore gespeichert. Dieser Schlüssel steht allen WAN-Boot-Clients im Teilnetz Netz-IP zur Verfügung.

    type=sha1

    Weist das Dienstprogramm wanbootutil keygen an, einen HMAC SHA1-Hashing-Schlüssel für den Client zu erzeugen.

  4. Entscheiden Sie, ob ein Chiffrierschlüssel für den Client generiert werden soll.

    Einen Chiffrierschlüssel, also eine Verschlüsselung, brauchen Sie dann, wenn Sie eine WAN-Boot-Installation per HTTPS durchführen möchten. Bevor der Client eine HTTPS-Verbindung zum WAN-Boot-Server herstellt, überträgt der WAN-Boot-Server verschlüsselte Daten und Informationen an den Client. Mithilfe des Chiffrierschlüssels kann der Client diese Informationen entschlüsseln und bei der Installation auf sie zugreifen.

    • Wenn Sie eine sicherere WAN-Installation per HTTPS mit Server-Authentifizierung durchführen möchten, fahren Sie mit dem nächsten Schritt fort.

    • Wenn nur die Integrität des wanboot-Programms überprüft werden soll, benötigen Sie keine Verschlüsselung. Fahren Sie in diesem Fall mit Schritt 6 fort.

  5. Chiffrierschlüssel für den Client erzeugen


    # wanbootutil keygen -c -o [net=Netz-IP,{cid=Client-ID,}]type=Schlüsseltyp
    
    -c

    Erzeugt den Chiffrierschlüssel für den Client.

    -o

    Bedeutet, dass dem Befehl wanbootutil keygen weitere Optionen übergeben werden.

    (Optional) net=Netz-IP

    Gibt die Netzwerk-IP-Adresse des Clients an. Wenn Sie die Option net nicht angeben, wird der Schlüssel in der Datei /etc/netboot/keystore gespeichert und steht allen WAN-Boot-Clients zur Verfügung.

    (Optional) cid=Client-ID

    Gibt die Client-ID an. Die Client-ID kann eine benutzerdefinierte oder die per DHCP zugewiesene Client-ID sein. Der Option cid muss ein gültiger net=-Wert vorangestellt werden. Wenn Sie die Option cid nicht zusammen mit net angeben, wird der Schlüssel in der Datei /etc/netboot/Netz-IP/keystore gespeichert. Dieser Schlüssel steht allen WAN-Boot-Clients im Teilnetz Netz-IP zur Verfügung.

    type=Schlüsseltyp

    Weist das Dienstprogramm wanbootutil keygen an, einen Chiffrierschlüssel für den Client zu erzeugen. Schlüsseltyp kann den Wert 3des oder aes annehmen.

  6. Installieren Sie die Schlüssel auf dem Client-System.

    In Installation von Schlüsseln auf dem Client finden Sie Anweisungen zum Installieren von Schlüsseln auf einem Client.


Beispiel 43–4 Erzeugen der erforderlichen Schlüssel für die WAN-Boot-Installation per HTTPS

In folgendem Beispiel wird ein HMAC SHA1-Masterschlüssel für den WAN-Boot-Server generiert. Außerdem wird in diesem Beispiel ein HMAC SHA1-Hashing-Schlüssel und eine 3DES-Verschlüsselung für den Client 010003BA152A42 im Teilnetz 192.168.255.0 generiert.

Bevor Sie diese Befehle ausführen, müssen Sie die Benutzerrolle des Webserver-Benutzers annehmen. In diesem Beispiel die Benutzerrolle nobody.


server# su nobody
Passwort:
nobody# wanbootutil keygen -m
nobody# wanbootutil keygen -c -o net=192.168.255.0,cid=010003BA152A42,type=sha1
nobody# wanbootutil keygen -c -o net=192.168.255.0,cid=010003BA152A42,type=3des