Ricerca nel sito web

Come impostare l'accesso senza password SSH in Linux


SSH (Secure SHELL) è un protocollo di rete affidabile e open source utilizzato per accedere a server remoti per l'esecuzione di comandi e programmi.

Viene utilizzato anche per trasferire file da un computer a un altro computer sulla rete utilizzando un comando di copia sicura (SCP) e un comando rsync.

In questo articolo, ti mostreremo come impostare l'accesso senza password su distribuzioni Linux basate su RHEL come CentOS, Fedora, Rocky Linux & AlmaLinux e distribuzioni basate su Debian come Ubuntu e Mint utilizzando chiavi ssh per connettersi a remoti serverLinux senza inserire una password.

L'utilizzo dell'accesso senza password con chiavi SSH aumenterà la fiducia tra due server Linux per una facile sincronizzazione o trasferimento dei file.

Il mio ambiente di configurazione
SSH Client : 192.168.0.12 ( Fedora 36 )
SSH Remote Host : 192.168.0.11 ( CentOS 8 )

Se hai a che fare con diversi server remoti Linux, l'accesso SSH senza password è uno dei modi migliori per automatizzare attività come backup automatici con script, sincronizzazione di file utilizzando Comando SCP ed esecuzione di comandi remoti.

In questo esempio, imposteremo l'accesso automatico SSH senza password dal server 192.168.0.12 come utente tecmint a 192.168.0.11 con l'utente sheena.

Passaggio 1: creare chiavi SSH-Keygen di autenticazione su – (192.168.0.12)

Per prima cosa accedi al server 192.168.0.12 con l'utente tecmint e genera una coppia di chiavi pubbliche utilizzando il seguente comando.

ssh-keygen -t rsa

Generating public/private rsa key pair.
Enter file in which to save the key (/home/tecmint/.ssh/id_rsa): [Press enter key]
Created directory '/home/tecmint/.ssh'.
Enter passphrase (empty for no passphrase): [Press enter key]
Enter same passphrase again: [Press enter key]
Your identification has been saved in /home/tecmint/.ssh/id_rsa.
Your public key has been saved in /home/tecmint/.ssh/id_rsa.pub.
The key fingerprint is:
5f:ad:40:00:8a:d1:9b:99:b3:b0:f8:08:99:c3:ed:d3 [email 
The key's randomart image is:
+--[ RSA 2048]----+
|        ..oooE.++|
|         o. o.o  |
|          ..   . |
|         o  . . o|
|        S .  . + |
|       . .    . o|
|      . o o    ..|
|       + +       |
|        +.       |
+-----------------+

Passaggio 2: carica la chiave SSH su – 192.168.0.11

Utilizza SSH dal server 192.168.0.12 e carica una chiave pubblica appena generata (id_rsa.pub) sul server 192.168.0.11 in .ssh di>sheena come nome file authorized_keys.

ssh-copy-id [email 

Assicurati che siano impostate le autorizzazioni corrette sulla directory ~/.ssh e sul file ~/.ssh/authorized_keys sul server remoto.

ssh [email  "chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys"

Passaggio 3: disabilita l'autenticazione tramite password (facoltativo)

Per una maggiore sicurezza, è possibile disabilitare l'autenticazione della password sul server remoto e consentire solo l'autenticazione con chiave SSH. Per fare ciò, apri il file di configurazione del server SSH sul server remoto:

sudo nano /etc/ssh/sshd_config
OR
sudo vi /etc/ssh/sshd_config

Trova la riga contenente PasswordAuthentication e impostala su no.

PasswordAuthentication no

Salvare il file e riavviare il servizio SSH.

sudo systemctl restart sshd

Passaggio 4: testare l'accesso senza password SSH da 192.168.0.12

Da ora in poi puoi accedere a 192.168.0.11 come utente sheena dal server 192.168.0.12 come utente Utente tecmint senza password.

ssh [email 

In questo articolo hai imparato come impostare un accesso SSH senza password utilizzando una chiave ssh. Mi aspetto che il processo sia stato semplice. Se avete domande, pubblicatele nella sezione commenti qui sotto.