Acabei de ter o mesmo problema na minha caixa 12.04. Ou seja mesmos sintomas. Infelizmente, sempre acontecia quando eu introduzia a cláusula ListenAddress
com os endereços inet
e inet6
em sshd_config
. Em suma, isso parece ser um sintoma de um sshd_config
mal formado - embora os arquivos de log não digam nada disso.
Solução de problemas sshd
O que eu acho geralmente muito útil em tais casos é iniciar sshd
sem permitir que ele seja daemonizado. O problema no meu caso foi que nem syslog
nem auth.log
mostraram algo significativo.
Quando eu comecei no terminal, recebi:
# $(which sshd) -Ddp 10222
/etc/ssh/sshd_config line 8: address family must be specified before ListenAddress.
Muito melhor! Esta mensagem de erro permitiu-me ver o que está errado e corrigi-lo. Nenhum dos arquivos de log continha esta saída.
NB: pelo menos no Ubuntu o $(which sshd)
é o melhor método para satisfazer a exigência de sshd
de um caminho absoluto. Caso contrário, você receberá o seguinte erro: sshd re-exec requires execution with an absolute path
. O -p 10222
faz com que sshd
ouça nessa porta alternativa, sobrescrevendo o arquivo de configuração - isso é para que ele não entre em conflito com as instâncias sshd
potencialmente em execução. Certifique-se de escolher uma porta livre aqui.
Esse método me ajudou muitas vezes a encontrar problemas, seja problemas de autenticação ou outros tipos. Para obter uma saída realmente detalhada para stdout
, use $(which sshd) -Ddddp 10222
(observe o dd
adicionado para aumentar a verbosidade). Para mais bondade de depuração, verifique man sshd
.