Zum Hauptinhalt springen

Anbindung einer Anlage

Der Moment, in dem Vertrauen entsteht – und woran die Anlage erkennt, dass sie dem Richtigen vertraut.

Die Erstanbindung ist die empfindlichste Stelle des gesamten Ablaufs. Hier entscheidet eine Anlage, wem sie künftig glaubt. Diese Seite beschreibt, wie dieser Moment abgesichert ist.

Der Einrichtungscode

Der Ablauf beginnt mit einem Code, den Sie in der Konsole erzeugen und ein Administrator auf der Anlage einfügt. Er sieht so aus:

SFC1.<kodierte Nutzlast>.<Prüfsumme>

Die Nutzlast enthält vier Dinge, die eine Anlage von sich aus nicht kennen kann:

InhaltWozu
Liste der EndpunkteWohin die Anlage ihre Verbindung aufbauen soll
EinmalcodeDas Geheimnis, das genau einmal eingelöst werden kann
Fingerabdruck des Controller-SignaturschlüsselsWoran die Anlage prüft, ob sie mit dem richtigen Controller spricht
AnzeigenameWer um die Anbindung bittet – zur Anzeige vor der Zustimmung

Die angehängte Prüfsumme dient der Tippfehlererkennung, nicht der Sicherheit. Sie fängt einen beim Kopieren zerschnittenen Code ab, bevor daraus eine unverständliche Fehlermeldung wird.

Was den Code schützt

  • Einmalig. Nach dem Einlösen ist er verbraucht. Ein zweites Mal funktioniert er nicht.
  • Kurzlebig. Er verfällt nach 60 Minuten.
  • Zufällig und lang. Das Geheimnis hat 160 Bit Entropie. Es lässt sich nicht erraten.
  • Serverseitig nur als Hash gespeichert. Der Controller legt ausschließlich einen SHA-256-Hash ab, nie den Klartext. Wer die Datenbank liest, findet keinen einlösbaren Code.
  • Ratenbegrenzt. Das Einlösen ist je Quelle begrenzt. Ein Zähler kostet nichts und macht systematisches Durchprobieren sinnlos.
  • Nur mit Berechtigung ausstellbar. Codes prägen heißt Einladungen in die Flotte ausstellen – das dürfen nur die Rollen OWNER und ADMIN, nicht jedes angemeldete Konto.
Ein Einrichtungscode ist ein Geheimnis

Behandeln Sie ihn wie ein Passwort. Geben Sie ihn dem Administrator der Anlage auf einem Weg, dem Sie vertrauen, und erzeugen Sie im Zweifel lieber einen neuen, statt einen alten weiterzureichen.

Schlüssel-Pinning: die entscheidende Prüfung

Beim Einlösen erzeugt die Anlage ein eigenes Ed25519-Schlüsselpaar, sendet den öffentlichen Teil an den Controller und bekommt dessen öffentlichen Signaturschlüssel zurück.

Jetzt kommt der Punkt, auf den alles ankommt: Die Anlage vergleicht diesen Schlüssel mit dem Fingerabdruck aus dem Einrichtungscode. Stimmen sie nicht überein, bricht sie ab und verwirft alles – Schlüsselpaar, Antwort, Verbindung.

Was das verhindert

Ohne diese Prüfung wäre die Erstanbindung genau so vertrauenswürdig wie die TLS-Verbindung im Moment des Einlösens. Ein fehlausgestelltes Zertifikat oder eine kompromittierte Endstelle würden genügen, um eine Anlage auf einen fremden Controller zu ziehen – dauerhaft, denn danach folgt sie dessen Signaturschlüssel. Mit der Prüfung reist das Vertrauen im Code mit, auf demselben Weg, auf dem der Administrator ihn erhalten hat.

Die Zustimmung auf der Anlage

Mit der Anbindung entsteht im Controller ein Anspruch auf die Anlage – im Zustand CLAIMED und mit nur lesenden Rechten. Mehr nicht.

Wirksam wird er erst, wenn ein Administrator ihn auf der Anlage im Admin Power Pack genehmigt. Bis dahin läuft kein einziges Kommando. Der Grant führt danach fest, wer zugestimmt hat und wann – das ist der Nachweis der Einwilligung, auf dem die Auftragsverarbeitung ruht.

Details dazu unter Rechte und Not-Aus.

Der optionale Zustellweg für erreichbare Anlagen

Ist eine Anlage von außen erreichbar, kann der Code statt per Kopieren auch direkt zugestellt werden. Das ersetzt nur den Transport des Codes, nicht die Entscheidung.

Der dafür zuständige Endpunkt auf der Anlage ist bewusst extrem zurückhaltend gebaut:

  • Er antwortet nichts über den Zustand der Anlage. Ob der Code gültig ist, ob die Anlage schon angebunden ist, ob die Warteliste voll ist – die Antwort ist immer dieselbe.
  • Er startet nichts. Vor der Zustimmung entsteht keine ausgehende Verbindung, kein Schlüsselpaar und keine Preisgabe von Hardware-Kennung oder Lizenzschlüssel.
  • Er ist gedeckelt: höchstens 5 offene Anfragen, 10 Minuten Gültigkeit, 10 Anfragen je Quelladresse und Stunde.
Der Anzeigename ist eine Behauptung

Der Name im Zustimmungsdialog stammt aus dem Code des Anfragenden und ist ungeprüft. Die Oberfläche der Anlage stellt ihm deshalb Adresse, Fingerabdruck und Absenderadresse gleichrangig zur Seite. Ein Administrator, der nur auf einen vertrauten Namen klickt, ist der übliche Weg, eine Zustimmung zu erschleichen – prüfen Sie den Fingerabdruck.

Hinter NAT scheitert die Zustellung. Das ist kein Fehlerfall: Der Code bleibt gültig und wird stattdessen einem Menschen übergeben.

Erneute Anbindung

Wird eine bereits angebundene Anlage erneut angemeldet – etwa nach einer Modul-Neuinstallation –, gilt:

  • Die alte Identität wird zurückgezogen, statt eine zweite gültige danebenzustellen. Zwei gültige Schlüssel für eine Anlage hießen, dass ein alter, möglicherweise kompromittierter Agent weiterhin verbinden könnte.
  • Eine Anlage, die bereits von einem anderen Partner angebunden ist, lässt sich nicht mit einem fremden Einrichtungscode übernehmen. Ohne diese Prüfung genügten ein beliebiger gültiger Code und die bekannte Hardware-Kennung, um eine fremde Anlage an sich zu ziehen.

Kurz zusammengefasst

SchrittAbsicherung
Code erzeugennur OWNER und ADMIN; 160 Bit Zufall; serverseitig nur als Hash
Code einlöseneinmalig, 60 Minuten gültig, ratenbegrenzt
Controller-Schlüssel prüfenVergleich gegen den Fingerabdruck aus dem Code – Abbruch bei Abweichung
Anspruch anlegenentsteht als CLAIMED und nur lesend
Freigabeausschließlich durch einen Administrator auf der Anlage, mit Nachweis

Weiter mit Signaturen und Schlüssel.