Sicheres Speichern der Datei „id_rsa.pub“ in meinem öffentlichen Dotfiles-Repository

Sicheres Speichern der Datei „id_rsa.pub“ in meinem öffentlichen Dotfiles-Repository

Ich frage mich also, wie ich diese Datei in mein Dotfiles-GitHub-Repo bekommen kann.

Ich habe es satt, jedes Mal, wenn ich an einem neuen Computer sitze oder mein Betriebssystem neu installiere usw., einen neuen SSH-Schlüssel generieren zu müssen.

Was ist also der beste Weg, dies zu tun? Ich denke, es reicht aus, der Datei bei der Generierung des Schlüssels eine Passphrase zuzuweisen. Das sollte sie verschlüsseln oder sie ohne Passphrase unbrauchbar machen. Ist das gut genug?

Wenn nicht, gibt es eine Möglichkeit, die Datei zu verschlüsseln, sodass ich sie ohne Bedenken sicher ins Internet hochladen, aber mit dem richtigen Kennwort jederzeit verwenden kann?

Antwort1

id_rsa.pubist der öffentliche Schlüssel und muss überhaupt nicht geschützt werden. Tatsächlich ist esBedürfnisseid_rsamuss veröffentlicht werden, damit es funktioniert. Ich gehe davon aus, dass Sie in dieser Frage tatsächlich (den privaten Schlüssel) meinen .

Sie müssen sicherlich nicht jedes Mal einen neuen SSH-Schlüssel generieren, wenn Sie an einem neuen Computer arbeiten oder Ihr Betriebssystem neu installieren. Sie können diese Datei von einem Computer auf einen anderen kopieren. Oder, wenn Sie vorübergehend an einem anderen Computer arbeiten, auf dem Sie Ihren Schlüssel nicht speichern möchten, können Sie sich per Remote-Zugriff mit bei dem Computer anmelden, auf dem der Schlüssel gespeichert ist, ssh -Aund den Schlüssel mit in Ihren lokalen Agenten laden ssh-add. (Sie sollten dies nur tun, wenn Sie auf dem Computer, den Sie vorübergehend verwenden, root vertrauen.)

Sie sollten außerdem bereits über eine Passphrase für Ihren SSH-Schlüssel verfügen (wenn nicht, fügen Sie sofort eine hinzu oder, noch besser, betrachten Sie den Schlüssel als kompromittiert und ersetzen Sie ihn!), da sonst jeder, der auch nur kurzzeitig Zugriff auf den Computer erhält, auf dem der Schlüssel gespeichert ist, darauf Zugriff hat.

Wenn das manuelle Kopieren der Datei von einem Computer auf einen anderen für Sie unbequem ist, können Sie Ihren SSH-Schlüssel in der Cloud (GitHub oder anderswo) speichern. Persönlich würde ich das lieber nicht tun.

Ich gehe davon aus, dass Sie zu diesem Zweck ein privates GitHub-Repository verwenden möchten. Obwohl ein SSH-Schlüssel mit einer Passphrase für jeden ohne die Passphrase nutzlos sein sollte, sollten Sie den verschlüsselten Schlüssel dennoch für sich behalten, falls jemand jemals an Ihre Passphrase gelangt.

BEARBEITEN: Mehr zum Teilenid_rsa

Auch wenn id_rsaes für jeden unbrauchbar ist, der nicht im Besitz der dazugehörigen Passphrase ist, sollten Sie es trotzdem nicht weitergeben.

Der SSH-Schlüssel kann als eine Art Zwei-Faktor-Authentifizierung betrachtet werden. Die id_rsaDatei istEtwas, das Sie haben. Die Passphrase ist „Etwas, das Sie wissen“. Nur zusammen sind sie nützlich. Ich sage „so in der Art“, weil Sie die Datei nicht wirklich mit sich herumtragen, id_rsawie Sie es bei der Komponente „Etwas, das Sie haben“ eines echten Zwei-Faktor-Authentifizierungssystems tun würden.

Wenn Sie die id_rsaDatei nicht freigeben, bietet dies einen gewissen Schutz für den Fall, dass Ihre Passphrase an jemand anderen weitergegeben wird. In diesem Fall sollten Sie den Schlüssel auf jeden Fall widerrufen, aber zumindest besteht die Chance, dass ein Angreifer nichts tun kann, wenn er keine Kopie von erhält id_rsa.

verwandte Informationen