Ist es ein schwerwiegender Fehler, versehentlich .ssh / authorized_keys zu entfernen?


13

Ich bin neu in der Einrichtung von SSH-Schlüsseln unter Ubuntu 16.04. Ich habe nach einem autorisierten Schlüssel zum Entfernen von named gesucht, anneaber ich glaube, ich habe die gesamte authorized_keysDatei gelöscht .

mike@mike-thinks:~$ rm /home/mike/.ssh/
authorized_keys  id_rsa           id_rsa.pub       known_hosts
mike@mike-thinks:~$ rm /home/mike/.ssh/authorized_keys 

Ist es ein schwerwiegender Fehler? Wenn ja, wie kann man sie regenerieren? Inzwischen habe ich das gemacht:

mike@mike-thinks:~/.ssh$ touch ~/.ssh/authorized_keys
mike@mike-thinks:~/.ssh$ ls
authorized_keys  id_rsa  id_rsa.pub  known_hosts
mike@mike-thinks:~/.ssh$ chmod 600 ~/.ssh/authorized_keys

Wie kam es, dass der erste rmBefehl den Inhalt des Verzeichnisses auflistete? Ist das ein Kopierfehler, der sein sollte ls /home/mike/.ssh/?
Barmar

3
@Barmar, so sieht es in Bash aus, wenn Sie die Tabulatortaste drücken, um den Pfad automatisch zu vervollständigen, und es gibt mehrere Möglichkeiten.
ilkkachu

2
Jetzt ist der beste Zeitpunkt, um über Backups und Wiederherstellungen nachzudenken .
Setzen Sie Monica - M. Schröder am

Antworten:


21

Die ~/.ssh/authorized_keysDatei enthält eine Liste der öffentlichen Schlüssel. Es ermöglicht jedem, der einen privaten Schlüssel besitzt, der einem dieser Schlüssel entspricht, eine Verbindung zu diesem Computer herzustellen und unter diesem Benutzerkonto (der Tilde) Fernzugriff zu erhalten~ am Anfang des Pfads zeigt an, dass sich diese Datei im Ausgangsverzeichnis des aktuellen Benutzers befindet).

Auf dem Server (die Maschine , die Sie wollen eine Verbindung zu ):

Wenn Sie diese Datei gelöscht haben, kann sich niemand unter diesem Benutzerkonto mit seinen privaten Schlüsseln authentifizieren. Die Kennwortauthentifizierung würde weiterhin funktionieren, es sei denn, sie wurde deaktiviert.

Sie müssten die Datei neu generieren und alle öffentlichen Schlüssel hinzufügen, für die Sie den Zugriff erneut mithilfe der Authentifizierungsmethode für öffentliche Schlüssel gewähren möchten.

Auf dem Client (der Maschine , die Sie verbinden möchten aus , dh dem lokalen Rechner):

Hier brauchst du kein authorized_keys Datei, da Sie wahrscheinlich keine Schlüssel autorisieren und ihnen Remotezugriff auf Ihren lokalen Computer gewähren möchten. Es sollte leer oder gelöscht sein.

Auf dem Client müssen Sie nur die privaten Schlüssel - Dateien , die auf dem Server zugelassen sind (dh die ihren entsprechenden öffentlichen Schlüssel in der authorized_keysDatei auf dem Server) und gegebenenfalls eine geeignete configund known_hostsDatei.


Vielen Dank ! Hmm, ich bin wirklich neu in öffentlichen Schlüsseln, privaten Schlüsseln und Fernzugriff. Das ist meine persönliche Maschine. Ich glaube, niemand hatte einen Fernzugriff auf meine Maschine, ich glaube nicht.
IggyPass

Wenn Sie nicht möchten, dass jemand Zugriff auf das Gerät hat, entfernen Sie einfach die Datei oder lassen Sie sie leer, und schon kann es losgehen.
pLumo

2
Okay, dann haben Sie es wohl falsch verstanden. Sie benötigen die authorized_keysDatei nicht auf dem lokalen Computer, sondern auf dem Server.
pLumo

3
ssh-keygenschafft id_rsaund id_rsa.pubnicht authorized_keys. Und das auf jeden Fall.
pLumo

1
Beachten Sie, dass es durchaus üblich ist, von einem anderen Computer auf Ihren Desktop-Computer zu sshen. In diesem Fall ist die Verwendung von Schlüsseln zur Authentifizierung sicherer.
Karl Bielefeldt

3

Ja, Sie haben die gesamte Datei entfernt. Um es neu zu erstellen, müssen alle Benutzer ihre SSH-Schlüssel auf den Server kopieren. Sie können verwenden

ssh-copy-id user@hostname.example.com

Wenn Sie nicht alle Schlüssel entfernen möchten, bearbeiten Sie die Datei und entfernen Sie beim nächsten Mal nur die Zeilen.


Danke, das ist meine persönliche Maschine. Ich bin mir nicht sicher, ob es noch als Server
gedient hat

2
Auf Ihrem Client benötigen Sie die private Schlüsseldatei und known_hosts und auf dem Server authorized_keys with pubkeys
trietend
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.