it-swarm-eu.dev

Wie oft sollte ein SSH-Schlüsselpaar gewechselt werden?

Ich verwende seit Jahren einen 1024-Bit-RSA-Schlüssel für kennwortloses SSH zwischen meinen eigenen Systemen. In jüngerer Zeit habe ich auch damit begonnen, passwortlosen Zugriff auf meine Hosting-Anbieter und auf Quellcode-Repositorys zu verwenden.

Ist es ein Problem, dasselbe Schlüsselpaar über einen längeren Zeitraum zu verwenden und auf mehrere Ressourcen zuzugreifen?

40
Tim Lesher

Ja, genau genommen wird empfohlen, SSH-Schlüssel nach einer Weile abzulaufen (dies kann von der Schlüssellänge, den im Schlüsselgenerator gefundenen Schwachstellen usw. abhängen). Ein solcher Mechanismus war jedoch von SSH nicht vorgesehen. Und es ist umständlich, zu allen möglichen Remote-Hosts zu gehen und den öffentlichen Schlüssel zu löschen.

Es gibt eine Lösung - obwohl ich sie noch nie ausprobiert habe, aber behalte sie, wenn ich etwas Freizeit habe - MonkeySphere für OpenSSH-Projekt . Soweit ich es verstanden habe, können Sie den Ablauf Ihrer Schlüssel verwalten!

10
Huygens

Ich werde hier eine andere Position einnehmen als andere. Meine Empfehlung: Sie müssen Ihren privaten SSH-Schlüssel nicht ändern, es sei denn, Sie haben einen guten Grund, ihn zu ändern.

Begründung: Krypto nutzt sich nicht ab. Bei wiederholtem Gebrauch wird es nicht schwächer.

Der Hauptgrund für die Änderung Ihres privaten Schlüssels besteht darin, dass Sie den Verdacht haben, dass er kompromittiert wurde oder nicht mehr sicher ist. Wenn beispielsweise einer Ihrer Computer gehackt wird und Sie eine Kopie Ihres privaten Schlüssels auf diesem Computer gespeichert haben, würde ich empfehlen, Ihren SSH-Schlüssel zu ändern. In ähnlicher Weise würde ich empfehlen, Ihren SSH-Schlüssel zu ändern, wenn eines Ihrer Backups einen Rundgang durchführt und eine Kopie Ihres privaten SSH-Schlüssels enthält. Wenn Sie Ihren privaten Schlüssel auf einem alten Debian-System generiert haben, ist er möglicherweise unsicher und ich würde empfehlen, ihn zu ändern. Wenn Sie jedoch keinen solchen Grund haben, zu vermuten, dass Ihr privater Schlüssel kompromittiert ist, sehe ich keine Notwendigkeit, ihn zu ändern.

Der Nachteil einer unnötigen Änderung Ihres Schlüssels besteht darin, dass Sie jetzt die Datei authorized_keys Auf jedem Computer aktualisieren müssen, auf dem Sie sich jemals anmelden könnten. Das ist ein bisschen langweilig.

Ich vermute, der Grund, warum einige Leute empfehlen, Ihren privaten Schlüssel zu ändern, ist aus prophylaktischen Gründen: Was ist, wenn einer der Computer, auf denen Ihr privater Schlüssel gespeichert ist, gehackt wurde und Sie es nicht wussten und der Hacker jetzt keinen Zugriff mehr hat? Der Hacker hat möglicherweise noch Ihren privaten Schlüssel. Daher kann es sinnvoll sein, Ihren privaten SSH-Schlüssel gelegentlich zu ändern, um die Gefährdung in solchen Szenarien zu begrenzen. Ich persönlich vermute jedoch, dass ein solches Szenario sehr selten ist und sich wahrscheinlich nicht die Mühe lohnt, Ihren SSH-Schlüssel zu ändern. Wenn andere es vorziehen, ihre SSH-Schlüssel regelmäßig zu ändern, kann ich ihre Gründe verstehen - aber ich persönlich würde mich nicht darum kümmern.

