Às vezes, recebo esse erro quando tento ssh para um host remoto:
mux_client_request_session: read from master failed: Broken pipe
Estou usando o Macbook Air OS X Lion com isso em ~ / .ssh / config:
ControlMaster auto
ControlPath /tmp/ssh_mux_%h_%p_%r
ControlPersist 4h
ForwardAgent yes
Host [ex]
HostName [example.com]
User [somedude]
O erro acima acontece quando eu faço:
ssh ex
O terminal trava por ~ 1 minuto e exibe:
mux_client_request_session: read from master failed: Broken pipe
[email protected]'s password:
Eu digito minha senha e está tudo bem. E se eu abrir outra guia Terminal, o compartilhamento de conexão também estará ok. Como posso consertar isso? Não é terrível, mas é irritante.
ssh
terminal
connection-sharing
macbook-air
David Xia
fonte
fonte
Respostas:
Você
ControlPersist
ativou. Meu palpite é que o seguinte acontece:ControlPersist
está habilitada, a sessão é mantida aberta para conexões futuras.ssh [email protected]
novamente, ele tenta reutilizar a conexão da etapa 2 e abre uma nova conexão após o tempo limite.Nenhuma opção separada para esse tempo limite está disponível, de acordo com
man ssh_config
. Para evitar isso, não useControlPersist
. Além disso, eu recomendo usar o login de chave pública, se possível. Você ainda pode ter uma senha para sua chave pública, mas a chave pública impede efetivamente a força bruta de sua senha na conexão SSH.Além disso, você não deve armazenar arquivos de controle em
/tmp
. Essas devem / devem ser protegidas e, por isso, por exemplo,~/.ssh/master/ssh_mux_%h_%p_%r
é uma localização muito melhor. Obviamente, se você é o único usuário do seu laptop (?), Esse não é um problema muito grande.fonte