Предоставление клиентского доступа к их собственному набору походит на фундаментальное 'право'. Безопасность Колорадо должна быть соблюдающей и структурировала достаточно, что доступ стойки стойкой клиентами безопасен.
Если другие клиенты чувствуют, что они требуют большей безопасности, то они могут уйти и получить свою собственную клетку или комнату.
ОБНОВЛЕНИЕ: Поскольку фактический ответ видит ответ zero_r ниже
Это не ответ, а обходное решение. Экран Use.
Когда Вы сначала входите в систему, выполняете экран. Вы получаете другую оболочку, команды выполнения в этом. Если Вы разъединяетесь, экранный процесс поддерживает терминал так, чтобы Ваша оболочка и процессы, которые это выполняет, не падали. Когда Вы повторно подключаете, выполняете 'экран-r' для возобновления.
Существует набор больше к конфигурированию и использованию экрана, но вышеупомянутое должно обходное решение Ваша проблема.
Иногда я забывал выполнять экран также и потерю моей незаконченной работы. В этом случае, хотя мы не можем повторно прикрепить к поврежденной сессии SSH, повторно породив под управлением программу к новому терминалу и возобновив то, что Вы делали, все еще возможно благодаря reptyr
.
, После того, как случайно разъединено от сессии SSH, первая вещь сначала состоит в том, чтобы работать screen
, чтобы соединение не повреждается снова. Затем на новой сессии, выполненной ps aux | grep {The process to be resumed}
для получения PID. С PID Вы могли попробовать reptyr {PID}
или reptyr -T {PID}
(если существуют подпроцессы) продолжать работу.
Попытайтесь установить ClientAliveInterval (например, 60) и TCPKeepAlive (да или не) к соответствующим значениям на серверной стороне sshd.conf.
Это должно поддержать Вашу сессию, даже если соединение теряется в течение многих минут.
Как упомянуто выше, Экран GNU является способом пойти. Это позволит Вам иметь 'экранную сессию' на удаленном поле, что можно выполнить несколько команд в через несколько 'экранных окон'. Это просто отсоединится, если Ваше родительское соединение SSH умрет, поддерживая все подпроцессы в рабочем состоянии в нем живой и здоровый.
'man screen
'Ваш друг, как обычно, и пакет ОС нужно назвать'screen
'если это не установлено по умолчанию.
Основы:
Запустите экранную сессию (на Вашем удаленном хосте):
$ screen
Разъединитесь от своей экранной сессии: CTRL-A, d
Снова соединитесь со своей экранной сессией после вхождения в снова:
$ screen -d -r
Откройте другой экран 'окно': CTRL-A, c
Цикл через Вас открывает экранные окна: CTRL-A, пространство
Существует много интересного материала, который можно сделать с Экраном. Я использовал его больше 10 лет, и все еще узнаю новые возможности. Это - моя любимая утилита Unix.
autossh следит за Вашим соединением и если это понижается, это снова соединяется. Это более надежно, чем сообщения проверки активности. Если Вы соединитесь с экранной сессией, то Вы продолжите прямо от того, где Вы разъединились (см. rscreen
это идет с autossh),
Я установил бы и экран "Пуск" для решения проблемы. Экран позволит Вам снова соединиться с предыдущей экранной сессией.
Кроме этого, экран также позволяет нам, Вы действительно охлаждаетесь, вещам нравится, разделяет Ваш экран, просматривают консоль и т.д. Можно найти больше информации здесь и здесь.
Для начала, если Вы разъединяетесь, можно использовать
screen -ls
просмотреть Ваши сессии и
screen -r ${session}
снова соединяться с разъединенным.
Как другие указали, экран обычно является лучшим решением для этого, и это добавляет хост других полезных функций также.
Можно установить профиль на удаленной машине, чтобы автоматически запуститься и/или снова соединиться для экранирования на входе в систему, который сохраняет Вас забывающий к экрану "Пуск" одно время, Вам нужен он, потому что Вы переносите отбрасывание соединения.
См. http://tlug.dnho.net/?q=node/239 (или поисковый Google для многих других примеров dones немного отличающиеся пути).
В то время как экран сохранит Вашу сессию оболочки открытой на удаленном сервере, если Ваша ssh сессия отбросит, то это ничего не сделает о проблеме отбрасываемых соединений SSH. Как zero_r предполагает, попытайтесь настроить свое соединение SSH с содержанием alives и долгими тайм-аутами.
Я предлагаю, чтобы Вы разыскали причину потерянных пакетов, вызывающих проблемы, и зафиксировали это вместо того, чтобы работать вокруг этого.
более современная альтернатива screen, увы, недоступная для некоторых типов "виртуализации" (например, в cygwin вы можете иметь "screen", но не "tmux" из-за того, как он разработан) , но везде, где у вас есть возможность установить tmux, я настоятельно рекомендую использовать этот единственный экран.
Я не могу поверить, что никто не упомянул MOSH ;
Mosh - это отдельный протокол, который может подключаться к процессу входа в SSH, он поддерживает ваш сеанс после дней отключения, смены IP, больших задержек и так далее. Это объяснено на домашней странице лучше, чем я могу объяснить, поэтому я скопировал описание ниже. Мой опыт и советы таковы, что я использую его на своем мобильном телефоне Android, это спасает жизнь во время путешествий и использования SSH. То же самое и с моим ноутбуком, когда он привязан к мобильному телефону, например, в поезде. Я рекомендую скомпилировать из исходников, чтобы получить последнюю версию, версия репо для меня внутри Ubuntu имеет несколько недостатков, которые исправлены в последней версии (на момент написания).
Mosh (мобильная оболочка)
Приложение удаленного терминала, которое позволяет роуминг, поддерживает прерывистый возможность подключения и обеспечивает интеллектуальное локальное эхо и линейное редактирование пользовательские нажатия клавиш.
Mosh - это замена SSH. Он более надежный и отзывчивый, особенно через Wi-Fi, сотовую связь и междугородние соединения.
Mosh - бесплатное программное обеспечение, доступное для GNU / Linux, FreeBSD, Solaris, Mac OS X и Android.
Возможности с веб-сайта:
Изменить IP. Оставайтесь на связи : Мош автоматически перемещается при движении между подключениями к Интернету. Используйте Wi-Fi в поезде, Ethernet в отель и LTE на пляже: вы останетесь в системе. Большинство сетей программы теряют соединение после роуминга, включая SSH и Интернет такие приложения, как Gmail. Мош другой.
Делает для сладких снов : С Mosh вы можете перевести свой ноутбук в режим сна и разбудить его позже, сохраняя соединение целое. Если ваше интернет-соединение разорвется, Мош предупредит вас, но соединение возобновляется, когда восстанавливается сетевая служба.
Избавьтесь от задержки сети : SSH ожидает ответа от сервера, прежде чем показать вам ваш ввод. Это может сделать паршивый пользовательский интерфейс. Мош отличается: он мгновенно реагирует на набор текста, удаление и редактирование строки. Он делает это адаптивно и работает даже в полноэкранном режиме. такие программы, как emacs и vim. При плохом соединении невыполненные прогнозы подчеркнуты чтобы вас не обманули.
Никакого привилегированного кода. Нет демона : Вам не нужно быть суперпользователем, чтобы установить или запустить Mosh. Клиент и сервер исполняемые файлы запускаются обычным пользователем и действуют только в течение всего срока действия соединения.
Тот же метод входа в систему : Mosh не прослушивает сетевые порты и не аутентифицирует пользователей. Клиент mosh входит в систему сервер через SSH, и пользователи представляют те же учетные данные (например, пароль, открытый ключ) как прежде. Затем Мош запускает мош-сервер удаленно и подключается к нему по UDP.
Работает внутри вашего терминала, но лучше : Mosh - это программа командной строки, такая как ssh. Вы можете использовать его внутри xterm, gnome-terminal, urxvt, Terminal.app, iTerm, emacs, screen или tmux. Но мош был разработан с нуля и поддерживает только один набор символов: UTF-8. Исправлены ошибки Unicode в других терминалах и в SSH.
Control-C отлично работает :
В отличие от SSH, протокол mosh на основе UDP аккуратно обрабатывает потерю пакетов и устанавливает фрейм
скорость зависит от условий сети. Мош не заполняет сетевые буферы, поэтому Control-C
всегда работает, чтобы остановить неконтролируемый процесс.