GNU/Linux >> Linux Esercitazione >  >> Debian

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

SSH (Secure Shell) è un protocollo crittografato che consente al sistema client di comunicare in modo sicuro con un server. Puoi connetterti al tuo sistema in remoto, eseguire attività amministrative e accedere ai file. Comunicare con il server utilizzando le chiavi SSH è un modo più sicuro e conveniente dell'autenticazione tramite password.

Qui a LinuxAPT, come parte dei nostri servizi di gestione del server, aiutiamo regolarmente i nostri clienti a eseguire query SSH correlate.

In questo contesto, esamineremo come creare chiavi SSH sul sistema Debian 9 e come copiarle sul server in diversi modi.


Come si usano le chiavi SSH su Debian?

Prima di eseguire questa procedura, assicurati di utilizzare un utente con privilegi sudo.

io. Per iniziare, creeremo una coppia di chiavi sul sistema client usando il comando seguente:

$ ssh-keygen

ii. Per impostazione predefinita, ssh-keygen genererà una coppia di chiavi RSA a 2048 bit. Se desideri creare una chiave a 4096 bit più grande, puoi passare -b 4096 in flag come di seguito:

$ ssh-keygen -t rsa -b 4096

Dovrebbe mostrare un output come di seguito:

Output
Generating public/private rsa key pair.
Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

iii. Premi il tasto Invio per salvare le coppie di chiavi nella directory ./ssh oppure puoi specificare la posizione secondo la tua scelta.

Successivamente, verrà richiesto di inserire una passphrase sicura come di seguito. Passphrase aggiungerà un ulteriore livello di sicurezza alle tue chiavi. È facoltativo, se non vuoi impostare puoi saltarlo semplicemente premendo il tasto Invio.

Output
Enter passphrase (empty for no passphrase):

Successivamente, vedrai l'output come segue:

Your identification has been saved in /home/yourusername/.ssh/id_rsa.
Your public key has been saved in /home/yourusername/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:+cxkUbcUyFc7jXMHnQNlm/2O8rj+yDyP5Rnt29ov8Bc [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|           ..oB*o|
|           .ooo*B|
|          .  .+=*|
|         . .   o+|
|        S o     .|
|         *  .  E |
|          + .o+ +|
|           o.Oo=o|
|           .O=B=B|
+----[SHA256]-----+

Ora hai le chiavi pubbliche e private che puoi usare per autenticarti con il tuo server Debian.

iv. Puoi anche verificare che i tuoi file siano generati o meno digitando:

ls ~/.ssh/id_*

Mostrerà l'output in questo modo:

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


Come copiare la chiave pubblica su un server Debian?

Ora, il prossimo passo è posizionare la chiave pubblica sul tuo server Debian. Il modo semplice e veloce per copiare public è usare l'utilità ssh-copy-id.

Esegui il comando seguente:

$ ssh-copy-id username@server_ip_address

Verrà richiesto di inserire la password per il tuo nome utente:

Output
username@server_ip_address's password:

Una volta che l'utente si è autenticato correttamente, la chiave pubblica verrà aggiunta al file ~/.ssh/authorized_keys sull'utente remoto e la connessione verrà disconnessa.

Output
Number of key(s) added: 1

Ora puoi provare ad accedere alla tua macchina con il comando ssh nomeutente@indirizzo_ip_server e verificare che solo la chiave(e) aggiunta(e) che vuoi aggiungere.

Se sul tuo sistema locale non è installata l'utilità ssh-copy-id, puoi utilizzare il seguente comando per copiare la chiave pubblica:

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

Assicurati di avere l'accesso SSH basato su password al tuo server, quindi solo tu puoi utilizzare il metodo sopra.


Come accedere al server utilizzando le chiavi SSH?

Ora dovresti essere in grado di accedere alla macchina remota senza la password dell'utente remoto.

Puoi provare a connetterti usando il comando SSH:

$ ssh username@server_ip_address

Se sei la prima volta che accedi, potrebbe chiederti quanto segue.

Digita sì e premi il tasto Invio per continuare:

Output
The authenticity of host '192.168.27.18 (192.168.27.18)' can't be established.
ECDSA key fingerprint is ed:ed:f4:g9:66:ge:53:48:e1:55:00:fd:6d:d7:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

Ora, se non hai impostato la passphrase per le tue chiavi, accederai immediatamente senza chiedere la passphrase. In caso contrario, verrà richiesto di inserire la passphrase. Dopo l'autenticazione riuscita, una nuova sessione di shell aprirà il tuo account utente sul server Debian.


Come disabilitare l'autenticazione della password SSH?

Puoi aggiungere un ulteriore livello di sicurezza disabilitando l'autenticazione della password per SSH. Prima di iniziare il processo, assicurati di essere in grado di autenticarti sul tuo server senza inserire la password e di avere un account utente abilitato sudo.

io. Accediamo al tuo server usando ssh:

$ ssh username@server_ip_address

ii. Ora modifica il file di configurazione SSH che si trova in /etc/ssh/sshd_config:

$ sudo nano /etc/ssh/sshd_config

iii. Trova la direttiva PasswordAuthentication e se la riga è stata commentata, decommenta la riga e imposta il valore su "no" come indicato di seguito:

PasswordAuthentication no

iv. Salva e chiudi il file. È necessario riavviare il servizio SSH utilizzando il comando seguente:

$ sudo systemctl restart ssh

Ora, l'autenticazione basata su password è disabilitata sul tuo server Debian.



Debian
  1. Come configurare le chiavi SSH usando cPanel

  2. Come utilizzare le chiavi SSH con Plesk

  3. Come configurare l'autenticazione basata su chiave SSH in Linux

  4. Come configurare le chiavi SSH su Ubuntu 16.04

  5. Come configurare le chiavi SSH su Debian

Come configurare le chiavi SSH su CentOS 8

Come configurare le chiavi SSH su CentOS 7

Come configurare le chiavi SSH su Debian 9

Come configurare le chiavi SSH su Debian 10

Come configurare le chiavi SSH – Sistema operativo Windows?

Come configurare le chiavi SSH su Debian 11 Linux