ssh in ein Konto, das kein Home-Verzeichnis hat

10

Als Antwort auf meine vorherige Frage habe ich beschlossen, die lokalen Benutzerkonten wie folgt zu erstellen.

adduser --system --no-create-home USERNAME

Jetzt möchte ich, dass die lokalen Benutzer mit auf die Computer zugreifen können ssh. Funktioniert nach meinem Verständnis sshwie folgt.

Angenommen, ich habe 2 Maschinen (z. B. Alpha und Beta ).

  • Von der Alpha- Maschine:ssh user@beta
  • Der öffentliche Schlüssel von alpha wird ~/.ssh/authorized_keysin der Beta- Maschine vorhanden sein.
  • Der private Schlüssel von Alpha wird unter /~/.sshin der Alpha- Maschine vorhanden sein.

Jetzt habe ich geplant, kein Zuhause für die Benutzer zu implementieren . Wenn ich also adduserin die Beta- Maschine gehe , ohne dass ein Benutzer zu Hause ist, kann ich dann trotzdem von Alpha in die Beta- Version wechseln ?

Ramesh
quelle

Antworten:

10

~/.ssh/ist nur der Standardspeicherort, sshdan dem nach öffentlichen Schlüsseln des eingehenden Benutzers gesucht wird. Sie können den Speicherort und die gesuchte Datei konfigurieren, sshdindem Sie die AuthorizedKeysFileDirektive in ändern /etc/ssh/sshd_config. Meins sieht derzeit so aus:

AuthorizedKeysFile     %h/.ssh/authorized_keys

Die sshd_configManpage bietet etwas mehr Details:

 AuthorizedKeysFile
     Specifies the file that contains the public keys that can be used for user authentication.  The format is
     described in the AUTHORIZED_KEYS FILE FORMAT section of sshd(8).  AuthorizedKeysFile may contain tokens of
     the form %T which are substituted during connection setup.  The following tokens are defined: %% is
     replaced by a literal '%', %h is replaced by the home directory of the user being authenticated, and %u is
     replaced by the username of that user.  After expansion, AuthorizedKeysFile is taken to be an absolute
     path or one relative to the user's home directory.  Multiple files may be listed, separated by whitespace.
     The default is “.ssh/authorized_keys .ssh/authorized_keys2”.

Beachten Sie jedoch, dass sshddie Berechtigungen für die authorized_keyDatei eines Benutzers sehr wichtig sind. Sie sollten Ihre Protokolle im Auge behalten, wenn Sie dies einrichten und Probleme beim Anmelden haben.

Bach
quelle
3
Beachten Sie, dass Änderungen AuthorizedKeysFilewahrscheinlich die Anmeldung für jeden anderen Benutzer unterbrechen (es sei denn, Sie machen eine andere Klugheit). Es kann einfacher sein, ein minimales Home-Verzeichnis mit nur dem hinzuzufügen ~/.ssh/authorized_keys.
Strg-Alt-Delor
Woher weiß es, was das Home-Verzeichnis des Benutzers ist? Wenn ich $ HOME ändere, scheint das nicht zu beachten.
Michael