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

Come configurare le chiavi SSH su CentOS 8

In questo tutorial, ti mostreremo come configurare le chiavi SSH su CentOS 8. Per chi non lo sapesse, Secure Shell (SSH) è un protocollo di rete crittografico progettato per una connessione sicura tra un client e un server. In genere, i client possono accedere ai propri server in due modi:utilizzando l'autenticazione basata su password o l'autenticazione basata su chiave pubblica. L'utilizzo di chiavi SSH per l'autenticazione è altamente raccomandato, come alternativa più sicura alle password .

Questo articolo presuppone che tu abbia almeno una conoscenza di base di Linux, sappia come usare la shell e, soprattutto, che ospiti il ​​tuo sito sul tuo VPS. L'installazione è abbastanza semplice e presuppone che tu sono in esecuzione nell'account root, in caso contrario potrebbe essere necessario aggiungere 'sudo ' ai comandi per ottenere i privilegi di root. Ti mostrerò passo dopo passo l'installazione e la configurazione delle chiavi SSH sul server CentOS 8.

Prerequisiti

  • Un server che esegue uno dei seguenti sistemi operativi:CentOS 8.
  • Si consiglia di utilizzare una nuova installazione del sistema operativo per prevenire potenziali problemi.
  • Accesso SSH al server (o semplicemente apri Terminal se sei su un desktop).
  • Un non-root sudo user o accedere all'root user . Ti consigliamo di agire come non-root sudo user , tuttavia, puoi danneggiare il tuo sistema se non stai attento quando agisci come root.

Imposta chiavi SSH su CentOS 8

Passaggio 1. Innanzitutto, iniziamo assicurandoci che il tuo sistema sia aggiornato.

sudo dnf update

Passaggio 2. Creazione di chiavi SSH su CentOS 8.

Inizia accedendo alla macchina di origine (server locale) e creando una coppia di chiavi RSA a 4096 bit utilizzando il comando:

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

Dopo aver inserito il comando, dovresti vedere il seguente prompt:

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

Per salvare il file nella directory suggerita, premi Invio. In alternativa, puoi specificare un'altra posizione.

Avanti, il prompt continuerà con:

Enter passphrase (empty for no passphrase):

Infine, l'output terminerà specificando le seguenti informazioni:

Your identification has been saved in home/your_username/.ssh/id_rsa.
Your public key has been saved in home/your_username/.ssh/id_rsa.pub.
The key fingerprint is:
KYg355:gKmeiU5NQ-ramona5Ji57F8iO6c0K6GUr5:BMWRk
username@hostname
The key's randomart image is:
+------[RSA 3072]-------+
|       .oo.            |
|        +o+.           |
|      + +.+            |
| o  +          S .     |
|      .    E  .   . =.o|
|    .  +       .   B+@o|
|        +   .     oo*=O|
|   oo            . .+o+|
|                 o=ooo=|
+------ [SHA256] ------+

Passaggio 3. Copia la chiave pubblica sul server CentOS.

Inizia digitando il seguente comando, specificando l'account utente SSH e l'indirizzo IP dell'host remoto:

ssh-copy-id username@server_ip_address

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.

Infine, l'output ti dice il numero di chiavi aggiunte, insieme a chiare istruzioni su cosa fare dopo:

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.

Passaggio 4. Connettiti al server remoto utilizzando 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:

ssh remote_username@server_ip_address

Passaggio 5. Disabilita l'autenticazione con password.

Sebbene tu sia riuscito ad accedere al server CentOS senza dover fornire una password, ha ancora un sistema di autenticazione basato su password in esecuzione sulla macchina. Questo lo rende un potenziale bersaglio per attacchi di forza bruta. Segui i passaggi seguenti per disabilitare l'autenticazione della password SSH:

ssh sudo_user@server_ip_address

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

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

Al termine salva il file e riavvia il servizio SSH:

sudo systemctl restart ssh

Congratulazioni! Hai installato correttamente il server SSH. Grazie per aver utilizzato questo tutorial per l'installazione e la configurazione delle chiavi SSH sui sistemi CentOS 8. Per ulteriore aiuto o informazioni utili, ti consigliamo di controllare l'SSH ufficiale sito web.


Cent OS
  1. Come generare e configurare chiavi SSH su CentOS 7

  2. Come configurare le chiavi SSH su CentOS 8

  3. Come configurare un server SFTP su CentOS

  4. Come modificare la porta SSH in CentOS

  5. Come configurare le chiavi SSH per l'accesso SSH "senza password" su CentOS/RHEL

Come configurare l'accesso senza password SSH su CentOS 7 / RHEL 7

Come configurare l'accesso senza password SSH su CentOS 8 / RHEL 8

Tutorial completo su come impostare chiavi SSH e connessioni SSH

Come abilitare SSH su CentOS

Come generare una chiave SSH in CentOS 8

Come configurare l'accesso senza password SSH in Rocky Linux