Disabilita StrictHostKeyChecking in ssh

10

Sto cercando di connettermi a un host Linux usando ssh e ottenere il seguente errore

RSA host key for 10.1.1.20 has changed and you have requested strict checking.

Vorrei ignorarlo, ma non riesco a trovare nessuna combinazione di opzioni per farlo.

Probabilmente ho impostato StrictHostKeyChecking anni fa, ma non ricordo come.

Ho consultato man ssh che mi informa che il file di configurazione a livello di sistema è /etc/ssh/ssh_config e il valore predefinito per il file di configurazione per utente è ~/.ssh/config né esiste.

EDIT Per chiarire la mia domanda, l'opzione è chiaramente impostata. Sto cercando di scoprire

  1. Dove sono archiviate le opzioni (non ho i file menzionati nella man page, che sembra essere sbagliato).
  2. Come modificare le opzioni.

Non sto guardando come risolvere il problema che sto avendo (so che posso modificare il file known_hosts, ma questo è noioso ogni volta che provo un nuovo server).

    
posta Milliways 05.09.2015 - 06:09
fonte

2 risposte

14

Per disabilitare il controllo host rigido su OS X per l'utente corrente, crea o modifica ~ / .ssh / config e aggiungi le seguenti righe:

Host [IP Address] 
   StrictHostKeyChecking no
   UserKnownHostsFile=/dev/null

Un tipico esempio per gli host nella rete locale potrebbe essere:

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

A seconda dell'utilizzo di ssh, non è consigliabile disattivare il controllo rigoroso della chiave host per gli tutti host.

Se vuoi solo rimuovere la voce per 10.1.1.20 apri ~ / .ssh / known_hosts con un editor di tua scelta e rimuovere la rispettiva linea "10.1.1.20 ssh-rsa public-key $ "

    
risposta data 05.09.2015 - 08:38
fonte
5

Puoi semplicemente provarlo così com'è senza confitguration, solo sulla riga di comando:

ssh -o StrictHostKeyChecking=no hostname

Ma non penso che faccia tutto ciò di cui hai bisogno. Se si desidera ignorare tutto il controllo degli hostkey, è necessario impostare il known_hosts file su /dev/null , quindi non verrà mai memorizzato nulla:

ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null hostname

o in /etc/ssh_config :

StrictHostKeyChecking no
UserKnownHostsFile /dev/null
    
risposta data 05.09.2015 - 08:26
fonte

Leggi altre domande sui tag