Eu fiz várias tentativas de estabelecer a conexão SSH para o usuário root@host usando o terminal putty. Ao fazer isso, especifiquei credenciais erradas várias vezes e depois as especifiquei corretamente e, depois que as credenciais foram aceitas, a sessão ssh é interrompida com
"O servidor fechou inesperadamente a conexão de rede".
Este erro é relatado pelo terminal putty. Ao tentar ssh root@localhost no console local - funciona bem. Também funciona bem quando eu ssh otheruser@host de outro host. Portanto, os problemas de conectividade de rede não são culpados. O único erro em que estou pensando é: "Muitas falhas de autenticação para o usuário root", embora o putty tenha relatado um erro diferente.
A questão é: como recuperar dessa condição de erro e deixar o putty fazer login novamente? Reiniciar o sshd parece não ajudar
"Muitas falhas de autenticação para usuário root" significa que o limite MaxAuthTries do seu servidor SSH foi excedido . Isso acontece para que seu cliente esteja tentando se autenticar com todas as chaves possíveis armazenadas em /home/USER/.ssh/ .
Esta situação pode ser resolvida das seguintes formas:
Um único host no arquivo de configuração deve se parecer com isto:
Você também pode definir o usuário para não precisar inseri-lo na linha de comando e encurtar FQDNs longos também, veja este exemplo:
Em seguida, você se conecta ao servidor really-long-domain.example.com com:
Nota: se você optar por usar apenas a segunda opção e tentar usar o ssh example.com, você ainda receberá erros (se foi isso que o trouxe aqui), a versão curta não dará os erros, você também pode usar os dois opções para que você possa ssh [email protected] sem os erros.
Se você receber o seguinte erro SSH:
Isso pode acontecer se você tiver (padrão no meu sistema) cinco ou mais arquivos de identidade DSA/RSA armazenados em seu
.ssh
diretório. Nesse caso, se a-i
opção não for especificada na linha de comando, o cliente ssh primeiro tentará fazer login usando cada identidade (chave privada) e, em seguida, solicitará autenticação de senha. No entanto, o sshd desconecta a conexão após cinco tentativas de login incorretas (mais uma vez o padrão pode variar).Portanto, se você tiver várias chaves privadas em seu diretório .ssh, poderá desativá -las
Public Key Authentication
na linha de comando usando o-o
argumento opcional.Por exemplo:
Na máquina remota, abra /etc/sshd_config e altere o valor
Este é um problema típico quando você instalou várias chaves ou abriu várias conexões. Servidor verificando passo a passo cada chave e se MaxAuthTries estiver configurado em 3, após as primeiras 3 tentativas, você será desconectado. Segurança ssh típica.
Sugiro que você use o modo detalhado durante a conexão com a máquina remota para analisar o problema.
Adivinhando como a maioria das pessoas neste fórum fazem é ERRADO e é perda de tempo. Primeiro tente analisar o problema, colete informações e depois pergunte.
Divirta-se.
Para mim, esse problema foi resolvido criando o ssh_config abaixo para o host ao qual eu estava me conectando.
(~/.ssh/config)
O problema ocorreu porque eu tenho muitas chaves ssh na minha
~/.ssh
pasta, como 16 ou mais. E sem essas duas diretivasIdentityFile
ANDIdentitiesOnly
na configuração, minha máquina aparentemente estava tentando todas as chaves~/.ssh
e atingindo o número máximo de tentativas antes de tentar o IdentityFile correto.Tem certeza de que o login root para ssh é permitido?
Verifique sshd_config e verifique se o login root é permitido. sshd precisará ser reiniciado se a configuração for alterada.
Esta é uma má prática. Basta ter um usuário comum na caixa remota e conectar-se através do ssh usando-o, depois obter acesso root usando su/sudo.
Para resolver temporariamente esse problema até que as coisas possam ser totalmente resolvidas, conforme observado em outro lugar, você pode redefinir a contagem de PAM de um usuário para que ele possa tentar novamente:
Eu recomendaria que você, como Anon postou acima, use outro usuário para obter acesso ssh e use o
su
comando para obterroot
acesso.Certifique-se também de habilitar
PermitRootLogin
no/etc/ssh/sshd_config
arquivo no servidor.Eu também enfrentei o mesmo problema. Isso pode acontecer facilmente se você estiver usando o Pageant e tiver um grande número de chaves carregadas nele , pois esses servidores contam cada oferta de uma chave pública como uma tentativa de autenticação.
(Este conselho é retirado daqui .)
Corrigi esse problema em meus sistemas executando os seguintes comandos:
Em seguida, tentando ssh na máquina remota