Ich verstehe nicht, wie man das Henne-Ei-Problem bei der Automatisierung der Serverinstallation löst.
Ich habe eine Reihe von Servern, die über PXE neu aufgebaut werden können. Beim Neuaufbau einer Maschine lädt sie alle benötigten Einstellungen – einschließlich ihres privaten Zertifikats, das sie später zur Authentifizierung bei der Verwendung verschiedener Dienste verwendet – von einem Apache-Server. Dieser Apache-Server identifiziert die Clients anhand ihrer IP-Adressen, um ihnen entweder die für einen bestimmten Server vorgesehene Konfiguration oder das vorgesehene Zertifikat bereitzustellen oder die Bereitstellung zu verweigern.
Allerdings könnte die IP-Adresse eines Clients gefälscht werden. Dasselbe gilt für die MAC-Adresse, wenn ich irgendwann auch diese Art der Überprüfung hinzufüge.
Um seine Konfiguration und sein privates Zertifikat sicher abzurufen, sollte die Maschine, die über PXE bootet, daher bereits über ein Zertifikat verfügen, das sie bei der Kommunikation mit dem Apache-Server verwenden kann. Dies scheint jedoch nicht möglich zu sein, da eine Maschine, die über PXE bootet, entweder ganz neu ist oder ihre Festplatte während der Installation ohnehin formatiert.
Übersehe ich etwas? Wie kann ich eine brandneue Maschine identifizieren, ohne dass das Risiko eines Spoofings besteht?
Sollte ich einen ständig verbundenen USB-Stick verwenden, der den privaten Schlüssel enthält? Oder gibt es andere Möglichkeiten?
Antwort1
Wir verwenden die VorarbeiterBootdisk-Pluginfür diesen Zweck. Ich behaupte nicht, dass es die richtige oder einzige Methode ist, es ist die, die wir erfolgreich anwenden.
Jedes Mal, wenn ein Host (neu) bereitgestellt werden muss, wird ein kurzlebiges Token generiert und in der mit dem Host verbundenen Datenbank gespeichert. Dieses Token wird in eine ISO-Datei mit der IPXE-Binärdatei und einem Skript eingefügt, das die Kickstart-Datei vom Bereitstellungshost nur dann herunterlädt, wenn sie das richtige Token als Kennung bietet. Sobald der Host bereitgestellt ist, wird das Token gelöscht. Nach einer bestimmten (einstellbaren, aus dem Kopf fallenden Standardzeit von 60 Minuten) wird das Token ungültig.
Dies funktioniert sowohl mit dem BIOS als auch mit der UEFI-Firmware und erfordert kein PXE, sondern nur http(s), sodass Sie tatsächlich Internetbereitstellungen mit wenigen Änderungen durchführen können (praktisch für die Bereitstellung von Hardware an Remotestandorten).