GNU/Linux >> Linux Esercitazione >  >> Linux

Come evitare che ssh richieda la passphrase della chiave per gli accessi senza password

Il programma ssh-agent è un agente di autenticazione che gestisce le password per le chiavi private SSH. Usa ssh-add per aggiungere le chiavi all'elenco gestito da ssh-agent. Dopo aver aggiunto una password per la chiave privata a ssh-agent, non è necessario inserirla ogni volta che ti connetti a un host remoto con la tua chiave pubblica.

Generazione di coppie di chiavi di autenticazione

Usa ssh-keygen comando per generare coppie di chiavi di autenticazione come descritto di seguito. Fornire una passphrase, ad esempio "password", durante la creazione delle coppie di chiavi.

# ssh-keygen 
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:4lYqkqgXmhIxoyMdT+ZfGFCxeMUqTnXLjrRQKjbEC/U root@geeklab
The key's randomart image is:
+---[RSA 2048]----+
| o.  .oo.        |
|. o...ooo        |
| o .E=o+ .       |
|+ * B.+ o        |
|.* @ +.*S        |
|=.o.+.++o        |
|o=o...+.         |
|= .. o.          |
|o.               |
+----[SHA256]-----+

Copia la chiave pubblica sull'host remoto

1. Copia la chiave pubblica in ~/.ssh/authorized_keys sul sistema remoto.

# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

2. Ora prova ad accedere alla macchina, con "ssh '[email protected]'", e controlla i .ssh/authorized_keys per assicurarci che non abbiamo aggiunto chiavi extra che non ti aspettavi.

$ ssh 192.168.12.10
Enter passphrase for key '/root/.ssh/id_rsa': 
Last login: Wed Apr 06 09:03:50 2014 from 192.168.12.20

Aggiungi la password della chiave privata a ssh-agent

1. Per aggiungere la password della chiave privata a ssh-agent, immettere il seguente comando:

# exec ssh-agent $SHELL

2. Il passaggio successivo consiste nell'utilizzare il comando ssh-add per aggiungere la chiave.

# ssh-add
Enter passphrase for /root/.ssh/id_rsa: 
Identity added: /root/.ssh/id_rsa (/root/.ssh/id_rsa)

3. Il comando "ssh-add -l" elenca le impronte digitali di tutte le identità attualmente rappresentate dall'agente.

# ssh-add -l
2048 SHA256:4lYqkqgXmhIxoyMdT+ZfGFCxeMUqTnXLjrRQKjbEC/U /root/.ssh/id_rsa (RSA)

4. Puoi provare ad accedere al sistema remoto senza password ora.

$ ssh 192.168.12.10
Last login: Thu Apr 06 11:13:29 2014 from 192.168.12.20

In questo esempio, la passphrase viene ricordata solo per la sessione di accesso corrente e viene dimenticata quando ci si disconnette.


Linux
  1. Come impostare le chiavi SSH

  2. Come recuperare la chiave pubblica da una chiave privata Ssh?

  3. Come funziona SSH senza password in Linux / UNIX

  4. Come posso evitare la verifica dell'host di SSH per gli host conosciuti?

  5. come si crea una chiave ssh per un altro utente?

Come configurare l'autenticazione SSH senza password su Linux

Come creare una passphrase chiave SSH in Linux

Come configurare l'accesso senza password SSH in AlmaLinux

Come impostare l'autenticazione basata su chiave Ssh per Github utilizzando il file ~/.ssh/config?

Come aggiungere la chiave SSH per l'accesso SSH cPanel

Come impedire a SSH di disconnettersi se è rimasto inattivo per un po'