Мои сеансы SSH умирают в случайное время - ответ прекратится, а через несколько секунд PuTTY выдаст сообщение с "Сервер неожиданно закрыл сетевое соединение."Кажется, это чаще всего происходит в режиме ожидания, но не всегда - он может даже умереть, когда я набираю vim или что-то в этом роде (очень неприятно!). Но это довольно часто - если мне очень повезет, он может выжить в течение нескольких часов, но если мне не повезет, он может умереть в течение нескольких секунд или минут после входа в систему.
В большинстве случаев я даже не использую Wi-Fi, а просто подключаю TCP-IP (с концентратором) к маршрутизатору №1, но проблема остается. Я предполагаю, что основная причина - икота в подключении моего интернет-провайдера (или что-то в здании), но я, вероятно, не могу решить эту проблему, поэтому я спрашиваю об этом на ServerFault, потому что я просто пытаюсь настроить SSH (или PuTTY или что-то еще), чтобы не прерывать сеанс так легко.
Я пробовал разные вещи, которые другие сочли полезными:
Установка соединения PuTTY -> «Секунды между сообщениями поддержки активности» для различных ненулевых значений (я не знаю, похож ли этот параметр на TCPKeepAlive или больше на ServerAliveInterval, но это единственный параметр, доступный в PuTTY)
Попытка заставить сервер выполнять эту работу, отключив поддержку активности PuTTY (0), а затем на сервере, включая это в sshd_config:
TCPKeepAlive no
ClientAliveInterval 60
ClientAliveCountMax 3000
Переход на статический IP-адрес для моего ПК (это было решение для этот вопрос на SuperUser.com)
Но он по-прежнему умирает во всех вариантах - сложно сказать, лучше ли один набор настроек, чем другой, но каждый из них даже сегодня вышел из строя менее чем за час. И эта проблема сохраняется в долгосрочной перспективе - я терпел ее в течение пары лет, когда управляю этим сервером (я в основном программист, поэтому я не трачу кучу времени в SSH, но когда Мне это действительно нужно, мне неприятно постоянно терять сеанс). Есть предположения?
Эта проблема возникает либо из-за нестабильного подключения к Интернету (что, по моему опыту, встречается все реже), либо из-за конфигурации на сервере. Мои связи обычно остаются открытыми> 8 часов.
Я бы предложил установить TCPKeepAlive
к yes
, поскольку это заставит sshd-сервер быть одноранговым узлом, поддерживающим соединение. Мне никогда не приходилось ничего менять в самой Putty.
Соответствующие части моего sshd_config:
TCPKeepAlive yes
ClientAliveInterval 60
ClientAliveCountMax 3
Позвольте мне знать, если это помогает.
Проблема вроде разрешилась сама собой - я пишу этот ответ, чтобы поделиться тем, что произошло, для тех, кто может прочитать его позже ...
В тот же период у меня были проблемы с моим сетевым принтером, который выдавал «ошибку сетевой платы» и мне приходилось перезапускать его почти ежедневно - я не связывал эти две проблемы, потому что они, казалось, возникали с разной частотой, и потому что драйвер принтера обвинял принтер, в то время как SSH обвинял сервер. Когда стало казаться, что количество ошибок принтера увеличивается, я решил, что машина умирает, и заменил ее (цветной лазер бизнес-уровня стоимостью несколько сотен долларов). Но у нового была такая же проблема! Именно тогда я понял, что причина не в принтере, и начал думать, что проблемы SSH (и прерывания соединения Skype) могут иметь одну и ту же причину. Я попытался заменить роутер, но безуспешно. Я исследовал некоторые другие вещи, но не пришел к выводам. Потом, мучаясь с этими вещами пару лет, мой муж заменил свой компьютер, и все проблемы внезапно исчезли! Очевидно, его компьютер каким-то образом мешал всему в локальной сети, но только определенные процессы проявляли очевидные симптомы, и только периодически. Моя точка зрения: если кто-то найдет эту ветку, у которой есть аналогичная проблема, проверьте устройства в вашей локальной сети, даже те, которые кажутся исправными.