GNU/Linux >> Linux Esercitazione >  >> Panels >> Panels

Come configurare le chiavi SSH su Ubuntu 16.04

Ti mostreremo come configurare le chiavi SSH su Ubuntu 16.04. SSH o Secure SHELL è il protocollo di rete crittografico basato su UNIX più popolare e affidabile. Può essere utilizzato per una comunicazione dati sicura, accessi remoti al server, esecuzione di comandi remoti e molti altri servizi di rete sicura tra due server in rete. Normalmente, l'autenticazione della password viene utilizzata per connettersi a un server remoto tramite SSH, ma in questo tutorial ti mostreremo come accedere al tuo VPS Ubuntu 16.04 utilizzando le chiavi SSH. Genereremo una coppia di chiavi (chiave privata e pubblica), collocheremo la chiave privata sul tuo server e quindi utilizzeremo la tua chiave privata memorizzata localmente per accedere al tuo server. Questo metodo fornisce un modo più sicuro per connettersi al tuo server, invece di usare solo una password.

Nel corso di questo tutorial, spiegheremo anche come generare una coppia di chiavi SSH sia su Linux che su un sistema operativo Windows.

1. Generazione di chiavi SSH su Ubuntu 16.04

Per generare la coppia di chiavi SSH, esegui semplicemente il seguente comando dal terminale sul tuo computer locale basato su Ubuntu 16.04:

ssh-keygen

Puoi semplicemente premere Invio per lasciare i valori predefiniti a tutte le domande. Facoltativamente, puoi anche impostare una passphrase per aggiungere un ulteriore livello di sicurezza o semplicemente premere nuovamente Invio se non lo desideri.

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:2QB/eJ39/4N7Q3PRSghNJmglX6hh2pSqQ3uGHhfd7Og root@rosehosting
The key's randomart image is:
+---[RSA 2048]----+
|       . .+o++   |
|       oB+o=.o   |
|       O+=+.o.. .|
|    . + +*o . .o.|
|   . + .So.  . .o|
|    * + . .   .oo|
|   . * .      o +|
|     .   E   . +.|
|             .o +|
+----[SHA256]-----+

Questo creerà una chiave privata e pubblica a 2048 bit (id_rsa e id_rsa.pub) nella directory /root/.ssh/ sul tuo sistema locale.

Carica la chiave pubblica sul server Ubuntu 16.04 con ssh-copy-id

Il passaggio successivo richiede di caricare la chiave pubblica generata sul server Ubuntu remoto. C'è più di un metodo per farlo.

Il modo più semplice è utilizzare ssh-copy-id utilità. Affinché funzioni, dovresti essere in grado di connetterti al tuo server tramite SSH utilizzando l'autenticazione della password.

È quindi possibile utilizzare il seguente comando per caricare la chiave pubblica sul server remoto:

ssh-copy-id root@remote_server

Ti verrà chiesto di inserire la tua password utente (nel nostro esempio sarebbe la password di root) e premere Invio. Dopo che la connessione è stata stabilita, il contenuto di id_rsa.pub (la chiave pubblica) verrà copiato nel file /root/ssh/authorized_keys sul server remoto.

Dovrebbe essere visualizzato il seguente output:

Number of key(s) added: 1

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

D'ora in poi, dovresti essere in grado di autenticarti sul tuo server Ubuntu usando le tue chiavi SSH.

Carica manualmente la chiave pubblica sul server Ubuntu

Se il ssh-copy-id strumento non è disponibile sul tuo sistema, puoi accedere al tuo server e farlo manualmente.

Innanzitutto, connetti il ​​tuo server tramite SSH con:

ssh root@remote_server

Una volta connesso, dovrai creare una nuova directory .ssh sul server remoto con il seguente comando:

mkdir /root/.ssh

Successivamente, è necessario copiare la chiave pubblica nel file authorized_keys sul server remoto. Puoi creare e quindi aggiungere il contenuto della chiave pubblica utilizzando l'editor di testo nano:

nano /root/.ssh/authorized_keys

Dovrai anche aprire il file di configurazione SSH:

nano /etc/ssh/sshd_config

e assicurati che le seguenti righe esistano e non siano commentate:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys

Salva le modifiche e riavvia il servizio SSH:

systemctl restart ssh

Questo è tutto. D'ora in poi, utilizzerai le chiavi SSH ogni volta che proverai a connetterti al tuo server remoto.

