GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come configurare le chiavi SSH su CentOS 7

Secure Shell (SSH) è un protocollo di rete crittografico progettato per una connessione sicura tra un client e un server.

I due meccanismi di autenticazione SSH più diffusi sono l'autenticazione basata su password e l'autenticazione basata su chiave pubblica. L'utilizzo delle chiavi SSH è generalmente più sicuro e conveniente rispetto all'autenticazione tramite password tradizionale.

Questo tutorial spiega come generare chiavi SSH sui sistemi CentOS 7. Ti mostreremo anche come configurare un'autenticazione basata su chiave SSH e connetterti ai tuoi server Linux remoti senza inserire una password.

Creazione di chiavi SSH su CentOS #

Prima di generare una nuova coppia di chiavi SSH, è una buona idea verificare la presenza di chiavi SSH esistenti sul computer client CentOS.

Per farlo, esegui il seguente comando ls che elenca tutte le chiavi pubbliche se ce ne sono:

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

Se l'output del comando restituisce qualcosa come No such file or directory o no matches found significa che non hai chiavi SSH sul tuo computer client e puoi procedere con il passaggio successivo e generare una coppia di chiavi SSH.

Se sono presenti chiavi esistenti, puoi utilizzarle e saltare il passaggio successivo oppure eseguire il backup delle vecchie chiavi e generarne di nuove.

Inizia generando una nuova coppia di chiavi SSH a 4096 bit con il tuo indirizzo email come commento:

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

Ti verrà chiesto di specificare il nome del file:

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à chiesto di digitare una passphrase sicura. Se vuoi usare una passphrase, dipende da te. Se scegli di utilizzare una passphrase, otterrai 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 verificare che la tua nuova coppia di chiavi SSH sia stata generata, digita:

ls ~/.ssh/id_*
/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub

Copia la chiave pubblica sul server CentOS #

Ora che la coppia di chiavi SSH è stata generata, 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 un'utilità chiamata ssh-copy-id . Sul terminale della tua macchina locale digita:

ssh-copy-id remote_username@server_ip_address

Ti verrà chiesto di inserire il remote_username password:

remote_username@server_ip_address's password:

Digita la password e, una volta autenticato l'utente, la chiave pubblica ~/.ssh/id_rsa.pub verrà aggiunto all'utente remoto ~/.ssh/authorized_keys file. 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 comando seguente 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 tuo server usando le chiavi SSH #

Dopo aver completato i passaggi precedenti, dovresti essere in grado di accedere al server remoto senza che ti venga richiesta una password.

Per verificarlo, prova ad accedere al tuo server tramite SSH:

ssh remote_username@server_ip_address

Se non hai impostato una passphrase per la chiave privata, accederai 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 remoto, puoi disabilitare l'autenticazione della password SSH.

Prima di continuare, assicurati di poter accedere al tuo server senza password come utente con privilegi sudo.

Segui i passaggi seguenti per disabilitare l'autenticazione della password SSH:

  1. Accedi al tuo server remoto:

    ssh sudo_user@server_ip_address
  2. Apri il file di configurazione SSH /etc/ssh/sshd_config con il tuo editor di testo:

    sudo nano /etc/ssh/sshd_config
  3. Cerca le seguenti direttive e modifica come segue:

    /etc/ssh/sshd_config
    PasswordAuthentication no
    ChallengeResponseAuthentication no
    UsePAM no
  4. Al termine salva il file e riavvia il servizio SSH digitando:

    sudo systemctl restart ssh

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


Cent OS
  1. Come impostare le chiavi SSH

  2. Configurare le chiavi SSH su CentOS 7 - Processo passo dopo passo?

  3. Come configurare le chiavi SSH su CentOS 8

  4. Come configurare le chiavi SSH su Ubuntu 16.04

  5. Come configurare le chiavi SSH su Ubuntu 18.04

Come configurare le chiavi SSH su Debian 10

Come configurare le chiavi SSH – Sistema operativo Windows?

Come generare una chiave SSH in CentOS 8

Come configurare la chiave SSH su un server Plesk

Come configurare SSH su CentOS e RHEL

Come configurare le chiavi SSH su Debian 11 Linux