Поиск по сайту:

Как увеличить время ожидания SSH-соединения в Linux


Тайм-ауты SSH в результате бездействия могут сильно раздражать. Обычно это вынуждает вас повторно инициировать соединение и начинать все заново.

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

Читайте по теме: Как защитить и усилить защиту сервера OpenSSH

Давайте теперь рассмотрим, как можно увеличить время ожидания SSH-соединения в Linux.

Увеличьте время ожидания SSH-соединения

На сервере перейдите к файлу конфигурации /etc/ssh/sshd_config.

sudo vi /etc/ssh/sshd_config

Прокрутите и найдите следующие параметры:


#ClientAliveInterval 
#ClientAliveCountMax

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

С другой стороны, параметр ClientAliveCountMax определяет количество активных сообщений клиента, которые отправляются без получения каких-либо сообщений от клиента. Если этот предел будет достигнут во время отправки сообщений, демон sshd прервет сеанс, фактически завершив сеанс ssh.

Значение таймаута определяется произведением вышеуказанных параметров, т.е.

Timeout value = ClientAliveInterval * ClientAliveCountMax

Например, предположим, что вы определили свои параметры, как показано:


ClientAliveInterval  1200
ClientAliveCountMax 3

Значение Тайм-аут будет равно 1200 секунд * 3=3600 секунд. Это эквивалентно 1 часу, что означает, что ваш сеанс ssh будет активен в течение времени простоя 1 час без прерывания.

Альтернативно вы можете добиться того же результата, указав только параметр ClientAliveInterval.


ClientAliveInterval  3600

После этого перезагрузите демон OpenSSH, чтобы изменения вступили в силу.

sudo systemctl reload sshd
Заключение

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