Como posso fazer o ssh ignorar o .ssh / config?

32

Eu tenho o seguinte em meu ~ / .ssh / config.

HOST 10.2.192.*
        USER foo
        PreferredAuthentications publickey
        IdentityFile ~/.ssh/foo/id_rsa

A configuração acima permite-me ligar a uma máquina enquanto digita metade do número de palavras.

 ssh 10.2.192.x

Antes da minha configuração ssh, eu tinha que digitar tudo isso:

 ssh [email protected] -i ~/.ss/foo/id_rsa

No entanto, há uma máquina na sub-rede 10.2.192.x à qual desejo me conectar com autenticação baseada em senha em vez de autenticação baseada em chave.

Porque o ssh examina o meu arquivo de configuração e encontra uma correspondência para PreferredAuthentications publickey Não consigo fazer login com apenas minha senha.

Eu não pretendo mergulhar neste floco de neve especial com freqüência suficiente para justificar a adição de uma nova regra na minha configuração ssh.

Como posso fazer o ssh ignorar meu arquivo de configuração apenas desta vez e permitir que eu autentique com uma senha?

    
por spuder 21.01.2014 / 19:28

2 respostas

42

Para fazer com que seu cliente ssh ignore seu arquivo de configuração, use ssh -F /dev/null [email protected] . Como o IdentityFile da sua sub-rede está em ~/.ssh/foo em vez de ~/.ssh/ , você não precisa criar um novo arquivo inteiro para evitar sua chave privada existente.

Na página ssh man:

 -F configfile
     Specifies an alternative per-user configuration file.  If a
     configuration file is given on the command line, the system-wide
     configuration file (/etc/ssh/ssh_config) will be ignored. The default 
     for the per-user configuration file is ~/.ssh/config.
    
por 21.01.2014 / 19:35
17

Acredito que esta pergunta já foi respondida por: Como forçar o cliente ssh a usar somente a senha auth?

ssh -o PubkeyAuthentication=no example.com
    
por 21.01.2014 / 19:58

Tags