Как поддержать соединение SSH?

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

Примечание: В моем .ssh/config файл, наверху я имею

Host *
ServerAliveInterval 3

но это, кажется, не работает.

9
задан 16 July 2017 в 09:11

3 ответа

Необходимо указать объем попыток и интервал отправки пакета к серверу. Можно вставить следующие строки Ваш .ssh/config файл:

Host examplehost
    Hostname examplehost.com
    ServerAliveInterval 180
    ServerAliveCountMax 2

Это будет отправлять пакет на сервер каждые 180 секунд (3 минуты), и он попробует два раза, прежде чем он закроет соединение после получения никакого ответа от клиента.

7
ответ дан 23 November 2019 в 04:58

На Linux и Apple Mac OS X операционных систем, ~/.ssh/config файл позволяет Вам указать много настроек SSH, включая тех, которые поддерживают соединение SSH. Чтобы сделать это, выполните эти шаги:

  1. Используйте свой предпочтительный текстовый редактор для открытия ~/.ssh/config файл на Вашем локальном компьютере.Примечание: Если .ssh каталог или файл конфигурации не существуют, создают их.

  2. Добавьте следующие строки к файлу конфигурации. Значение Хоста может быть любым именем, которое Вы хотите; это - просто маркировка для других настроек. Значение Имени хоста является удаленным хостом, к которому Вы хотите получить доступ; замените example.com своим доменным именем. Замените имя пользователя своим собственным именем пользователя хостинг-аккаунта:


    Host example
        Hostname example.com
        Port 7822
        User username
        ServerAliveInterval 240
        ServerAliveCountMax 2

С этой конфигурацией клиент SSH отправляет пакет на сервер каждые 240 секунд (4 минуты) для поддержания соединения. Если клиент не получает ответ после двух попыток (как указано установкой ServerAliveCountMax), она закрывает соединение.

Для получения дальнейшей информации обо всех доступных параметрах конфигурации SSH, ввести man ssh_config в командной строке.

  1. Сохраните изменения в файле конфигурации.

  2. Соединитесь со своей учетной записью с помощью SSH. Чтобы сделать это, просто введите ssh пример, где пример представляет Хост, оценивают Вас указанный на шаге 2.

Контролируйте соединение. Если это все еще отбрасывает, постепенно уменьшайтесь ServerAliveInterval при установке в файле конфигурации, пока соединение не стабильно.

Проверьте следующий URL на большее количество деталей https://www.a2hosting.com/kb/getting-started-guide/accessing-your-account/keeping-ssh-connections-alive

4
ответ дан 23 November 2019 в 04:58

Можно также добавить эти аргументы в команде ssh, как так...

ssh -o ServerAliveInterval=180 -o ServerAliveCountMax=2 $HOST
1
ответ дан 23 November 2019 в 04:58

Другие вопросы по тегам:

Похожие вопросы: