Найти тему
Alexander's Studio

SSH :: Time alive

Оглавление

Время жизни соединения SSH при бездействии.

Изображение от Kandinsky 2.1
Изображение от Kandinsky 2.1

По умолчанию SSH-соединение не будет разрываться, если на него не происходит никакой активности в течение определенного периода времени, обычно 15 минут. Однако вы можете изменить это значение, если хотите, чтобы соединение оставалось активным в течение более длительного периода времени.

Я покажу 2 способа.

Способ 1: sshd_config

Чтобы изменить время ожидания SSH-соединения, выполните следующие действия:

Откройте файл конфигурации SSH-сервера /etc/ssh/sshd_config в текстовом редакторе:

sudo nano /etc/ssh/sshd_config

Найдите строку ClientAliveInterval, которая определяет, как часто SSH-сервер будет отправлять проверочные сообщения клиенту, чтобы убедиться, что соединение все еще активно. По умолчанию это значение равно 300 секундам (5 минут). Если вы хотите, чтобы проверочные сообщения отправлялись чаще, вы можете уменьшить это значение. Например, если вы хотите, чтобы сообщения отправлялись каждые 2 минуты, измените строку на:

ClientAliveInterval 120

Найдите строку ClientAliveCountMax, которая определяет, сколько проверочных сообщений может быть отправлено без ответа от клиента, прежде чем сервер закроет соединение. По умолчанию это значение равно 3. Если вы хотите увеличить количество сообщений, которые могут быть отправлены без ответа, увеличьте это значение. Например, если вы хотите, чтобы соединение не разрывалось после 10 проверочных сообщений, измените строку на:

ClientAliveCountMax 10

Сохраните файл и закройте его.

Перезапустите SSH-сервер, чтобы изменения вступили в силу:

sudo systemctl restart sshd

После этого SSH-соединение будет оставаться активным в течение дольшего периода времени, если на него не происходит никакой активности.

Способ 2: команда

Если не нужно менять глобальные настройки, можно добавить ключи к команде:

ssh -o ServerAliveInterval=60 -o ServerAliveCountMax=5 user@host