Erlang, SSH e Authorized_Keys
-
19-09-2019 - |
Pergunta
Brincando com o ssh e chave pública Aplicação em Erlang, eu descobri um bom característica.
Eu estava tentando me conectar ao meu daemon Erlang SSH em execução usando um Chave RSA, mas a autenticação estava falhando e fui solicitado a uma senha.
Depois de depurar e traçar (e alguns cafés), percebi que, por algum motivo estranho, uma chave não válida para o meu usuário estava lá. o Autorizado_keys arquivo contido duas chaves. O errado estava em algum momento do arquivo, enquanto o correto foi anexado no final do arquivo.
Agora, o aplicativo Erlang SSH, ao diferenciar a chave fornecida com os contidos nos Authorized_Keys, estava encontrando a primeira entrada (ignorando completamente o segundo - o correto). Então, estava mudando para diferentes mecanismos de autenticação (a princípio estava tentando DSA ao invés de RSA E então estava solicitando uma senha).
A questão é: esse comportamento é pretendido ou o servidor ssh verificar várias entradas para o mesmo usuário no Autorizado_keys Arquivo? Este é um comportamento genérico de SSH ou é apenas específico para a implementação do ERLANG?
Solução
Sim, é uma autenticação de 'primeiro fracasso' e me deparei com seu problema várias vezes. No que diz respeito à implementação, foi explicado que o demônio iterou sobre o arquivo autorizado_keys procurando um login correspondente e depois verificou a chave.
Esta parece ser a implementação padrão,