Abo
  • Services:
Anzeige
OpenSSH wird bald Schlüssel reibungslos tauschen können.
OpenSSH wird bald Schlüssel reibungslos tauschen können. (Bild: OpenSSH)

OpenSSH: Key-Rotation für die Secure Shell

OpenSSH wird bald Schlüssel reibungslos tauschen können.
OpenSSH wird bald Schlüssel reibungslos tauschen können. (Bild: OpenSSH)

Bei der nächsten Version von OpenSSH wird es möglich sein, Server-Keys mit einem automatisierten Verfahren zu rotieren. Bislang ließen sich Schlüssel bei SSH nur mit viel manuellem Aufwand austauschen.

Anzeige

Serveradministratoren, die SSH schon länger nutzen, kennen oft das Problem: Wer einmal einen Schlüssel für den SSH-Daemon erstellt hat, kann diesen nur umständlich wieder ändern. Anders als beispielsweise TLS-Zertifikate haben SSH-Keys kein Ablaufdatum und werden von keiner Zertifizierungsstelle signiert. Vielmehr basiert SSH auf einem Trust-on-first-use-System - genau das macht aber beim Schlüsselwechsel Probleme. Die nächste Version 6.8 von OpenSSH soll dies lösen mit einem System zur Schlüsselrotation.

Trust on First Use

Jeder SSH-Server benötigt dauerhaft ein oder mehrere Schlüsselpaare für ein Public-Key-Verfahren. Dieser Schlüssel dient dazu, den Verbindungsaufbau abzusichern und einen Sitzungsschlüssel auszuhandeln. Üblicherweise speichert der SSH-Client beim ersten Verbindungsaufbau einen Fingerabdruck des verwendeten öffentlichen Schlüssels. Bei künftigen Verbindungsversuchen wird der Serverschlüssel dann anhand dieses Fingerabdrucks geprüft.

Das funktioniert prima, solange der Server denselben Schlüssel behält. Doch ein reibungsloser Wechsel des Schlüssels ist in diesem Konzept nicht vorgesehen. Wenn der Serverbetreiber ein neues Schlüsselpaar erstellt, erhält der Nutzer eine Warnung. Im SSH-Client von OpenSSH gibt es auch keine Möglichkeit, diese Warnung einfach zu ignorieren. Vielmehr muss der alte Schlüssel zunächst aus der lokalen Konfiguration entfernt werden, damit ein neuer Schlüssel akzeptiert werden kann.

DSA-Schlüssel mit 1024 Bit

Dabei stecken viele Serverbetreiber in einem Dilemma. Aus Sicherheitsgründen wäre es eigentlich sinnvoll, den Schlüssel gelegentlich zu wechseln. Außerdem sind viele ältere Schlüssel aus heutiger Sicht nicht gerade optimal. Die ursprüngliche SSH-Spezifikation sah etwa vor, dass jeder Server das DSA-Verfahren unterstützen muss. Der Grund: Damals war RSA noch patentiert und galt somit als problematisch. Ursprünglich war DSA aber nur für 1024 Bit spezifiziert, DSA mit längeren Schlüsseln hat sich nie allgemein durchgesetzt. Und ganz generell gibt es Vorbehalte gegen das DSA-Verfahren: Bei schlechten Zufallsgeneratoren kann es katastrophal scheitern.

Auch ältere RSA-Schlüssel wurden oft in den Standardeinstellungen der Linux-Distributionen automatisch mit 1024 Bit generiert. Neben RSA und DSA unterstützen neuere OpenSSH-Versionen verschiedene Verfahren auf Basis elliptischer Kurven, als ideal gilt zurzeit der Ed25519-Algorithmus. Gegen ECDSA gibt es ähnliche Vorbehalte wie bei DSA.

Neben Problemen mit alten Krypto-Algorithmen kann es auch Notfälle geben, in denen ein Schlüssel ausgetauscht werden muss, etwa wenn der Server gehackt wurde. Doch die bisherige Funktionsweise von SSH macht den Schlüsselwechsel enorm umständlich. Ein Serverbetreiber muss alle Nutzer informieren, diese müssen manuell den alten Schlüssel entfernen.

Reibungsloser Schlüsselwechsel

All diese Probleme beschreibt OpenSSH-Entwickler Damien Miller in einem Blogeintrag - und bietet eine Lösung an. Künftig können OpenSSH-Server beim Verbindungsaufbau die Fingerprints mehrerer öffentliche Schlüssel an den Client senden. Das können Schlüssel mit neuen Algorithmen sein, aber auch Ersatzschlüssel für den Notfall, falls einmal der Server-Key kompromittiert wird.

Ein Client, der diese Funktion ebenfalls unterstützt, speichert dann alle Key-Fingerprints, die ein Server ausliefert, automatisch in seiner Konfiguration. Keys, die nicht vom Server geliefert werden, werden automatisch aus der Konfiguration entfernt.

