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

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

SSH è un protocollo client e server e ci aiuta ad accedere in modo sicuro al sistema remoto sulla rete attraverso il tunnel crittografato. SSH ha un meccanismo di trasferimento file (SCP) integrato per trasferire file e directory sulla rete ed è molto più sicuro di FTP (File Transfer Protocol).

Negli ambienti più grandi, è difficile inserire la password ogni volta per accedere a macchine remote. Quindi, per facilitare l'accesso, possiamo utilizzare la funzione SSH senza password per accedere alla macchina remota senza inserire la password.

Qui vedremo come configurare l'accesso senza password SSH su CentOS 8 / RHEL 8.

Ipotesi

Qui abbiamo due macchine con due nomi utente diversi.

Nome host Indirizzo IP Utente OS Scopo
server.itzgeek.local 192.168.0.10 raj CentOS 8 / RHEL 8 Macchina di origine
client.itzgeek.local 192.168.0.20 ariete CentOS 8 / RHEL 8 Macchina di destinazione

Qui userò un nome host invece di un indirizzo IP.

Segui i passaggi per creare l'accesso senza password.

Configura l'accesso senza password SSH su CentOS 8

Per abilitare l'accesso senza password SSH, dobbiamo inserire la voce della chiave pubblica della macchina locale nel file ~/.ssh/authorized_keys della macchina remota (~ rappresenta la directory home dell'utente).

Possiamo configurare un accesso senza password SSH in due modi. Scegli uno dei modi.

  1. Utilizzo del comando ssh-copy-id
  2. Copia manuale delle chiavi

Utilizzo del comando ssh-copy-id

Questo metodo prevede la generazione di una coppia di chiavi SSH sul computer di origine e il posizionamento sul computer di destinazione con un singolo comando (ssh-copy-id).

Il comando ssh-copy-id aggiunge la chiave pubblica SSH generata alle chiavi esistenti nel file ~/.ssh/authorized_keys nella destinazione. Se il file ~/.ssh/authorized_keys non è presente sul computer di destinazione, il comando lo creerà e collocherà la chiave pubblica SSH.

Genera chiave pubblica

Accedi al computer di origine e crea una coppia di chiavi SSH utilizzando il comando seguente.

[raj@server ~]$ ssh-keygen

