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

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

SSH è un protocollo client e server e ci aiuta ad accedere al sistema remoto sulla rete attraverso il tunnel crittografato. Ogni volta che la macchina client accede al server che esegue SSH, il client scarica la chiave di sicurezza dal server e, allo stesso tempo, il server scarica anche la chiave dal client. Queste due chiavi creano il tunnel crittografato tra il server e il client, in modo che i dati vengano trasferiti in modo molto sicuro sulla rete.

Se l'organizzazione ha un numero elevato di server, ogni volta l'amministratore deve inserire la password per accedere al sistema remoto. È una seccatura inserire la password più volte; SSH viene fornito con una nuova funzionalità chiamata login senza password, che aiuta ad accedere alla macchina remota senza inserire la password.

Ipotesi

Qui abbiamo due macchine con due nomi utente diversi.

Nome host Indirizzo IP Utente OS Scopo
server.itzgeek.local 192.168.1.10 raj CentOS 7 / RHEL 7 Macchina di origine
client.itzgeek.local 192.168.1.20 ariete CentOS 7 / RHEL 7 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 7

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

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

  1. Automatico – (consigliato)
  2. Manuale

Metodo 1:(automatico)

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.

Accedi alla macchina di origine e crea una coppia di chiavi SSH utilizzando il seguente comando ssh-keygen.

[raj@server ~]$ ssh-keygen

Risultato:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/raj/.ssh/id_rsa):  << Press Enter
Created directory '/home/raj/.ssh'.
Enter passphrase (empty for no passphrase):  << Press Enter
Enter same passphrase again:  << Press Enter
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:0oqVhWQzIV+hFFHkquVCTihmORqtt+vXHIXhhXoIosI [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|    . XB=.       |
|. .  *oB.        |
|o. . +++o        |
|oE..o +=.        |
|+=o o.*.S        |
|++.+ *.o         |
|o . =oo.         |
| . ...o          |
| .+o             |
+----[SHA256]-----+

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

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

Risultato:

total 8
drwx------. 2 raj raj   38 Sep  6 00:37 .
drwx------. 3 raj raj   74 Sep  6 00:37 ..
-rw-------. 1 raj raj 1675 Sep  6 00:37 id_rsa
-rw-r–r–. 1 raj raj 406 Sep 6 00:37 id_rsa.pub

Usa il comando ssh-copy-id con un file di input di id_rsa.pub.

[raj@server ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
Il comando ssh-copy-id crea ~/.ssh/authorized_keys sul computer di destinazione se il file non lo fa. In caso contrario, ssh-copy-id aggiungerebbe la nuova chiave alle chiavi esistenti.

Risultato:

The authenticity of host 'client.itzgeek.local (192.168.1.20)' can't be established.
ECDSA key fingerprint is SHA256:sueTz6FURcKDbeyGkpE7lUHOaosW/rkkvlG18v98T7Y.
ECDSA key fingerprint is MD5:f7:39:52:7e:2e:a4:20:84:ff:d7:72:21:20:36:91:76.
Are you sure you want to continue connecting (yes/no)? yes << Type Yes and Press Enter
/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: << Enter password of destination machine user (ram)

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.

Metodo 2:(Manuale)

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):  << Press Enter
Created directory '/home/raj/.ssh'.
Enter passphrase (empty for no passphrase):  << Press Enter
Enter same passphrase again:  << Press Enter
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:0oqVhWQzIV+hFFHkquVCTihmORqtt+vXHIXhhXoIosI [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|    . XB=.       |
|. .  *oB.        |
|o. . +++o        |
|oE..o +=.        |
|+=o o.*.S        |
|++.+ *.o         |
|o . =oo.         |
| . ...o          |
| .+o             |
+----[SHA256]-----+

Una volta creato, troverai due file id_rsa e id_rsa.pub all'interno della directory .ssh, Useremo id_rsa.pub per l'accesso senza password.

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

Risultato:

total 8
drwx------. 2 raj raj   38 Sep  6 00:37 .
drwx------. 3 raj raj   74 Sep  6 00:37 ..
-rw-------. 1 raj raj 1675 Sep  6 00:37 id_rsa
-rw-r--r--. 1 raj raj 406 Sep 6 00:37 id_rsa.pub
È possibile utilizzare il comando scp per copiare id_rsa.pub nella destinazione o copiare il contenuto del file id_rsa.pub e incollarlo nella macchina di destinazione (file ~/.ssh/authorized_keys).

Metodo di copia: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 scp comando per copiare id_rsa.pub al /tmp della macchina di destinazione directory.

[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 di origine 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 di copia:2

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

Modifica il file authorized_keys.

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

Sul computer di origine, visualizzare il contenuto del file id_rsa.pub utilizzando il comando cat. Copia il contenuto selezionandolo (supponendo che tu stia usando PUTTY).

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

Risultato: (campione)

Inserisci il contenuto di cui sopra 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 SSH. Ti porterà direttamente alla shell senza chiedere la password.

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

[ram@client ~]$ uname -a

Conclusione

È tutto. Questo accesso senza password fa risparmiare tempo ed energia agli amministratori di sistema. 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 le chiavi SSH su CentOS 8

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

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

Come configurare Jenkins su CentOS 8 / RHEL 8

Come configurare Icinga Web 2 su CentOS 8 / RHEL 8

Come configurare uno Chef 12 su CentOS 7 / RHEL 7

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

Come generare una chiave SSH in CentOS 8

Come configurare l'accesso senza password SSH in AlmaLinux