Como evitar que o autossh fique preso de vez em quando? O

10

Estou usando autossh para construir um túnel ssh reverso, mas de vez em quando o túnel para de funcionar e preciso matar o autossh e reiniciá-lo novamente.

/etc/cron.d/autossh
@reboot autossh -f -nNT -R 3269:intranet.example.com:3269 public.example.com &

O autossh parece permanecer em um estado estranho, onde a porta encaminhada ainda está aberta, mas você não obtém resposta do outro lado. Reiniciando o autossh isso é resolvido.

Como posso evitar que esse problema ocorra?

    
por sorin 15.11.2012 / 10:22

1 resposta

2

Use o ServerAliveInterval (com um valor em segundos) para fazer com que o cliente ssh envie um pacote nulo (keepalive) pelo canal criptografado de vez em quando para detectar uma conexão quebrada:

/etc/cron.d/autossh
@reboot autossh -f -nNT -R 3269:intranet.example.com:3269 -o ServerAliveInterval=30 public.example.com &

Provavelmente, você também deve definir a configuração ClientAliveInterval correspondente em /etc/ssh/sshd_config em seu servidor para fazer com que o servidor também elimine conexões do cliente:

# Drop dead client connections after 10 minutes of inactivity
ClientAliveInterval 600
    
por Tyson 08.03.2017 / 14:36