Wie können Sie den Standardspeicherort des .ssh-Ordners ändern?

10

Alle SSH-Schlüssel meiner Uni wurden gestohlen. Die Sys-Administratoren haben beschlossen, alle .ssh-Ordner zu entfernen und die Dateien in einen Ordner zu verschieben, dessen Namen ich nicht sagen kann.

Ich bin interessiert, wie die Systemadministratoren den Standard-SSH-Schlüsselordner geändert haben.

Wie können Sie den Standardordner ~ / .ssh in den Ordner ~ / TopSecret / ändern, sodass mein Computer erkennt, dass sich die Schlüssel in einem neuen Ordner befinden?

anon
quelle

Antworten:

12

Schauen Sie sich sshd_config (5) an und bearbeiten Sie es /etc/ssh/sshd_config. Beachten Sie, dass der Pfad der relevanten Konfigurationsdateien für jede Datei einzeln festgelegt wird (das heißt, es geht nicht nur darum, die Zeichenfolge .sshan einer anderen Stelle in der Konfigurationsdatei in etwas anderes zu ändern ).

Wie auch immer, die Einstellung, die Sie suchen, ist AuthorizedKeysFile.

Stephan202
quelle
1
Auf den Manpages von openssh sshd_config: AuthorizedKeysFile. Gibt die Datei an, die die öffentlichen Schlüssel enthält, die für die Benutzerauthentifizierung verwendet werden können. AuthorizedKeysFile kann Token der Form% T enthalten, die beim Verbindungsaufbau ersetzt werden. Die folgenden Token sind definiert: %% wird durch ein Literal '%' ersetzt,% h wird durch das Ausgangsverzeichnis des zu authentifizierenden Benutzers ersetzt und% u wird durch den Benutzernamen dieses Benutzers ersetzt. Nach der Erweiterung wird AuthorizedKeysFile als absoluter Pfad oder relativ zum Basisverzeichnis des Benutzers angesehen. Der Standardwert ist ".ssh / autorisierte_Tasten".
Samt
4

Um die Auswirkungen der Offenlegung privater Schlüssel zu verringern, ist es ratsam, den Schlüssel selbst mit einem Kennwort zu verschlüsseln. Offline-Brute-Force-Angriffe auf bestimmte Schlüssel sind weiterhin möglich, werfen jedoch einen Schraubenschlüssel in jemanden, der mit einer Wagenladung Benutzerschlüssel davonkommt.

Eine andere Option - falls keine Verschlüsselung möglich ist - besteht darin, die Verwendung des sshkey auf bestimmte IP-Adressen zu beschränken. Verwenden dieser Syntax im öffentlichen Schlüssel, der dem Remote-Server hinzugefügt wurde. from="ipaddress1,ipaddress2" ssh-rsa ... Das heißt, wenn jemand diese Schlüssel stiehlt, sind sie nutzlos, wenn sie von einem anderen Server (mit einer anderen IP) verwendet werden.

Genauer gesagt, Sie sollten keine privaten Wertschlüssel für etwas speichern, das Sie nicht kontrollieren. Um eine Verbindung zu einem Server herzustellen, reicht es aus, den öffentlichen Schlüssel auf dem Server zu speichern.

Javi
quelle
2

Sie können Ordner mit dem Befehl "mv" umbenennen. Sie können TopSecret also mit "mv TopSecret .ssh" wieder in .ssh umbenennen.

Die Administratoren können steuern, wo der sshd nach Ihren Schlüsseln sucht, indem sie den AuthorizedKeysFile-Parameter der Datei / etc / ssh / sshd_config ändern. Das kannst du nicht ändern.

Macker
quelle