Questo articolo descrive la procedura per configurare un'autenticazione con chiave pubblica Secure Shell (SSH).
-
Accedi al server.
-
Verifica che l'utente esista:
`getent passwd <username>` -
Cerca il valore assegnato a AuthorizedKeysFile parametro all'interno di/etc/ssh/sshd_config per determinare il file in cui è memorizzata la chiave:
`grep AuthorizedKeysFile /etc/ssh/sshd_config`Nota :La posizione predefinita è ~/.ssh/authorized_keys all'interno della directory home predefinita dell'utente.
-
Passa alla home directory dell'utente:
`cd /directory-path`Nota :Sostituisci percorso-directory con il percorso della home directory dell'utente.
-
Controlla i livelli di autorizzazione per .ssh/ directory. Dovrebbe avere
0700autorizzazioni ed essere di proprietà dell'utente.`ls .ssh`un. Se la directory non esiste, creala e imposta i permessi su
0700:`mkdir -m 700 .ssh`b. Se la directory esiste, puoi impostare la proprietà separatamente:
`chmod 700 .ssh/` `chown -R username:username /path/to/home/.ssh` -
Passa a .ssh/ directory e chiavi_autorizzate file:
```cd .ssh/ vim authorized_keys ll``` -
Aggiungi la chiave pubblica SSH alla fine delle chiavi_autorizzate file:
`vim authorized_keys` -
Modifica le autorizzazioni in
600e garantire la corretta proprietà del file:`chmod 600 authorized_keys` `chown -R username:username authorized_keys`
Disabilita l'autenticazione della password
Se desideri che tutti gli utenti accedano con chiavi pubbliche e non password, puoi disabilitare l'autenticazione tramite password.
Importante :la disabilitazione dell'autenticazione tramite password blocca gli utenti che hanno utilizzato una password per accedere al server se l'autenticazione SSH non è configurata per il proprio account.
-
Crea un backup di sshd_config file prima di apportare modifiche:
mkdir /home/username/backup cp /etc/ssh/sshd_config /home/username/backup/sshd_config.bak -
Apri sshd_config file:
`vim /etc/ssh/sshd_config` -
Trova PubkeyAuthentication parametro e impostarlo su yes. Se la riga è commentata, rimuovi qualsiasi indicatore di commento (
#). -
Trova l'Autenticazione password parametro all'interno dello stesso file e impostarlo su
no. -
Salva le modifiche al file ed esci dal file.
-
Controlla la sintassi usando
sshd -t. Se non ci sono errori, ricaricasshd:`service sshd reload`
Note aggiuntive:
- Il file della chiave privata sulla workstation locale (lato client) dovrebbe avere i permessi impostati su
600e il .ssh directory dovrebbe avere i permessi impostati su700. I fileauthorized_keys funzionano anche con644autorizzazioni, ma600è più sicuro.