Resolveu. O ufw estava agindo fora. Embora sudo ufw status
retorne "desativado", a execução de sudo ufw disable
corrigiu. Eu não tenho nenhuma explicação para isso, depois de perder muito tempo com isso, estou feliz que funcione.
Após um login bem-sucedido no meu VPS, o prompt de comando não é exibido. Eu corri ssh com -vvv e sshd com saída de depuração, absolutamente nada está errado.
O VPS é o Ubuntu 11.04, o cliente Ubuntu 11.10, sentado atrás de um roteador. O estranho é o meu laptop (também Ubuntu 11.10) por trás desse mesmo roteador conecta e obtém o prompt de comando sem problemas.
/ var / log / auth output é aqui
A saída ssh -vvv é aqui
Como o laptop recebe o prompt de comando sem problemas, acredito que o problema esteja na minha área de trabalho. Posso fazer um flush de tudo relacionado ao ssh no caso de estragar alguma coisa? Eu tentei excluir ~ / .ssh / knownhosts, mas isso não aconteceu.
Resolveu. O ufw estava agindo fora. Embora sudo ufw status
retorne "desativado", a execução de sudo ufw disable
corrigiu. Eu não tenho nenhuma explicação para isso, depois de perder muito tempo com isso, estou feliz que funcione.
Não tenho certeza se este é o mesmo problema que vi, mas no Ubuntu eles exigem que o bash seja executado no modo de login para definir o prompt, como a menos que você tenha login=yes
no sshd_config
você não receberá uma solicitação.
Para o bem dos outros que acabam com problemas semelhantes, aqui está outra solução:
Nosso sistema embarcado estava permitindo conexões ssh, mas não estava dando um prompt de shell. Definindo a saída de log para DEBUG3 em sshd_config
e verificando o /var/log/messages
, conseguimos determinar que o servidor ssh iria pausar por aproximadamente 100 anos!
Nosso sistema embarcado nunca inicializou seu relógio, então ele achou que era 1917. Como a mensagem do cliente ssh era do futuro, o servidor aguardava seu próprio tempo para alcançá-lo. Resolvemos o problema definindo a hora (usando date
) e reiniciando o servidor (usando /etc/init.d/sshd restart
).
Quando você estiver logado, faça echo "$PS1" | od -bc
. Seu prompt, PS1
(assumindo bash
) é definido pelos seus scripts de inicialização. Onde você configura seu prompt? Talvez você precise adicionar sua definição de PS1
a ~/.ssh/environment
ou ~/.ssh/rc
no destino. Veja man ssh
e man sshd
.
Eu tenho o mesmo problema em um dispositivo incorporado. O problema foi que /dev/pts
não foi montado.
sudo mount -t devpts none /dev/pts
Tags ssh