Sollte ich auf jedem System einen neuen privaten SSH-Schlüssel erstellen?

10

Ich muss über SSH eine Verbindung zu mehreren Servern von mehreren Geräten herstellen. Ich frage mich, ob ich auf jedem Gerät, von dem aus ich eine Verbindung herstelle, eine neue id_dsa-Datei erstellen soll oder ob es kein Problem gibt, dieselbe id_dsa-Datei auf jedes Gerät zu kopieren.

Zum Beispiel habe ich mein primäres Ubuntu-basiertes Desktop-System und ein MacBook Pro mit ssh. Und ich habe ein Windows-basiertes Netbook mit Putty installiert. Und ich habe ein Android-Handy mit ConnectBot. Von jedem dieser Geräte muss ich möglicherweise SSH auf Dutzenden verschiedener physischer und virtueller Server durchführen.

Auf jedem Server muss mein öffentlicher Schlüssel installiert sein. Außerdem benötigen meine GitHub- und Codaset-Konten meinen öffentlichen Schlüssel.

Um die Schlüsselverwaltung zu vereinfachen, denke ich daran, auf allen diesen Systemen denselben privaten Schlüssel zu verwenden. Ist dies gängige Praxis oder ist es besser, auf jedem System einen privaten Schlüssel zu haben?

Tauren
quelle

Antworten:

3

Wenn Sie auf jedem System denselben öffentlichen Schlüssel verwenden und der private Schlüssel kompromittiert wird, kann auf jedes System zugegriffen werden, das diesen Schlüssel verwendet, mit Ausnahme anderer Einschränkungen.

Ich vertraue darauf, dass Sie passwortgeschützte private Schlüssel verwenden.

In unserer Managementpraxis haben wir "Rollen" mit niedriger, mittlerer und hoher Sicherheit. Jede Rolle verwendet einen anderen Schlüssel. Private Schlüssel mit hoher Sicherheit dürfen niemals an externe Assets übertragen werden, die auf Laptops verwendet werden, die verloren gehen / gestohlen werden könnten usw. Schlüssel mit mittlerer und niedriger Sicherheit können in einer größeren Anzahl von Szenarien bereitgestellt werden.

Ich schlage vor, Ihre Nutzungsmuster zu untersuchen und herauszufinden, was sich seitdem in Bezug auf Sicherheitsrollen ergibt. Was ist der Schaden, der durch den Erhalt Ihres privaten Schlüssels verursacht wird?

Haben Sie darüber nachgedacht, Ihren privaten SSH-Schlüssel auf einem Hardwaregerät abzulegen, von dem er nicht gestohlen werden kann, um den potenziellen Kompromiss des Schlüssels zu beseitigen?

Sowohl Hardware-Sicherheitsmodule als auch Smartcards können verwendet werden, um private SSH-Schlüssel auf sichere Weise zu speichern, sodass alle kryptografischen Vorgänge auf dem Gerät und nicht auf Ihren Betriebssystemen ausgeführt werden können. Sie sind jedoch kein Allheilmittel, da diese im Falle eines Hardwarefehlers auch Backup-Hardwaregeräte erfordern.

jeffatrackaid
quelle
Ja, meine Schlüssel sind passwortgeschützt. Danke für deine Antwort. Sie haben dazu beigetragen, meine Besorgnis zu bestätigen, dass die Verwendung des gleichen Schlüssels auf allen meinen Geräten später zu größeren Problemen führen könnte.
Tauren
2

Das solltest du unbedingt. Sie können jederzeit alle Schlüssel zu Ihrer Datei "authorized_keys2" hinzufügen. Ich mag Jeffatrackaids Vorschlag. Ich würde jedoch für jedes Gerät unterschiedliche private Schlüssel verwenden - warum nicht? Verliere dein Android. Entfernen Sie einfach den Schlüssel aus der Liste der autorisierten Schlüssel. Wenn Sie dies nicht tun, müssen Sie diese Schlüsselebene erneut generieren.

Dies hängt jedoch davon ab, wie Sie das Risiko dieser Vermögenswerte wahrnehmen. Natürlich möchten Sie die Schlüssel nicht verlieren, aber einige können Sie einem höheren Risiko aussetzen, z. B. Github gegen die Wurzel Ihres VPS.


quelle
Zu authorized_keys2authorized_keys
Ihrer Information
Ah ok danke. Ich lege immer Wert darauf, SSHv1 und Chiffren mit geringer Stärke usw. zu deaktivieren
2

Erinnerst du dich, als Debian dieses kleine Entropieproblem beim Generieren von SSH-Schlüsseln hatte? Damals habe ich meine Lektion gut gelernt.

Ich habe meine eigenen privaten Schlüssel für meine eigenen Sachen, z. B. für den Zugriff auf meine persönlichen Server. Ich habe meinen "Allzweck" -Schlüssel, der mich in die meisten meiner Entwicklungsboxen bringt, und schneide dann die Schlüssel pro Client, den ich betreue.

Ich führe auch eine sehr detaillierte Liste der Schlüssel auf welchen Maschinen, nur für den Fall, dass ich sie in Eile ersetzen oder entfernen muss.

Für alles andere , was ernst ist, ich nur LDAP / PAM verwenden, haben , falls ich jemanden entfernen sonst in Eile.

Tim Post
quelle