Каков неактивный тайм-аут по умолчанию для OpenSSH?

Если iptables активен (т.е. брандмауэр Linux), то он мог бы быть настроен для не разрешения этого.

25
15.08.2014, 17:07
5 ответов

Прокомментированные строки в sshd_config обычно отображают значения по умолчанию. Это касается всех строк вашего вопроса. Вы можете проверить это на странице руководства sshd_config . Вот соответствующие фрагменты:

TCPKeepAlive

      Определяет, должна ли система отправлять сообщения поддержки активности TCP на другую сторону. Если они будут отправлены, смерть подключение или сбой одной из машин будет правильно замечен. Однако это означает, что соединения умрут. если маршрут временно недоступен, и некоторых это раздражает. С другой стороны, если пакеты поддержки активности TCP не отправлено, сеансы могут зависать на сервере на неопределенное время, оставляя «призрачных» пользователей и потребляя ресурсы сервера.

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

      Чтобы отключить сообщения поддержки активности TCP, необходимо установить значение «нет».

      Этот параметр раньше назывался KeepAlive .

ClientAliveCountMax

      Устанавливает количество живых сообщений клиента (см. Ниже).который может быть отправлен без получения sshd (8) сообщений обратно от клиента. Если этот порог будет достигнут во время отправки сообщений об активности клиента, sshd отключит клиент, завершающий сеанс. Важно отметить, что использование живых сообщений клиента сильно отличается. из TCPKeepAlive (внизу) (вверху). Живые сообщения клиента отправляются через зашифрованный канал и поэтому не будут быть подделкой. Параметр TCP keepalive, включенный TCPKeepAlive , можно подделать. Механизм работы клиента - это ценно, когда клиент или сервер зависят от информации о том, когда соединение стало неактивным.

      Значение по умолчанию - 3. Если ClientAliveInterval (см. Ниже) установлено на 15, а ClientAliveCountMax остается в по умолчанию неотвечающие клиенты SSH будут отключены примерно через 45 секунд. Эта опция применима только к версии протокола 2.

ClientAliveInterval

      Устанавливает интервал тайм-аута в секундах, после которого, если от клиента не было получено никаких данных, sshd (8) отправит сообщение через зашифрованный канал для запроса ответа от клиента. По умолчанию 0, что означает эти сообщения не будут отправлены клиенту. Эта опция применима только к версии протокола 2.
23
27.01.2020, 19:40

Вы можете настроить SSH keepalive для клиентской или серверной стороны:

Клиентская сторона

Файл: /etc/ssh/ssh_config

Содержание:

Host *
ServerAliveInterval XX
ServerAliveCountMax YY

Серверная сторона

Файл: /etc/ssh/sshd_config

Содержание:

ClientAliveInterval XX
ClientAliveCountMax YY

Извлечено из: http://www.sysadmit.com/2016/02/linux-y-vmware-ssh-evitar-desconexion. html

9
27.01.2020, 19:40

Если вы хотите, чтобы тайм-аут составлял 10 секунд для всех, выполните следующие действия для конфигурации сервера ( sshd_config):

ClientAliveInterval 10
ClientAliveCountMax 0

Если вы хотите, чтобы тайм-аут составлял 10 секунд для локальных клиентов, сделайте следующее для конфигурации клиента (ssh_config):

ServerAliveInterval 10
ServerAliveCountMax 0

Если параметр AliveCountMax не равен нулю, он, вероятно, не сработает, потому что сервер ответит сбросом таймера (если нет проблем с подключением). В этом можно убедиться, запустив клиент ssh с включенной отладкой.

-2
27.01.2020, 19:40

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

Для удара:

TMOUT: If set to a value greater than zero, TMOUT is treated as the default timeout for the read builtin. The select command terminates if input does not arrive after TMOUT seconds when input is coming from a terminal. In an interactive shell, the value is interpreted as the number of seconds to wait for input after issuing the primary prompt. Bash terminates after waiting for that number of seconds if input does not arrive.

проверьте это, запустив TMOUT=10и подождите 10 секунд, чтобы закрыть соединение.

Для тсш:

The autologout shell variable can be set to log out or lock the shell after a given number of minutes of inactivity.

В tcsh синтаксис для установки времени ожидания на десять минут set autologout=10. Это не работает в оригинальном csh.

4
27.01.2020, 19:40

вы можете увеличить время сеанса при установлении соединения, например:

ssh -o ServerAliveInterval=60 -i Firstme.pem ec2-user@3.90.84.197

-o ServerAliveInterval=60здесь вы можете указать свое время в минутах, 60, 120,...

-1
01.09.2020, 05:16

Теги

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