GNU/Linux >> Linux Esercitazione >  >> Debian

Come configurare le chiavi SSH su Debian 10

Secure Shell (SSH) è un protocollo di rete crittografico utilizzato per una connessione sicura tra un client e un server e supporta vari meccanismi di autenticazione. La connessione crittografata può essere utilizzata per eseguire comandi sul server, tunneling X11, port forwarding e altro.

La password e la chiave pubblica sono i due meccanismi più comuni per l'autenticazione.

L'autenticazione tramite chiave pubblica si basa sull'uso di firme digitali ed è più sicura e conveniente rispetto all'autenticazione tramite password tradizionale.

Questo articolo descrive come generare chiavi SSH su sistemi Debian 10. Ti mostreremo anche come configurare un'autenticazione basata su chiave SSH e connetterti a server Linux remoti senza inserire una password.

Creazione di chiavi SSH su Debian #

È probabile che tu abbia già una coppia di chiavi SSH sulla tua macchina client Debian. Se stai generando una nuova coppia di chiavi, quella vecchia verrà sovrascritta.

Esegui i seguenti ls comando per verificare se i file chiave esistono:

ls -l ~/.ssh/id_*.pub

Se l'output del comando sopra contiene qualcosa come No such file or directory o no matches found , significa che non disponi di chiavi SSH e puoi continuare con il passaggio successivo e generare una nuova coppia di chiavi SSH.

Altrimenti, se disponi di una coppia di chiavi SSH, puoi usarle o eseguire il backup delle vecchie chiavi e generarne di nuove.

Genera una nuova coppia di chiavi SSH a 4096 bit con il tuo indirizzo email come commento inserendo il seguente comando:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

L'output sarà simile a questo:

Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

Premi Enter per accettare il percorso e il nome del file predefiniti.

Successivamente, ti verrà richiesto di digitare una passphrase sicura. Se vuoi usare una passphrase, dipende da te. La passphrase aggiunge un ulteriore livello di sicurezza.

Enter passphrase (empty for no passphrase):

Se non vuoi usare una passphrase, premi semplicemente Enter .

L'intera interazione è simile a questa:

Per confermare che la coppia di chiavi SSH è stata generata, eseguire il comando seguente:

ls ~/.ssh/id_*

Il comando elencherà i file chiave:

/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub

Copia la chiave pubblica sul server #

Ora che hai la tua coppia di chiavi SSH, il passaggio successivo consiste nel copiare la chiave pubblica sul server che desideri gestire.

Il modo più semplice e consigliato per copiare la chiave pubblica sul server remoto è utilizzare ssh-copy-id strumento.

Esegui il seguente comando sul tuo computer locale:

ssh-copy-id remote_username@server_ip_address

Ti verrà chiesto di inserire il remote_username password:

remote_username@server_ip_address's password:

Una volta autenticato l'utente, il contenuto del file della chiave pubblica (~/.ssh/id_rsa.pub ) verrà aggiunto all'utente remoto ~/.ssh/authorized_keys file e la connessione verrà chiusa.

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'username@server_ip_address'"
and check to make sure that only the key(s) you wanted were added.

Se il ssh-copy-id l'utilità non è disponibile sul tuo computer locale, usa il seguente comando per copiare la chiave pubblica:

cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

Accedi al server utilizzando le chiavi SSH #

A questo punto, dovresti essere in grado di accedere al server remoto senza che ti venga richiesta una password.

Per testarlo, prova a connetterti al server tramite SSH:

ssh remote_username@server_ip_address

Se non hai impostato una passphrase, verrai registrato immediatamente. In caso contrario, ti verrà chiesto di inserire la passphrase.

Disabilitazione dell'autenticazione con password SSH #

Per aggiungere un ulteriore livello di sicurezza al tuo server, puoi disabilitare l'autenticazione della password SSH.

Prima di disabilitare l'autenticazione della password, assicurati di poter accedere al tuo server senza una password e che l'utente con cui stai effettuando l'accesso disponga dei privilegi sudo.

Accedi al tuo server remoto:

ssh sudo_user@server_ip_address

Apri il file di configurazione del server SSH /etc/ssh/sshd_config :

sudo nano /etc/ssh/sshd_config

Cerca le seguenti direttive e modifica come segue:

/etc/ssh/sshd_config
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no

Al termine, salva il file e riavvia il servizio SSH:

sudo systemctl restart ssh

A questo punto l'autenticazione basata su password è disabilitata.


Debian
  1. Come impostare le chiavi SSH

  2. Impostare un IP statico su Debian 11 - Come farlo?

  3. Configura le chiavi SSH sul sistema Debian 9 - Come farlo?

  4. Come configurare le chiavi SSH su Ubuntu 16.04

  5. Come configurare le chiavi SSH su Debian

Come configurare le chiavi SSH su Debian 9

Come configurare le chiavi SSH – Sistema operativo Windows?

Come impostare un IP statico su Debian 11

Come configurare la chiave SSH su un server Plesk

Come configurare le chiavi SSH su Debian 11 Linux

Come configurare WireGuard VPN su Debian 11