P.S. Wenn es sich um einen Host-Schlüssel handelt (und nicht um Ihren persönlichen Schlüssel), gibt es einen noch stärkeren Grund, den Host-Schlüssel nicht unnötig zu ändern: Wenn Sie den Host-Schlüssel ändern, erhalten alle, die versuchen, sich bei diesem Computer anzumelden, Warnungen dass sie angegriffen werden könnten. Wenn die Leute diese Warnungen routinemäßig sehen, werden sie anfangen, sie als bedeutungsloses Geräusch zu behandeln (es wird eine Situation sein, in der ein Junge einen Wolf weint), was ihren Wert untergräbt. Ändern Sie Host-Schlüssel also nicht routinemäßig ohne guten Grund.

34
D.W.

Nun, natürlich hängt es von der Sensibilität Ihrer Daten ab: Sie schützen Ihre Daten vor Ihrer Nachbarschaft, vor geschäftlichen Angriffen, vor der Regierung?

Dieser Artikel schätzt, dass es möglich ist, einen Computer zu bauen, der RSA-Schlüssel (1024 Bit) in einem Jahr kaputt machen kann und einige Millionen ausgibt. Sie erwähnen viele Studien, die alle mindestens 2048 Bit empfehlen.

Diese Seite kann Ihnen helfen, abzuschätzen, wie lange Ihr Schlüssel Angriffen standhält.

Und diese Frage gibt viele Antworten zur Schlüsselgröße.

Denken Sie auch daran, dass die korrekte Verwendung Ihres privaten Schlüssels nicht bedeutet, dass Sie Probleme haben, wenn mehr als ein Host Ihren öffentlichen Schlüssel hält, und dass die Zeiten, in denen Sie ihn verwenden, ihn auch schwächer machen. Aus diesem Grund wurden privat-öffentliche Schlüssel erstellt, die verwendet werden sollen, ohne das Risiko zu erhöhen, da sie häufiger verwendet werden.

4
woliveirajr

Soweit ich weiß, gibt es bei RSA-Schlüsseln keinen "Schlüsselverschleiß", so dass es kein Problem gibt, den gleichen Schlüsselsatz zu behalten. Wenn Sie den Verdacht haben, dass Ihre Schlüssel kompromittiert wurden, können Sie neue Schlüssel generieren. Andernfalls ist dies nicht unbedingt erforderlich.

2
Oleksi

Es ist Ihr Vertrauen in den Remote-Server. Wenn Sie dem Remote-Server nicht vertrauen, hat das Ändern Ihres SSH-Schlüssels (neuer privater Schlüssel) und das Hochladen eines neuen öffentlichen Teils auf einen Remote-Server keinen Vorteil.

Ihr privater SSH-Schlüssel wird nicht über das Netzwerk übertragen ... Die Sicherheit Ihrer privaten SSH-Schlüssel liegt in Ihrer Verantwortung.

Wenn Ihre Frage allgemeiner war, bedeutet dies, wie Schlüssel von Benutzern erneut validiert werden, dann kommt es darauf an. Sie können einige Tools wie cfengine, puppet verwenden, um die öffentlichen SSH-Schlüssel der Benutzer regelmäßig aus einem Repository/einer Datenbank, die einen Zeitstempel enthält, auf ihre Homedirs hochzuladen. Anschließend können Sie E-Mails an den Benutzer senden, um die Verwendung des Schlüssels zu überprüfen, oder an seinen Manager. Oder Sie können Zertifikate mit ssh verwenden. Obwohl das OpenSSH-Team keine Informationen über ablaufende Zertifikate entwickelt hat ...

Seien Sie weit entfernt von verschiedenen gehackten OpenSh-Lösungen und deren Patches. Würden sie es in Zukunft unterstützen?

1
jirib