Как поддерживать SSH-соединения "живыми"

Если вы регулярно пользуетесь SSH, вы, вероятно, заметили, что он иногда «отключается сам». Чтобы исправить это, вам просто нужно «немного испачкать» руки и изменить некоторые файлы конфигурации.


Для этого необходимо изменить значения, присвоенные 2 переменным ServerAliveCountMax и ServerAliveInterval.

ServerAliveCountMax устанавливает количество сообщений «сервер активен», которые могут быть отправлены без получения ssh ответа от сервера. Этот тип сообщения важен для того, чтобы узнать, активно ли соединение (возможно, сервер "отключился" и т. Д.).

ServerAliveInterval устанавливает интервал (в секундах), после которого, в случае отсутствия ответа от сервера, ssh повторно отправит сообщение с запросом ответа.

На клиенте

Чтобы изменения вступили в силу для всех пользователей, необходимо изменить файл.  / И т.д. / SSH / ssh_config. С другой стороны, если вы хотите, чтобы изменения вступили в силу только для вашего пользователя, измените файл ~ / .ssh / конфигурации.

Добавьте в файл конфигурации SSH следующее:

Хост *
    ServerAliveInterval 300
    СерверАливекаунтМакс 3

На сервере

Чтобы сервер поддерживал соединения со всеми клиентами, добавьте в файл следующее: / И т.д. / SSH / sshd_config:

ServerAliveInterval 300
СерверАливекаунтМакс 3

Эта конфигурация заставляет клиент / сервер отправлять сообщение контрагенту каждые 300 секунд (5 минут) и отказываться от него при третьей возможности, если он не получил никакого ответа.


Добавить в качестве предпочтительного источника