Die gleiche Leier

Wenn sich ein Server das erste Mal mit einem Router verbindet, werden wie bei der Client-Kommunikation das SILC Key Exchange Protokoll und das SILC Connection Authentication Protocol ausgeführt.

Server können nicht mit anderen Servern kommunizieren, Clients aber durchaus mit Routern. Letzteres ist insbesondere in kleinen Netzen äußerst praktisch. Analog zu den Clients besitzt auch jeder Server seine eigene, im Netz eindeutige Server ID. Um noch mehr Begriffe einzuführen, bezeichnet die SILC-Spezifikation einen Router samt der direkt an ihn angeschlossenen Server und Clients als Zelle (Cell). Eine Zelle hat immer einen aktiven Router und darf mehrere Server und Clients besitzen. Zusätzlich darf die Zelle noch über einen oder mehrere Backup-Router verfügen, die im Falle eines Router-Infarkts dessen Arbeit übernehmen.

Abbildung 2: Ein Ausschnitt aus einen SILC-Netz, das zwei Zellen zeigt.

Während die Server eine Sterntoplogie verwenden ( Abbildung 2 ), sind die Router untereinander in einem Ring verbunden. Neben diesen primären Verbindungen dürfen sie zusätzliche, sekundäre Arme zu anderen Routern auswerfen. Das Ergebnis ist dann ein so genanntes Hybrid-Ring-Mesh-Netz ( Abbildung 3 ).

Abbildung 3: Die primären Verbindungen der Router formen einen Ring, die sekundären erhöhen die Ausfallsicherheit und die Übertragungsgeschwindigkeit.

Private Nachrichten

Die von Alice abgeschickte Nachricht wandert also von ihrem Client über einen Server und dann weiter über den Router in Richtung Bob. Ihre private Nachricht wird dabei standardmäßig mit dem Session Key verschlüsselt, der in der ersten Phase über das SKE-Protokoll ausgehandelt wurde. Allerdings gilt der Session Key immer nur zwischen zwei Computern im SILC-Netzwerk: Der Client verschlüsselt die Nachricht mit dem Session Key und schiebt sie auf den Server. Dieser muss die Nachricht nun an den Router weiterleiten. Zwischen Server und Router wurde jedoch ein anderer Session Key ausgehandelt. Folglich muss der Server die Nachricht erst wieder entschlüsseln und dann mit dem, für die Verbindung zum Router gültigen Sitzungsschlüssel neu chiffrieren.

Abbildung 4: Da der Session Key nur zwischen zwei Parteien im SILC-Netzerwerk gilt, müssen die Server die Pakete vor dem Weitertransport auspacken.
Abbildung 5: Beim Einsatz eines zusätzlichen Private Keys, bleibt der Inhalt des Pakets den Servern verborgen.

Wem dies zu unsicher ist, der darf die Nachricht mit einem zusätzlichen, so genannten Private Message Key kodieren. Diesen Schlüssel kennen nur die beiden Clients. Alice kodiert mit ihm ihre Nachricht, die dann über das SILC-Netzwerk fließt und schließlich bei Bob landet. Da nur er den Private Message Key kennt, kann auch nur er die Nachricht wieder entschlüsseln. Allerdings müssen sich Alice und Bob dazu irgendwie auf einen gemeinsamen Schlüssel einigen. Damit der Hörer auf der Telefongabel liegen bleiben kann, wendet SILC einen kleinen Trick an: Der Schlüssel wird nur zwischen den zwei Clients über das SKE Protokoll ausgehandelt. Einer der beiden Clients verwandelt sich dazu in einen SKE Server und weist den anderen Client an, sich mit ihm zu verbinden. Auf diese Weise umgehen die beiden Clients das restliche SILC-Netz, womit auch nur sie beide den dabei ausgehandelten Schlüssel kennen.

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023