prevenir SSH Connection Timing Out / Broken Pipe

Este tutorial oferece uma solução muito boa se você usar conexões SSH e encontrar o erro: SSH Connection Timing Out / Broken Pipe. Erro dito de forma imprópria. É uma mensagem informando que a conexão entre seu computador e o servidor ao qual ele estava conectado foi encerrada Putty ou Terminal.

Tanto como um usuário de Windows bem como por Mac (nos últimos 10 anos) passei muito tempo em Conexões SSH para servidores web, servidores de e-mail, nuvem e outros pacotes de backup. Distribuição favorita de Linux é, sem dúvida CentOS.

Uma das coisas mais estressantes para fazer administratorii servidor é interromper conexões SSH. De repente, enquanto abotoava em Putty ou Terminal (na maioria das vezes é um problema de conexão local), ou após um tempo de "idle”- o período de tempo em que não interage com o servidor remoto por meio da sessão SSH.

Se você estiver usando o Mac e use o utilitário Terminal para a conexão remota via SSH, certamente após alguma inatividade você foi desconectado com a mensagem:client_loop: send disconnect: Broken pipe”. Eu dei a solução em o artigo aqui, em que eu disse que pode ser adicionado em "/etc/ssh/ssh_config" a linha:

Host *
ServerAliveInterval 120

A solução acima é válida para usuários de Mace, honestamente, ser as últimas atualizações de macOS Não retenho as alterações feitas no arquivo após a reinicializaçãossh_config", E o problema com a desconexão de uma sessão ociosa retorna.

Uma solução pela qual podemos evitar a desconexão de uma sessão SSH à distância definida por Terminal (macOS) ou massa de vidraceiro (Windows), é como além de “ServerAliveInterval”De nosso computador, para determinar o servidor remoto para se comunicar periodicamente com o aplicativo / cliente SSH.
É por isso que temos que colocar a diretiva "ClientAliveInterval"Em"sshd_config”No servidor ao qual estamos nos conectando.

prevenir SSH Connection Timing Out / Broken Pipe (ssh_config Dicas)

1. Conectamos ao servidor que queremos ativar e definimos um intervalo de tempo para "ClientAliveInternal". abrir SSH in Putty, Terminal ou outro utilitário semelhante e autenticamos com o usuário root.

ssh root@server.hostname

2. Execute a linha de comando para pesquisar no arquivo "sshd_config" se "ClientAliveInterval” está ativo e qual é o período de tempo definido.

sudo grep "ClientAliveInterval" /etc/ssh/sshd_config

Em nosso cenário"ClientAliveInterval” está desativado e o valor do intervalo de tempo é zero.

[root@buffy ~]# sudo grep "ClientAliveInterval" /etc/ssh/sshd_config
#ClientAliveInterval 0
[root@buffy ~]# 

A hashtag "#"Colocado na frente de uma linha, cancela-o. Ela está inativa.

3. Abrimos com o editor "nano"Ou"vim"Arquivo"sshd_config". Eu prefiro "nano".

sudo nano /etc/ssh/sshd_config

4. Exclua “#"Na frente da linha"ClientAliveInterval”E definir um número de segundos: 60, 120 ...

ClientAliveInterval 120
ClientAliveCountMax 10

5. Salve as alterações e reinicie o serviço "sshd".

sudo systemctl restart sshd

ClientAliveInterval : É o intervalo de tempo em segundos que o servidor envia um pacote de dados nulo ao cliente / aplicativo através do qual estamos conectados ao servidor. Esta prática manterá a conexão viva / ativa.

ClientAliveCountMax : Clientes SSH que não respondem em 10 ciclos de 120 segundos (definido pela "ClientAliveInterval") a conexão será interrompida. Ou seja, após 20 minutos em que o cliente SSH não respondeu a pacotes nulos enviados pelo servidor.

Com essas mudanças a conexão SSH será mais estável e permanecerá tão seguro.

Apaixonado por tecnologia, escrevo com prazer no StealthSettings.com desde 2006. Tenho uma ampla experiência em sistemas operacionais: macOS, Windows e Linux, assim como em linguagens de programação e plataformas de blogs (WordPress) e para lojas online (WooCommerce, Magento, PrestaShop).

Como » Linux » prevenir SSH Connection Timing Out / Broken Pipe
Deixe um comentário