Limitazione SSHd per base utente


9

Devo limitare determinati utenti in modo che possano utilizzare solo SSH nell'uso delle chiavi ssh e che altri utenti possano accedere utilizzando la chiave o la password.

un esempio:

Vorrei che l'utente root fosse in grado di accedere in remoto (tramite sshd) usando key, quindi nessuna password sarebbe accettata (anche se la password è corretta)

e per gli altri utenti (tutti sul sistema) possono accedere utilizzando la chiave e / o la password

Come potrei farlo?

Risposte:


0

Quello che vorrei fare è impostare /etc/sshd/sshd_configtale che:

PermitRootLogin without-password

solo per maggiore sicurezza ed evitare di bloccare la password di root (consentirebbe solo al root di accedere usando una chiave)

Vorrei invece utilizzare AllowGroupsinvece di AllowUser, poiché per me sarebbe più conveniente aggiungere utenti a un gruppo piuttosto che a sshd_configma ciò potrebbe dipendere dalle tue preferenze personali.


13

Penso che quello che vuoi sia "Match User". Lo usi per abbinare un nome utente, quindi indentare una serie di impostazioni di configurazione che si applicano specificamente a quell'utente.

Match User Joe
  PasswordAuthentication no

Match User Jane
  PasswordAuthentication yes

Lo uso per configurare l'accesso solo SFTP chroot a volte per i client.


Si noti che non tutte le impostazioni possono essere scritte nel Matchblocco. Vedi man 5 sshd_configper i dettagli.
ynn

2

Configurare ssh come segue:

nano /etc/ssh/sshd_config

AllowUsers username1 username2 username3

Riavvia SSH

Quindi fornire le chiavi a coloro che si desidera evitare di utilizzare le password.

ssh-keygen è usato per generare quella coppia di chiavi per te. Ecco una sessione in cui viene creata la tua coppia di chiavi privata / pubblica personale:

#ssh-keygen -t rsa

Il comando ssh-keygen -t rsa ha avviato la creazione della coppia di chiavi.

Non ho inserito una passphrase per la mia configurazione (invece è stato premuto il tasto Invio).

La chiave privata è stata salvata in .ssh / id_rsa. Questo file è di sola lettura e solo per te. Nessun altro deve vedere il contenuto di quel file, poiché viene utilizzato per decrittografare tutta la corrispondenza crittografata con la chiave pubblica.

La chiave pubblica viene salvata in .ssh / id_rsa.pub.

Il suo contenuto viene quindi copiato nel file .ssh / authorized_keys del sistema su cui si desidera SSH senza che sia richiesta una password.

#scp id_rsa.pub remote system:~/.ssh/authorized_keys

Finalmente blocca l'account (l'autenticazione con chiave sarà ancora possibile.)

# passwd -l username1

non è quello che sto cercando. diciamo che voglio che root sia loggato usando solo le chiavi e che altri utenti possano essere registrati con chiave o password
alexus

quindi non bloccare l'account con passwd -l nomeutente1
Patrick R
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.