Gibt es einen Grund, warum die id_rsa.pub
Datei (nur die öffentliche Hälfte des Schlüsselpaars) nicht irgendwo im Web veröffentlicht werden konnte, um die Einrichtung von passwortfreiem SSH auf neuen Computern und Umgebungen zu vereinfachen ? Zum Beispiel in einem dotfiles GitHub-Repository.
Mir ist bewusst, dass:
- die
id_rsa
datei (die private hälfte des schlüsselpaares) muss sorgfältig gehütet werden und - Das Schlüsselpaar sollte mit einer Passphrase geschützt werden
Meine Recherchen haben jedoch keinen ausdrücklichen Hinweis ergeben, dass dies zulässig ist oder empfohlen wird.
Würde derselbe Rat aus Neugier für ein Schlüsselpaar ohne Passphrase gelten?
ssh
ssh-keys
github
passphrase
DouglasDD
quelle
quelle
Antworten:
RSA wurde speziell entwickelt, um Ihnen die Freigabe dieses öffentlichen Schlüssels zu ermöglichen. Sie können ihn also veröffentlichen. Dies ist vergleichbar mit der Funktionsweise von x.509 (und SSL) mit RSA-Zertifikaten.
Sehen Sie sich die Datei an, bevor Sie sie veröffentlichen. Die einzigen Dinge, die drin sein müssen, sind das Schlüsselwort "ssh-rsa" und der base64-codierte Schlüssel. Vielleicht möchten Sie daran festhalten (ich glaube, dies ist jetzt die Standardeinstellung).
Dies gilt unabhängig davon, ob der Schlüssel eine Passphrase hat oder nicht. Eine Passphrase verschlüsselt den privaten Schlüssel und hat keinen Einfluss auf den öffentlichen Schlüssel.
Stellen Sie wie immer sicher, dass Ihr Schlüssel ausreichend entropisch und groß ist. Wenn es von einem defekten PRNG erzeugt wird, ist es möglicherweise vorhersehbar. Das Veröffentlichen dieser Datei birgt jedoch nicht viel zusätzliches Risiko, da ein Angreifer bei einem so kleinen Schlüsselbereich einfach alle Schlüssel im aufgezählten Schlüsselbereich ausprobieren könnte, bis er den richtigen erhält.
Ich empfehle die Verwendung eines 4096-Bit-Schlüssels (angeben
-b 4096
), damit es schwieriger als üblich ist (der Standardwert ist 2048), Ihren öffentlichen Schlüssel in einen privaten Schlüssel umzuwandeln. Dies ist das einzige signifikante Risiko, und es ist nicht sehr groß, da der Algorithmus speziell dafür ausgelegt ist, es unpraktisch zu machen.quelle
Ist es schon. :) Setzen Sie einfach ".keys" an das Ende Ihrer Github-Profil-URL:
https://github.com/tjmcewan.keys
quelle
Während ich in der Regel nicht empfehle, Ihre eigene spezifische Konfiguration in öffentliche Projekt-Repositorys zu stellen (vorausgesetzt, das Repo ist für alle und Ihre Konfiguration ist für Sie allein , es ist nur ein wenig unhöflich), sind die Sicherheitsauswirkungen minimal.
Der einzig vernünftige Angriffsvektor ist die Verwendung dieses öffentlichen Schlüssels, um Sie in einem böswilligen Kontext zu identifizieren . Was das sein könnte, ist mir ein Rätsel, aber der öffentliche Schlüssel identifiziert den privaten Schlüssel eindeutig, obwohl er keine Hinweise auf seine Herkunft gibt.
Es gibt einen Eckfall-Angriffsvektor, der wahrscheinlich nicht zutrifft, aber wenn Sie sich an das Fiasko erinnern, dass Debian versehentlich das PRNG von openssl gebrochen hat , ist jeder auf einem betroffenen System generierte SSH-Schlüssel leicht vorhersehbar und kann anhand seines öffentlichen Schlüssels identifiziert werden. In diesem Fall kann das Veröffentlichen des öffentlichen Schlüssels zu Problemen führen. Oder passender, wenn Sie diesen Schlüssel für irgendetwas verwenden, könnten Sie in Schwierigkeiten geraten.
quelle
Ja, Sie können Ihren SSH-Pubkey veröffentlichen. Und Sie können einen Fingerabdruck des Servers mithilfe des SSHFP-Eintrags in DNS veröffentlichen! Dies kann sehr praktisch sein, wenn Sie beispielsweise den SSH-Schlüssel eines Servers aktualisieren / ändern müssen.
quelle