Se eu usar o pubkey auth, por exemplo: no Ubuntu 11.04, como posso configurar o cliente ssh para usar apenas a autenticação de senha em um servidor? (apenas necessário por causa do teste de senhas em um servidor, no qual eu faço o login padrão com a chave)
Eu encontrei um caminho:
mv ~/.ssh/id_rsa ~/.ssh/id_rsa.backup
mv ~/.ssh/id_rsa.pub ~/.ssh/id_rsa.pub.backup
e agora recebo a senha, mas existem formas oficiais?
ssh
password
key-authentication
LanceBaynes
fonte
fonte
ssh -o GSSAPIAuthentication=no example.com
-o PubkeyAuthentication=no
foi suficiente no meu caso.-o PreferredAuthentications=keyboard-interactive -o PubkeyAuthentication=no
em vezPasswordAuthentication
. Na verdade, estou aqui porque queria testar se a autenticação de senha desabilitada funcionava corretamente no meu host.Eu descobri um atalho para esse fim:
Observe os dois pontos (
:
) e a senha vazia depois dele.fonte
mysql -u user -p
ssh
o cliente estava tentando cegamente chaves privadas não relacionadas para se autenticar em um servidor recém-instalado e continuar sendo rejeitado devido à quantidade máxima de tentativas alcançadas sem nunca precisar solicitar a senha. Para forçar a autenticação de senha para esta primeira conexão, tive que usar a-o PreferredAuthentications=password
sintaxe, o truque dos dois pontos não tendo efeito perceptível. Portanto, embora valha a pena tentar esse truque, não se deve confiar nele como um comportamento consistente.Assim como o método publicado pelo scoopr, você pode definir as opções por host no arquivo de configuração do cliente ssh.
No seu
.ssh
diretório, crie um arquivo chamadoconfig
(se ele ainda não existir) e defina as permissões como600
, então você pode criar seções que começam come defina as opções por host depois disso, por exemplo,
então você poderia ter
nesse arquivo e simplesmente
e a opção será escolhida.
fonte
~/.ssh/config
e adicioneiPubkeyAuthentication no
Recentemente, eu precisei disso, mas nenhuma das opções acima funcionou,
ssh -v
mostrou que as opções da linha de comando passadas pelo-o
switch foram substituídas pelos valores especificados no meu~/.ssh/config
arquivo.O que funcionou foi o seguinte:
Na
ssh
página do manual:Créditos a esta resposta: Como posso fazer com que o ssh ignore .ssh / config?
fonte
~/.ssh/config
, elas não serão usadas se eu especificar-F /dev/null
.ssh -v
A saída ajuda nesse caso, mostra claramente que, como tenho uma entrada geral na minha configuração ssh*
, ela escolhe usar a chave pública em vez de respeitar as opções passadas pelo-o
comutador, como nas respostas anteriores.~/.ssh/id_rsa
indicada na página de manual. Esses caminhos são codificados no cliente. Apenas certifique-se de fornecer o usuário correto ao testar.Tentei algumas dessas respostas, mas
ssh -v
continuei mostrando minhas chaves públicas sendo retiradas do meu diretório pessoal. No entanto, especificar um arquivo de identidade falso fez o truque para mim:Eu tenho que fazer isso permanentemente (para solucionar o servidor SSH quebrado em uma PDU montada em rack da APC - fique longe dessas coisas se você se preocupa com a segurança -, então acabei colocando a opção no meu arquivo de configuração:
fonte
As respostas @scoopr e @Halil Özgür não funcionaram para mim.
Isso funcionou para mim:
Fonte: http://linuxcommando.blogspot.com/2008/10/how-to-disable-ssh-host-key-checking.html
fonte
E também não se esqueça, não há
BatchMode=yes
ativo no .ssh / config. Caso contrário, você não terá chance de obter um prompt de senha interativo.fonte
Talvez eu seja o único no mundo com esse problema, mas tive um
ssh
de outro sistema operacional em execução (choco ssh no Windows em um shell cygwin) visto viawhich ssh
Então a solução foi
Anote o caminho completo. Fiz isso depois de correr
cyg-get openssh
fonte