SSH congelando com ControlPersist em

6

Eu recentemente habilitei ControlMaster e ControlPersist no SSH para que ele reutilize e multiplique as conexões para velocidade. A configuração é:

ControlMaster auto
ControlPath /tmp/ssh_mux_%h_%p_%r
ControlPersist 4h

Se eu desativar ControlPersist , tudo estará bem. Com isso on , a primeira conexão git / hg sempre congelará. O SSHing normalmente (em um shell) funciona bem, nunca pela primeira vez, mas o git / hg congela. Se eu pará-lo com ctrl + C e tente novamente, ele usará a conexão já estabelecida para o multiplex e será rápido, mas não será feito da primeira vez. Ativar LogLevel até 11 me dá:

remote: debug2: fd 4 setting O_NONBLOCK
remote: debug1: forking to background
remote: debug1: Entering interactive session.
remote: debug2: set_control_persist_exit_time: schedule exit in 14400 seconds
remote: debug1: multiplexing control connection
remote: debug2: fd 5 setting O_NONBLOCK

ponto em que apenas congela e fica lá para sempre. O que há de errado?

    
por Stavros Korokithakis 20.09.2013 / 17:04

1 resposta

2

Estou vendo o mesmo comportamento, e acho que é devido a esse bug do OpenSSH: link (O ControlPersist faz com que o stderr seja deixado aberto até a conexão mestre expirar)

Espero que isso seja consertado eventualmente.

    
por 01.10.2014 / 19:34