ServerAliveInterval : количество секунд, которое клиент будет ожидать перед отправкой нулевого пакета на сервер (чтобы поддерживать соединение в активном состоянии).
ClientAliveInterval : количество секунд, в течение которых сервер будет ожидать, прежде чем отправлять нулевой пакет клиенту (чтобы поддерживать соединение в активном состоянии).
Установка значения 0 (по умолчанию) отключит эти функции, поэтому ваше соединение может разорваться, если оно простаивает слишком долго.
ServerAliveInterval, по-видимому, является наиболее распространенной стратегией поддержания соединения. Чтобы предотвратить проблему со сломанным каналом, вот конфигурация ssh, которую я использую в своем файле .ssh / config:
Host myhostshortcut
HostName myhost.com
User barthelemy
ServerAliveInterval 60
ServerAliveCountMax 10
Вышеуказанная настройка будет работать следующим образом,
- Клиент будет бездействовать в течение 60 секунд (время ServerAliveInterval) и отправить серверу «пустой пакет» и ожидать ответа. Если ответ не приходит, он будет пытаться выполнить описанный выше процесс до 10 раз (ServerAliveCountMax) (600 секунд). Если сервер по-прежнему не отвечает, клиент отключает соединение ssh.
ClientAliveCountMax на стороне сервера также может помочь. Это предел того, как долго клиент может оставаться без ответа до отключения. Значение по умолчанию равно 3, как в трех ClientAliveInterval.