Anbindung einer Anlage
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:
| Inhalt | Wozu |
|---|---|
| Liste der Endpunkte | Wohin die Anlage ihre Verbindung aufbauen soll |
| Einmalcode | Das Geheimnis, das genau einmal eingelöst werden kann |
| Fingerabdruck des Controller-Signaturschlüssels | Woran die Anlage prüft, ob sie mit dem richtigen Controller spricht |
| Anzeigename | Wer 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.
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.
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 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
| Schritt | Absicherung |
|---|---|
| Code erzeugen | nur OWNER und ADMIN; 160 Bit Zufall; serverseitig nur als Hash |
| Code einlösen | einmalig, 60 Minuten gültig, ratenbegrenzt |
| Controller-Schlüssel prüfen | Vergleich gegen den Fingerabdruck aus dem Code – Abbruch bei Abweichung |
| Anspruch anlegen | entsteht als CLAIMED und nur lesend |
| Freigabe | ausschließlich durch einen Administrator auf der Anlage, mit Nachweis |
Weiter mit Signaturen und Schlüssel.