2. Generazione di chiavi SSH su un sistema basato su Windows con PuTTY e PuTTYGen

Se stai utilizzando il sistema operativo Windows sul tuo computer locale, avrai bisogno di PuTTY per la connessione al tuo server tramite SSH e PuTTYgen per generare le tue chiavi SSH. Puoi scaricarli qui (https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html).

Per generare le chiavi SSH, vai avanti e avvia PuTTYGen sul tuo computer.

In fondo, puoi scegliere il numero di bit per la tua chiave generata. Digita 4096 e poi clicca su Genera. Inizia a muovere il mouse sull'area vuota dello schermo di PuTTYgen per generare una chiave univoca basata sull'input del movimento del mouse.

Quando la barra di avanzamento verde si riempie, verrà generata la chiave pubblica. Puoi copiare la loro chiave e salvarla in un file .txt sul tuo computer.

Per salvare la chiave privata, dovrai fare clic sul pulsante Salva chiave privata. Inoltre, puoi anche impostare una chiave passphrase per la tua chiave privata.

Ora puoi aprire PuTTY e per assegnare la posizione della tua chiave privata, fai clic su SSH nel menu Connessione e quindi su Auth. Fare clic sul pulsante Sfoglia e inserire la posizione del file della chiave privata salvato.

Successivamente, dobbiamo caricare la chiave pubblica sul tuo server. Per fare ciò, fai clic su Session, inserisci il tuo indirizzo IP e il numero di porta SSH del tuo server, seleziona SSH per Tipo di connessione e fai clic su Apri.

Ti verrà chiesto il nome utente e la password. Puoi accedere come utente root, utilizzando la tua password di root.

Una volta effettuato l'accesso al tuo server, crea prima la directory .ssh:

mkdir /root/.ssh

Quindi crea il file authorized_keys all'interno della directory .ssh e aggiungi il contenuto della tua chiave pubblica all'interno di questo file:

nano /root/.ssh/authorized_keys

Puoi anche aprire il file di configurazione SSH sul tuo server con:

nano /etc/ssh/sshd_config

e assicurati che le seguenti righe esistano e non siano commentate:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys

Se sono state apportate modifiche, non dimenticare di riavviare il servizio sshd con:

systemctl restart ssh

Con questo, le chiavi SSH sono state configurate con successo. Ora puoi disconnetterti dal tuo server ed uscire da PuTTY. La prossima volta che proverai a connetterti al tuo server, PuTTY utilizzerà la chiave pubblica che hai impostato per stabilire la connessione.

3. Disattiva l'autenticazione con password

Dopo aver configurato correttamente le chiavi SSH utilizzando uno dei metodi precedenti e esserti assicurato di poter accedere al tuo server utilizzando l'autenticazione basata su chiave SSH, puoi disabilitare l'autenticazione basata su password sul tuo server. Ciò aggiungerà un ulteriore livello di sicurezza e impedirà tutti gli attacchi di forza bruta al tuo server.

Per disabilitare l'autenticazione basata su password, apri il file di configurazione SSH con:

nano /etc/ssh/sshd_config

E decommenta la seguente riga e imposta il suo valore su "no":

PasswordAuthentication no

Riavvia il servizio sshd con:

systemctl restart ssh

That’s it. You have successfully set up SSH keys on your Ubuntu 16.04 VPS.

Ovviamente, non devi impostare la chiave SSH sul tuo VPS Ubuntu 16.04, se utilizzi uno dei nostri servizi di hosting Ubuntu, nel qual caso puoi semplicemente chiedere ai nostri esperti amministratori Linux di configurare le chiavi SSH per te. Sono disponibili 24 ore su 24, 7 giorni su 7 e si prenderanno immediatamente cura della tua richiesta.

PS . Se questo post ti è piaciuto condividilo con i tuoi amici sui social network utilizzando i pulsanti qui sotto o lascia semplicemente un commento nella sezione commenti. Grazie.


Panels
  1. Come configurare le chiavi SSH usando cPanel

  2. Come utilizzare le chiavi SSH con Plesk

  3. Come impostare le chiavi SSH

  4. Come configurare le chiavi SSH su Ubuntu 18.04

  5. Come configurare le chiavi SSH su Debian

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 la chiave SSH su un server Plesk

Come configurare le chiavi SSH su Debian 11 Linux

Come migliorare la sicurezza SSH su Ubuntu 18.04