Você pode estar digitando em uma sessão SSH remota e, de repente, nada acontece. O sistema parece não responder às suas teclas. O que você faz?
Veja por que isso acontece, como sair de uma sessão SSH que não responde e por que você pode querer mudar para o Mosh.
O que faz com que as sessões SSH congelem?
O principal motivo do congelamento das sessões SSH é a queda da conexão de rede. Os sinais de Wi-Fi podem cair, ou você pode deixar seu computador hibernar. Isso é mais comum com laptops. Você pode fechar a tampa do laptop e esquecer que ainda está logado via SSH.
O SSH foi originalmente projetado em uma era antes das pessoas usarem laptops rotineiramente. O SSH funciona melhor em redes com fio.
1. Termine com uma sequência de escape
Se sua sessão SSH congelar, tente usar uma sequência de escape. Uma sequência de escape permite que você envie sinais para o cliente SSH em vez da máquina remota. As sequências de escape são precedidas por um caractere de escape. Por padrão no cliente OpenSSH, é o til (~) personagem.
Para sair do cliente SSH, você pode pressionar a tecla til e depois a tecla período (.) chave.
Você também pode alterar o caractere de escape se quiser. Você pode especificar um novo caractere de escape com o -e opção na linha de comando. Você também pode alterá-la permanentemente definindo a EscapeChar opção em seu .ssh/configuração arquivo no seu diretório inicial na máquina local.
2. Usando o comando kill

Se usar uma sequência de escape não funcionar, você pode tentar matar o cliente SSH. Para encontrar o ID do processo (PID) da sua sessão, canalize o comando ps por meio do grep:
ps aux | grep ssh
O argumento “aux” para ps significa “listar todos os processos no sistema, não importa a quem eles pertencem ou se eles têm um terminal de controle ou não”.
Se você tiver várias sessões, você pode escolher a congelada porque a listagem mostrará o nome de usuário e endereço na máquina remota em que as sessões SSH estão logadas. Depois de encontrar o PID da sua sessão, você pode encerrá-la com o comando kill:
matar [PID]
Para melhores conexões SSH, use Mosh!

Uma maneira melhor de evitar sessões SSH congeladas e irritantes é usar o Mosh. Se a conexão cair, o Mosh deixará você continuar conectado. Ele enviará todas as mensagens quando você se reconectar. Ele também funciona quando você coloca sua máquina para dormir.
Você também pode usar um multiplexador de terminal como o GNU Screen ou o tmux para retomar sua sessão SSH após qualquer desconexão, mas o Mosh e o tmux são ainda mais poderosos quando usados juntos.
Para instalar o Mosh no Debian e no Ubuntu:
sudo apt instalar mosh
E no Arch Linux:
sudo pacman -S mosh
Sobre a família de distros Red Hat:
sudo dnf instalar mosh
Agora você pode se livrar de sessões SSH travadas
Sessões SSH sem resposta podem ser frustrantes, mas você pode se livrar delas com uma sequência de escape ou o comando kill. Mosh é uma substituição ainda melhor que manterá sua conexão ativa durante quedas de conexão e hibernações do sistema.
Apoie o nosso trabalho ❤️
Se você gostou deste artigo, considere deixar uma gorjeta para nos ajudar a continuar publicando conteúdo de qualidade.




