Damit wird ein Schlüsselaustausch deutlich reibungsloser. Ein Serverbetreiber kann bereits für die Zukunft einen Ersatzschlüssel ausliefern. Dazu muss auf dem Server nur der öffentliche Schlüssel vorliegen - der privaten Schlüssel kann offline an einem sicheren Ort gespeichert werden. Probleme treten dann nur noch auf, wenn ein Nutzer sich im Zeitraum eines Schlüsselwechsels nie einloggt.

Voraussetzung für den reibungslosen Schlüsselwechsel ist natürlich, dass alle Nutzer eines Servers einen SSH-Client einsetzen, der diese Funktion auch unterstützt. Bislang ist das Feature nur in OpenSSH implementiert, und auch dort wird es erst ab der bislang nicht veröffentlichten Version 6.8 verfügbar sein. Insbesondere in der Windows-Welt wird häufig das Programm PuTTY eingesetzt, auf Embedded-Devices kommt vielfach Dropbear zum Einsatz.

Key-Management wird komplexer

Für Serveradministratoren ist die neue Funktion zum Schlüsselwechsel eine Erleichterung, sie erfordert aber auch ein ausgefeilteres Key-Management. Ersatzschlüssel müssen erzeugt und vorgehalten werden. Auch bei TLS wird das Schlüsselmanagement in Zukunft komplexer: Für HTTP Public Key Pinning ist das Bereithalten von Ersatzschlüsseln ebenfalls sinnvoll.


eye home zur Startseite
Lala Satalin... 03. Feb 2015

Nein. Eher auf einem USB-Stick, der hinter 250 Meter dickem, massiven Panzerstahl liegt.

widdermann 03. Feb 2015

Genau deswegen ist OpenSSH nervig. Ich hab noch nie den Fingerprint verglichen. Das geht...

xnor 02. Feb 2015

Jein. Du kannst dann einen Ersatzschlüssel für den Fall eines Einbruchs auf dem Server...



Anzeige

Stellenmarkt
  1. ADAC SE, München
  2. adesso AG, Stuttgart, München, Karlsruhe
  3. Max-Planck-Institut für Plasmaphysik, Greifswald
  4. Dürr IT Service GmbH, Bietigheim-Bissingen


Anzeige
Hardware-Angebote
  1. 329.99$
  2. 164.99$
  3. 198,00€

Folgen Sie uns
       

Anzeige
Whitepaper
  1. Globale SAP-Anwendungsunterstützung durch Outsourcing
  2. Sicherheitsrisiken bei der Dateifreigabe & -Synchronisation
  3. Praxiseinsatz, Nutzen und Grenzen von Hadoop und Data Lakes


  1. 5K-Display

    LG Ultrafine 5K mit Verbindungsproblemen zum Mac

  2. IOS, TVOS, MacOS und WatchOS

    Apple aktualisiert seine Betriebssysteme

  3. Ohrhörer

    Apples Airpods verlieren bei Telefonaten die Verbindung

  4. Raumfahrt

    Chang'e 5 fliegt zum Mond und wieder zurück

  5. Android 7.0

    Sony stoppt Nougat-Update für bestimmte Xperia-Geräte

  6. Dark Souls 3 The Ringed City

    Mit gigantischem Drachenschild ans Ende der Welt

  7. HTTPS

    Weiterhin rund 200.000 Systeme für Heartbleed anfällig

  8. Verkehrsexperten

    Smartphone-Nutzung am Steuer soll strenger geahndet werden

  9. Oracle

    Java entzieht MD5 und SHA-1 das Vertrauen

  10. Internetzensur

    China macht VPN genehmigungspflichtig



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Halo Wars 2 angespielt: Mit dem Warthog an die Strategiespielfront
Halo Wars 2 angespielt
Mit dem Warthog an die Strategiespielfront

Reverse Engineering: Mehr Spaß mit Amazons Dash-Button
Reverse Engineering
Mehr Spaß mit Amazons Dash-Button
  1. Online-Einkauf Amazon startet virtuelle Dash-Buttons

Glasfaser: Nun hängt die Kabel doch endlich auf!
Glasfaser
Nun hängt die Kabel doch endlich auf!
  1. US-Präsident Zuck it, Trump!
  2. Fake News Für Facebook wird es hässlich
  3. Nach Angriff auf Telekom Mit dem Strafrecht Router ins Terrorcamp schicken oder so

  1. Re: Das einzige was diese Mouthbreather verstehen...

    Reudiga | 07:47

  2. Re: Endlich :-)

    merodac | 07:46

  3. Re: Redakteur noch im Wochenendkoma?

    merodac | 07:45

  4. Re: ...keine verlässlichen Angaben

    My2Cents | 07:40

  5. Re: Schade, dass es keinen Kommunismus in China gibt

    Mixermachine | 07:33


  1. 07:59

  2. 07:39

  3. 07:23

  4. 18:19

  5. 17:28

  6. 17:07

  7. 16:55

  8. 16:49


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel