При бездействии в терминале с открытой SSH-сессией – через некоторое время она разрывается с сообщением вида:
... root@dac754f67def:/etc/nginx# Write failed: Broken pipe 03:14:15 [username@hostname ~] $
Поддержкой SSH-сессии управляют два параметра:
ServerAliveInterval
– кол-во секунд, через которое клиент будет отправлять NULL-пакет для поддержки сессии;ClientAliveInterval
– наоборот, кол-во в секундах, через которое сервер будет отправлять пакет клиенту.
ServerAliveInterval
по умолчанию не установлен, и его значение == 0.
Что бы применить настройки ко всем хостам и всем локальным пользователям – изменения нужно вносить в файл /etc/sshd_config
(OS X, FreeBSD (?)) и /etc/ssh/sshd_config
(RHEL/CentOS).
Например:
$ sudo cat /etc/sshd_config | grep Alive #TCPKeepAlive yes #ClientAliveInterval 0 #ClientAliveCountMax 3 ClientAliveInterval 60
Либо – добавить в файл ~/.ssh/config
параметры для одного хоста и пользователя:
$ cat ~/.ssh/config Host venti HostName venti.setevoy.org.ua User setevoy ServerAliveInterval 60
Или – для всех хостов и всех пользователей:
Host * ServerAliveInterval 60
Подробнее:
$ man -k sshd_config sshd_config(5) - OpenSSH SSH daemon configuration file $ man 5 sshd_config
Либо тут: http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man5/sshd_config.5?query=sshd_config&sec=5