Risultato:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/raj/.ssh/id_rsa):
Created directory '/home/raj/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/raj/.ssh/id_rsa.
Your public key has been saved in /home/raj/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:8BuI21rECULGQMs3BtU2o3jHyHghg+p5RE8naQTQP2A [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|+**o+..          |
|o=+E X .         |
|.oX+& *          |
|.ooO.X =         |
|. = o * S        |
| o . +   o       |
|  . . o .        |
|     o           |
|    .            |
+----[SHA256]-----+

Una volta creati, troverai due file id_rsa e id_rsa.pub all'interno della directory .ssh. Useremo id_rsa.pub (chiave pubblica) per l'accesso senza password SSH.

[raj@server ~]$ ls -al ~/.ssh/

Risultato:

total 8
drwx------. 2 raj raj   38 Nov  7 21:50 .
drwx------. 3 raj raj   74 Nov  7 21:50 ..
-rw-------. 1 raj raj 1831 Nov  7 21:50 id_rsa
-rw-r--r--. 1 raj raj  406 Nov  7 21:50 id_rsa.pub

Copia chiave pubblica

Usa il comando ssh-copy-id fornito con il pacchetto openssh-clients con un file di input di id_rsa.pub.

[raj@server ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

Risultato:

/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/raj/.ssh/id_rsa.pub"
The authenticity of host 'client.itzgeek.local (192.168.0.20)' can't be established.
ECDSA key fingerprint is SHA256:z4TLSbno9MLNF1ucNq4gtMlLQDVgrfLKEt8JguchKdo.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:

Number of key(s) added: 1

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

Copia manuale delle chiavi

Genera chiave pubblica

Questo metodo prevede la generazione di una coppia di chiavi SSH sul computer di origine e il posizionamento sul computer di destinazione effettuando il login manualmente.

Innanzitutto, accedi alla macchina di origine e crea una coppia di chiavi SSH usando il seguente comando.

[raj@server ~]$ ssh-keygen

Risultato:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/raj/.ssh/id_rsa):
Created directory '/home/raj/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/raj/.ssh/id_rsa.
Your public key has been saved in /home/raj/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:8BuI21rECULGQMs3BtU2o3jHyHghg+p5RE8naQTQP2A [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|+**o+..          |
|o=+E X .         |
|.oX+& *          |
|.ooO.X =         |
|. = o * S        |
| o . +   o       |
|  . . o .        |
|     o           |
|    .            |
+----[SHA256]-----+

Una volta creati, troverai due file id_rsa e id_rsa.pub all'interno della directory .ssh. Useremo id_rsa.pub (chiave pubblica) per l'accesso senza password SSH.

[raj@server ~]$ ls -al ~/.ssh/

Risultato:

total 8
drwx------. 2 raj raj   38 Nov  7 21:50 .
drwx------. 3 raj raj   74 Nov  7 21:50 ..
-rw-------. 1 raj raj 1831 Nov  7 21:50 id_rsa
-rw-r--r--. 1 raj raj  406 Nov  7 21:50 id_rsa.pub

Copia chiave pubblica

È possibile utilizzare il comando scp per copiare id_rsa.pub nella destinazione o copiare il contenuto del file id_rsa.pub e incollarlo nel file ~/.ssh/authorized_keys della macchina di destinazione.
Metodo 1

Accedi alla macchina di destinazione e crea la directory .ssh nella directory home dell'utente, se non esiste.

[ram@client ~]$ mkdir ~/.ssh

[ram@client ~]$ chmod 700 ~/.ssh

Usa il comando scp per copiare id_rsa.pub nella directory /tmp della macchina di destinazione.

[raj@server ~]$ scp -pr  ~/.ssh/id_rsa.pub [email protected]:/tmp

Dovresti inserire la password per la destinazione poiché dobbiamo ancora configurare l'accesso senza password.

Inserisci la chiave pubblica nel file authorized_keys per l'accesso senza password.

[ram@client ~]$ cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys

Aggiorna l'autorizzazione del file.

[ram@client ~]$ chmod 600 ~/.ssh/authorized_keys
Metodo 2

Accedi alla macchina di destinazione e crea una directory .ssh nella directory home dell'utente, se non esiste.

[ram@client ~]$ mkdir ~/.ssh

[ram@client ~]$ chmod 700 ~/.ssh

Modifica il file authorized_keys.

[ram@client ~]$ vi ~/.ssh/authorized_keys

Sul computer di origine, visualizza il contenuto del file id_rsa.pub utilizzando il comando cat.

[raj@server ~]$ cat ~/.ssh/id_rsa.pub

Risultato: (campione)

Copia il contenuto e incollalo nel file authorized_keys sulla destinazione e salvalo.

Quindi, aggiorna l'autorizzazione del file.

[ram@client ~]$ chmod 600 ~/.ssh/authorized_keys

Prova l'accesso senza password

Ora accedi alla macchina remota usando il comando ssh.

[raj@server ~]$ ssh [email protected]

Ora dovresti essere in grado di accedere alla macchina remota senza la password.

Conclusione

È tutto. Spero che tu sia in grado di configurare l'accesso senza password SSH su CentOS 8 / RHEL 8. Condividi il tuo feedback nella sezione commenti.


Cent OS
  1. Password meno Accesso SSH – CentOS 6 / RHEL 6

  2. Come configurare il server SysLog su CentOS 7 / RHEL 7

  3. Come configurare il server NFS su CentOS 7 / RHEL 7

  4. Come configurare le chiavi SSH su CentOS 8

  5. Come configurare l'accesso SSH senza password in Linux

Come configurare Jenkins su CentOS 8 / RHEL 8

Come configurare Icinga Web 2 su CentOS 8 / RHEL 8

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

Come configurare uno Chef 12 su CentOS 7 / RHEL 7

Come generare una chiave SSH in CentOS 8

Come configurare l'accesso senza password SSH in AlmaLinux