ssh in un account che non ha home directory


10

Come seguito alla mia domanda precedente , ho deciso di creare gli account utente locali come di seguito.

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

Ora vorrei che gli utenti locali potessero accedere alle macchine usando ssh. Secondo la mia comprensione, sshfunziona come di seguito.

Supponendo che io abbia 2 macchine (diciamo alfa e beta ).

  • Dalla macchina alfa :ssh user@beta
  • la chiave pubblica di alpha sarà presente ~/.ssh/authorized_keysin beta machine.
  • La chiave privata di alpha sarà presente /~/.sshnella macchina alpha .

Ora ho pianificato di implementare nessuna casa per gli utenti. Quindi supponendo di adduserentrare in beta machine senza casa per nessun utente, sarò ancora in grado di ssh in beta da alpha ?

Risposte:


10

~/.ssh/è solo la posizione predefinita che sshdutilizza per cercare le chiavi pubbliche dell'utente in arrivo. Puoi configurare la posizione e il file che sshdcerchi modificando la AuthorizedKeysFiledirettiva in /etc/ssh/sshd_config. Il mio attualmente assomiglia a:

AuthorizedKeysFile     %h/.ssh/authorized_keys

La sshd_configpagina man fornisce un po 'più di dettaglio:

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

Basta essere consapevoli del fatto che sshdè molto particolare riguardo alle autorizzazioni del authorized_keyfile di un utente . Ti consigliamo di tenere d'occhio i tuoi registri se lo configuri e incontri problemi di accesso.


3
AuthorizedKeysFileFare attenzione a cambiare probabilmente interromperà l'accesso per tutti gli altri utenti (a meno che non si faccia qualche altra intelligenza). Potrebbe essere più semplice aggiungere una home directory minima, con solo il ~/.ssh/authorized_keys.
ctrl-alt-delor,

Come fa a sapere qual è la home directory dell'utente? Quando cambio $ HOME non sembra prestare attenzione a questo.
Michael,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.