Questa breve guida ti guiderà attraverso i passaggi per consentire o negare l'accesso SSH a un particolare utente o gruppo nei sistemi operativi Linux e Unix.
Introduzione
Qualche tempo fa abbiamo discusso di come limitare l'accesso di un utente al sistema Linux utilizzando una shell con restrizioni . Una volta che abbiamo messo gli utenti in modalità con restrizioni, non possono fare nient'altro che ciò che sono autorizzati a fare.
Sarà utile quando vuoi consentire a un particolare utente di eseguire solo un insieme specifico di comandi.
In questo articolo, abiliteremo o disabiliteremo l'accesso SSH per un utente o un gruppo apportando alcune modifiche al file di configurazione SSH predefinito.
Consenti o nega l'accesso SSH a un particolare utente o gruppo in Linux
Il file di configurazione predefinito di openSSH ha due direttive per consentire e negare l'accesso SSH a uno o più utenti o a un gruppo particolari.
Per prima cosa, vediamo come consentire o abilitare l'accesso SSH a un utente e un gruppo. Tieni presente che tutti i comandi forniti di seguito devono essere eseguiti come root
o sudo
utente.
1. Consenti l'accesso SSH a un utente o un gruppo
Per consentire l'accesso SSH a un determinato utente, ad esempio sk , modifica sshd_config
file:
$ sudo vi /etc/ssh/sshd_config
Premi "i" per entrare in modalità di inserimento e aggiungere o modificare la seguente riga:
AllowUsers sk
Modifica il file di configurazione ssh per consentire l'accesso ssh a un particolare utente
Sostituisci "sk" con il tuo nome utente. Tieni presente il rientro dello spazio tra "AllowUsers" e "sk". Dovresti usare Tab invece di Barra spaziatrice . Significato:aggiungi la parola "AllowUsers" e premi il tasto Tab e quindi specifica il nome utente.
Puoi anche specificare più di un utente come mostrato di seguito.
AllowUsers user1 user2
Per consentire a un intero gruppo, di' ad esempio root
, aggiungi/modifica la seguente riga:
AllowGroups root
Questa impostazione consentirà a tutti i membri del "root"
group in ssh al server Linux.
Premi ESC
per uscire dalla modalità di inserimento e digitare :wq
per salvare e uscire dal file di configurazione SSH. Riavvia il servizio SSH per rendere effettive le modifiche.
$ sudo systemctl restart sshd
Ora, l'utente sk e tutti i membri del "root"
gruppo possono accedere a ssh nel tuo server Linux. Gli altri utenti (tranne sk e membri di "root"
gruppo) non possono accedere al sistema tramite ssh.
Per verificarlo, prova a ssh nel server Linux come uno qualsiasi degli utenti non autorizzati:
$ ssh [email protected]
Verrà visualizzato il seguente messaggio di errore:
[email protected]'s password: Permission denied, please try again.
Autorizzazione di accesso SSH negata
2. Nega l'accesso SSH a un utente o un gruppo
Per disabilitare o negare l'accesso SSH a un utente o gruppo, devi aggiungere/modificare le seguenti direttive nel sshd_config
del tuo server remoto file.
- Nega utenti
- NegaGruppi
Per negare l'accesso SSH a un utente specifico chiamato "sk", modifica sshd_config
file:
$ sudo vi /etc/ssh/sshd_config
Aggiungi/modifica la seguente riga nel file sshd_config.
DenyUsers sk
Assicurati che il rientro dello spazio sia corretto. Non utilizzare la barra spaziatrice. Premi il tasto Tab e aggiungi il nome utente.
Allo stesso modo, per negare l'accesso SSH a più utenti, specifica i nomi utente con spazi separati come mostrato di seguito.
DenyUsers user1 user2
Allo stesso modo, per negare l'accesso SSH a un intero gruppo, ad esempio root
, aggiungi:
DenyGroups root
Salva ed esci dal file di configurazione ssh. Riavvia il servizio ssh per rendere effettive le modifiche.
$ sudo systemctl restart sshd
Ora prova a ssh sulla tua macchina Linux dall'account utente bloccato, ad esempio sk:
$ ssh [email protected]
Riceverai il seguente messaggio:
[email protected]'s password: Permission denied, please try again. [email protected]'s password:
3. Disabilita l'accesso root SSH
L'accesso root ssh è considerato una cattiva pratica in termini di sicurezza . Pertanto si consiglia vivamente di disabilitare l'accesso utente SSH Root per proteggere il sistema.
Per disabilitare l'accesso ssh root, modifica sshd_config
file:
$ sudo vi /etc/ssh/sshd_config
Trova la riga seguente, Rimuovi il commento e imposta il valore su no
.
PermitRootLogin no
Riavvia il servizio SSH per rendere effettive le modifiche immediatamente:
$ sudo systemctl restart sshd
Conclusione
Ora sai come concedere e limitare l'accesso SSH a determinati utenti o gruppi in Linux. Hai anche imparato come negare o disabilitare l'accesso root SSH in Linux. È una delle pratiche di sicurezza consigliate che ogni amministratore Linux dovrebbe implementare durante la configurazione di un server Linux.
Lettura correlata:
- Disabilita l'autenticazione tramite password SSH per utenti o gruppi specifici
- Limita il numero di accessi SSH per utente/gruppo/sistema
- Come inserire SSH in una directory particolare su Linux