Esse erro sangrento faz minha dor de cabeça ficar cada vez maior a cada dia. Eu nunca conheci uma mesma situação como esta.
Bem, depois que eu me autentiquei no SSH com sucesso, fazendo poucos animais, minha conexão SSH caiu de repente !!?
Aqui está a minha mensagem de erro: packet_write_wait: Connection to XXX.XX.XX.XXX: Broken pipe
Gostaria que minha mensagem de erro fosse assim: Write Failed: broken pipe
muito, acredite em mim!
Eu tentei muitas resoluções na Internet, como ServerAliveInterval, ServerAliveCountMax, ClientAlive ....
Alguém disse: Transforme seu TCPKeepAlive em não, acrescentou o ServerAlive bllah blah idiota. Eu fiz isso também, mas ainda o mesmo erro.
Não há sorte para mim até este momento.
Qualquer ajuda será apreciada.
Broken pipe
geralmente significa que houve uma desconexão da rede por algum motivo.Respostas:
Caros leitores de 2018 e posteriores,
Deixe-me mostrar um comentário de MelBurslan,
Então, basicamente, se você está tentando usar
ssh [email protected]
em uma VPN (ambiente corporativo). Então esse erro deve estar sempre com você.A única solução que encontrei até agora é o shell móvel . Obrigado quem o criou.
Você precisará instalar
mosh-server
no seu destino (o servidor que você deseja transferir) emosh-client
na sua máquina host.Ele se reconectará automaticamente quando seus pacotes forem perdidos, o que é muito legal e atende a todas as nossas necessidades, eu acho.
Ssh'ing feliz!
fonte
Descobri que era um problema de opção IPQoS na minha instalação do VMware Guest. Na VM, defino o valor ~ / .ssh / config para IPQoS a partir do padrão "IPQoS af21 cs1", sendo dados de baixa latência para o primeiro interativo e menor esforço para o não interativo. Definir um novo valor para af21 foi minha solução:
Funcionou para mim; caso contrário, sim, o MoSH também é funcionado, mas o mosh não manipula minha configuração de Proxy de uma maneira conveniente, por isso continuo com os comandos ProxyJump em
fonte
Primeiro, verifique se o seu problema não está relacionado a este .
Caso contrário, e o problema ainda está presente, continue a ler.
Também experimentei esse problema e passei alguns dias tentando identificá-lo.
Como especificado, jogar com os parâmetros SSH KeepAlive ou com os parâmetros TCP do kernel (TCPKeepAlive ativado / desativado) não resolve o problema.
Depois de jogar com drivers usb para ethernet e TCP dump, percebi que o problema era devido ao kernel 4.8. Troquei a fonte (lado de envio) para 4.4 LTS e o problema desapareceu (rsync, scp estavam funcionando muito bem novamente). O lado do destino pode permanecer em 4,8, se você quiser, no meu caso de uso isso estava funcionando (testado).
No lado técnico, podemos diminuir um pouco o problema graças ao despejo do wireshark abaixo que fiz. Podemos ver que o canal TCP do protocolo SSHv2 está sendo redefinido (o sinalizador RST do TCP está definido como 1), causando o cancelamento da conexão. Ainda não sei a causa do RST. Preciso fazer uma bissecção de 4.8.1 a 4.8.11 para isso.
Não estou dizendo que seu problema se deva especificamente ao kernel 4.8, mas wrt. Na data em que você postou sua pergunta / mensagem, você pode estar usando uma versão do kernel que era realmente de buggy.
Respondeu inicialmente no StackOverflow .
fonte
ssh -o IPQoS=throughput user@{ip}
fonte
Abra o arquivo ssh.config no servidor de destino com o comando abaixo:
Adicione as linhas abaixo no final desse arquivo
pressione Ctrl + oe digite.
Isso funcionou intensamente para mim. Eu estava na mesma situação. Tentei isso e aquilo, mas apenas siga estas etapas. Só isso. Espero que funcione para você também.
fonte