При бездействии в терминале с открытой 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