Intereting Posts
bash: выполнить команду в фоновом режиме и захватить pid Запустить терминал Gnome с уровнем оболочки 1? почему «ls * bash *» не отображает файл .bashrc HOWTO обнаруживает, когда JBOSS полностью запущен и готов принять развертывание? Что такое предупреждение MCH_SSKPD в dmesg? Как удалить zsh keybinding, если я не знаю, что он делает? Почему glibc имеет 2 версии одних и тех же функций? Are & and; унарные или двоичные операторы? Быстрое изменение размера изображения MediaTomb Как изменить местоположение журнала ssh из / var / log / secure в пользовательское местоположение в rhel 6? Безопасно ли прерывать процесс обновления с Fedora 22 до 23 с помощью dnf? Возьмите входные аргументы и передайте их на сегодняшний день Выберите имя файла с наивысшим номером версии Форматирование внешнего жесткого диска с помощью скрипта Bash Попытка найти все файлы в определенном каталоге, которые не указаны в других файлах

SSH: сброс соединения после простоя в течение некоторого времени

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

$ ssh root@host.com Last login: Tue Jan 3 03:09:39 2017 from c-99-99-99-99.hsd1.xx.comcast.net [root@ip-172-99-99-99 ~]# groups root bin daemon sys adm disk wheel [root@ip-172-99-99-99 ~]# users root root [root@ip-172-99-99-99 ~]# less /etc/passwd [root@ip-172-99-99-99 ~]# Connection reset by 52.99.99.99 port 22 

Пульт дистанционного управления – CentOS на Amazon (AWS), а локальный – Cygwin.

Поскольку ваш последний логин был из comcast.net, я предполагаю, что вы подключаетесь из home системы, где вы находитесь за маршрутизатором, который выполняет NAT. Проблема, что система, выполняющая NAT, знает, когда соединение больше не требуется. Если соединение выполняется чисто, тогда нет никаких проблем, но если две машины просто перезагружаются, то в поле NAT нет сигнала, что это произошло. Поэтому в вашем типичном ящике NAT есть таймеры, которые говорят: «Если в течение часа нет трафика, тогда два конечных пункта явно не собираются отправлять что-либо еще» и поэтому перерабатывает ресурсы, которые NAT принимал.

Таким образом, нужно делать несколько потоков каждый раз. Самый простой способ предположить, что вы используете реализацию openssh на вашей машине cygwin, – это включить TCPKeepAlive. замещать

 ssh root@host.com 

с

 ssh -o TCPKeepAlive=true root@host.com 

Для долгосрочного использования вам лучше настроить файл ~/.ssh/config .

  host fred hostname host.com user root TCPKeepAlive=true 

и тогда вы сможете сказать только ssh fred для подключения к машине с необходимой опцией.

Как клиент ssh сконфигурируйте его ниже:

 Host * ServerAliveInterval 60 

sudo source ~/.ssh/config

Все удаленные хосты конфигурируют его ниже:

/etc/ssh/ssh_config

 ServerAliveInterval 60