Solaris 9 9/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

Im folgenden Beispiel für die Installation des Clients 010003BA152A42 im Teilnetz 192.168.255.0 eine PKCS#12-Datei eingesetzt. Dieser Beispielbefehl extrahiert ein Zertifikat namens client.p12 aus einer PKCS#12-Datei. 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
Password:
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=Nezt-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=Nezt-IP

    Gibt die Netzwerk-IP-Adresse für den Client 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
Password:
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