2010-03-29 09:43:00 +0000 2010-03-29 09:43:00 +0000
181
181
Advertisement

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

Advertisement

Ottengo il seguente prompt ogni volta che provo a connettermi a un server usando SSH. Digito “sì”, ma c'è un modo per evitare questo?

The authenticity of host '111.222.333.444 (111.222.333.444)' can't be established.
RSA key fingerprint is f3:cf:58:ae:71:0b:c8:04:6f:34:a3:b2:e4:1e:0c:8b.
Are you sure you want to continue connecting (yes/no)?
Advertisement
Advertisement

Risposte (8)

254
254
254
2010-03-29 10:53:30 +0000

Usa l'opzione -o,

ssh -o "StrictHostKeyChecking no" user@host
108
108
108
2013-08-06 21:56:17 +0000

Aggiungere le seguenti linee all'inizio di /etc/ssh/ssh_config

Host 192.168.0.*
   StrictHostKeyChecking no
   UserKnownHostsFile=/dev/null

Opzioni:

  • La sottorete Host può essere * per permettere l'accesso illimitato a tutti gli IP.
  • Modifica /etc/ssh/ssh_config per la configurazione globale o ~/.ssh/config per la configurazione specifica dell'utente.

Vedi http://linuxcommando.blogspot.com/2008/10/how-to-disable-ssh-host-key-checking.html

28
Advertisement
28
28
2010-03-29 09:47:30 +0000
Advertisement

Dovresti riceverlo solo la prima volta che ti connetti a un nuovo host. Dopo che hai risposto yes l'host viene memorizzato in ~/.ssh/known_hosts e non ti verrà richiesto la prossima volta che ti connetti.

Nota che se ~/.ssh/known_hosts non può essere scritto per qualsiasi ragione (per esempio un problema di permessi) allora ti verrà richiesto ogni volta che ti connetti.

11
11
11
2010-06-08 22:29:47 +0000

Il modo migliore (perché non sacrifica la sicurezza) è quello di connettersi una volta a tutti i computer da un client (ti verrà richiesto ogni volta, rispondi sempre sì). Come indicato nell'altra risposta, le chiavi saranno poi memorizzate in ~/.ssh/known\hosts. Quindi copiate questo file su ogni computer client da cui potreste in seguito volervi connettere (possibilmente per ogni account utente che usate). Allora tutti questi account “conosceranno” i computer, quindi nessun prompt.

Il vantaggio rispetto alla semplice disabilitazione del prompt è che SSH può effettivamente controllare se c'è un attacco MITM.

1
Advertisement
1
1
2015-07-11 23:20:24 +0000
Advertisement

Se volete disabilitare la conferma, piuttosto che l'autenticazione, potete usare l'opzione “-o CheckHostIP=no”

ssh -i sergeys_rsa_key.pem -o CheckHostIP=no brin@8.8.8.8
0
0
0
2015-12-12 18:09:32 +0000

Questo è probabilmente perché il tuo server di chiavi ssh è cambiato, dato che l'ip del server o il dominio è lo stesso ma la chiave ssh non corrisponde.

Devi rimuovere la chiave memorizzata in /home/$user/.ssh/known_hosts per evitare questo messaggio.

Ho risolto rimuovendo tutte le chiavi in quel file, quindi viene creato un nuovo token per questo nome di dominio.

0
Advertisement
0
0
2020-01-27 07:10:41 +0000
Advertisement

Avevo affrontato un problema simile in cui, nonostante l'utilizzo della soluzione verificata di cui sopra, il mio ssh non funzionava ed era perché il file known\hosts mancava dalla directory ~/.ssh/ e il File System era di sola lettura. Quindi durante l'esecuzione anche io non ero in grado di creare il file ~/.ssh/ known_hosts.

Se affronti un problema simile allora vedi se puoi scrivere il file known\hosts nella posizione /tmp. Questo è per lo più abilitato alla scrittura anche in un file system di sola lettura.

Successivamente nel comando ssh potete specificare che ssh legga il file known_hosts dalla posizione /tmp.

ssh -o UserKnownHostsFile=/tmp/known_hosts -o StrictHostKeyChecking=no user_name@destination_server_ip
-2
-2
-2
2018-11-09 12:14:07 +0000

Controlla i permessi sul tuo file ~/.ssh/known_hosts. I miei erano errati quando ho avuto questo problema. L'ho risolto con:

chmod 0600 ~/.ssh/known_hosts
Advertisement

Domande correlate

6
10
19
12
4
Advertisement
Advertisement