it-roy-ru.com

Поддерживать сессию SSH

Я использую ssh -p8520 [email protected]_Host для входа на удаленный сервер.

Результат:

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

На консоли нет отчета об ошибке/тайм-ауте, но курсор больше не может двигаться.

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

Это довольно раздражает. Может кто-нибудь мне помочь?

184
Haifeng Zhang

sshd (сервер) закрывает соединение, если какое-то время ничего не слышит от клиента. Вы можете указать своему клиенту время от времени отправлять на сервер сигнал о наличии знака.

Конфигурация для этого находится в файле "~/.ssh/config", создайте его, если файл конфигурации не существует. Чтобы отправлять сигнал каждые четыре минуты (240 секунд) на удаленный хост, добавьте следующее в файл "~/.ssh/config".

Host remotehost:
    HostName remotehost.com
    ServerAliveInterval 240

Это то, что у меня есть в моем "~/.ssh/config":

Чтобы включить его для всех хостов, используйте:

Host *
ServerAliveInterval 240

Также обязательно запустите:

chmod 600 ~/.ssh/config

потому что файл конфигурации не должен быть общедоступным.

340
rockymonkey555

Я хотел одноразовое решение:

ssh -o ServerAliveInterval=60 [email protected]

Хранится в псевдониме:

alias sshprod='ssh -v -o ServerAliveInterval=60 [email protected]'

Теперь можно подключиться так:

[email protected]:~$ sshprod
108
Ryan

Для тех, кому интересно, @ edward-coast

Если вы хотите установить keep alive для сервера , добавьте это в /etc/ssh/sshd_config:

ClientAliveInterval 60
ClientAliveCountMax 2

ClientAliveInterval : устанавливает интервал ожидания в секундах, после которого, если от клиента не было получено никаких данных, sshd (8) отправит сообщение через зашифрованный канал. запросить ответ у клиента.

ClientAliveCountMax : Устанавливает количество живых сообщений клиента (см. Ниже), которые могут быть отправлены без sshd (8) получения каких-либо сообщений от клиента. Если этот порог достигнут во время отправки клиентских живых сообщений, sshd отключит клиента, завершив сеанс.

36
Jeff Davenport

PuTTY settings

FYI PuTTY Пользователи могут установить параметры здесь

14
Ruben Benjamin

Мы можем поддерживать наше соединение ssh, следуя глобальным конфигурациям

Добавьте следующую строку в файл /etc/ssh/ssh_config:

ServerAliveInterval 60
9
minhas23