ssh na konto, które nie ma katalogu domowego

10

W odpowiedzi na moje poprzednie pytanie postanowiłem utworzyć lokalne konta użytkowników, jak poniżej.

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

Teraz chciałbym, aby lokalni użytkownicy mogli uzyskać dostęp do komputerów za pomocą ssh. Według mojego zrozumienia, sshdziała jak poniżej.

Zakładając, że mam 2 maszyny (powiedzmy alfa i beta ).

  • Z maszyny alfa :ssh user@beta
  • klucz publiczny alfa będzie obecny na komputerze ~/.ssh/authorized_keysw wersji beta .
  • Klucz prywatny alpha będzie obecny /~/.sshw maszynie alfa .

Teraz planuję wprowadzić dom dla użytkowników. Więc zakładając, że jestem adduserw wersji beta bez domu dla żadnego użytkownika, czy nadal będę mógł ssh do wersji beta z wersji alfa ?

Ramesh
źródło

Odpowiedzi:

10

~/.ssh/jest tylko domyślną lokalizacją sshdużywaną do wyszukiwania kluczy publicznych przychodzącego użytkownika. Możesz skonfigurować lokalizację i szukany plik, sshdmodyfikując AuthorizedKeysFiledyrektywę w /etc/ssh/sshd_config. Mój obecnie wygląda następująco:

AuthorizedKeysFile     %h/.ssh/authorized_keys

Strona sshd_configpodręcznika zawiera nieco więcej szczegółów:

 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”.

Pamiętaj tylko, że dotyczy sshdto w szczególności uprawnień authorized_keypliku użytkownika . Będziesz chciał uważnie śledzić swoje dzienniki, jeśli skonfigurujesz to i napotkasz problemy z logowaniem.

zatoczka
źródło
3
Uwaga, zmiana AuthorizedKeysFilemoże prawdopodobnie przerwać logowanie dla każdego innego użytkownika (chyba że zrobisz coś innego). Dodanie minimalnego katalogu domowego może być łatwiejsze tylko za pomocą ~/.ssh/authorized_keys.
ctrl-alt-delor
Skąd wie, jaki jest katalog domowy użytkownika? Kiedy zmieniam $ HOME, wydaje się, że nie zwraca na to uwagi.
Michael