SSH: desabilitando completamente a autenticação de senha

13

Existe uma maneira de desativar completamente a autenticação de senha? A linha de comando é a seguinte:

ssh -o KbdInteractiveAuthentication=no -o PasswordAuthentication=no machine" 

AINDA pede uma senha. Claro que eu gostaria de fazer isso sem tocar no servidor, se possível.

    
por Peltier 02.02.2010 / 10:12

3 respostas

19

Ok, eu encontrei! É

ssh -o BatchMode=yes host

Não é muito intuitivo, especialmente com o fato de que as opções que tentei anteriormente não funcionam.

    
por 02.02.2010 / 10:27
4

Você pode adicionar essa opção a .ssh / config e salvar algumas digitação:

Host host
BatchMode yes

deve fazer o trabalho.

    
por 02.02.2010 / 12:57
2

Acabei de ter este problema e encontrei a resposta aqui:

link

Basicamente, openssh usava o teclado interativo para implementar a desafio-repsonse. Portanto, se uma dessas opções for definida como "yes", o teclado interativo será definido como "yes" no código. Você precisa definir ambos como "não" para obter o comportamento desejado.

Eu tive que fazer:

ssh -o PasswordAuthentication=no -o KbdInteractiveAuthentication=no -o ChallengeResponseAuthentication=no

É claro que a configuração BatchMode=yes cuida de tudo isso para você e a prova futura contra novos métodos de autenticação interativa do usuário no futuro.

    
por 30.01.2012 / 18:32