Как выйти из telnet linux

Обновлено: 21.11.2024

Подобно тому, как ftp позволяет пользователю передавать файлы через Интернет, telnet позволяет пользователям входить в систему и работать на удаленных компьютерах, как если бы они находились один из его терминалов. Насколько полезен этот удаленный вход в систему, зависит от того, насколько хорошо подключены машины и насколько хорошо ваш терминал распознается чужой машиной. По мере увеличения расстояния между машинами и количества сетей, которые должны быть соединены между собой (количество прыжков), время отклика между вводом символа пользователем и ответом на него удаленной машины увеличивается. Вы можете измерить это время приема-передачи с помощью команды ping, как обсуждалось в главе 2. Если время проверки связи превышает 500 миллисекунд, удаленная машина будет казаться не отвечающей, и вам будет трудно работать продуктивно. Медленные соединения являются обычным явлением при использовании машин на удаленных разных сайтах. Если вы относитесь к типу пациентов, ваш сеанс telnet можно будет использовать, но редактирование может быть затруднено.

Telnet имеет очень мало опций и прост в использовании. Как и ftp, вы просто указываете имя машины, к которой хотите подключиться, как вариант:

После того, как мы получим приглашение login:, вход будет таким же, как и для любого другого терминала. Telnet автоматически попытается установить для вас вашу переменную TERM, чтобы чужая машина знала тип вашего терминала, но, тем не менее, вам, возможно, придется исправить его, если удаленная машина не знает об имени, от имени которого она была отправлена. тип вашего терминала.

Чтобы завершить сеанс telnet, выйдите из системы на удаленном компьютере. Если соединение зависло, то есть вы перестали получать ответ, вы не сможете выйти из системы, поэтому вам следует использовать escape-символ telnet, чтобы получить приглашение telnet, а затем выйти из telnet. сессия. Экранирующий символ telnet может быть ^] или ^t. Вы также получите приглашение telnet, если telnet не распознает используемое вами удаленное имя хоста. В этом случае вы не подключены к чужой машине, а просто используете telnet. Вы можете закрыть telnet или приказать telnet открыть другую машину.

Мы все были там, верно? Вы что-то отлаживаете, пытаетесь через telnet проверить, открыт ли порт, и вот вы застряли в сеансе telnet.

И ответ кажется таким очевидным. Он смотрит нам прямо в лицо!

Экранирующий символ — '^]'.

Хорошо! Есть escape-последовательность. Это похоже на одну из тех текстовых приключенческих игр. Я могу победить это!

Итак, вы аккуратно копируете/вставляете текст ^], показанный вверху. Каретка, а затем закрывающая квадратная скобка. Это было несложно. Но почему это не работает?

Оказывается, знак ^ — это символ. Он представляет собой кнопку CTRL на клавиатуре. Мне нужно нажать комбинацию клавиш.

Именно здесь текстовое приключение поднимает уровень сложности намного вверх. На моей клавиатуре нет знака ]. 😱

Однако у него есть множество непонятных маркеров. Что это за § под цифрой 6? И как часто вам нужен ù ? Очевидно, что одной из них должна была быть кнопка ]!

Но не бойтесь, есть скрытые комбинации клавиш. На Mac я могу набрать OPTION + SHIFT + ° и получить ] .

Поэтому волшебное заклинание для выхода из сеанса telnet должно быть CMD + OPTION + SHIFT + ° . Это четыре (4) клавиши одновременно. Хорошо, что нам подарили 5 пальцев! Что-то мне подсказывает, что для финального босса в этой игре потребуется 5 комбо.

Это система Unix. Я знаю это.

Держу пари, эта девушка из Парка Юрского периода знает, как выйти из сеанса telnet. Я управляю серверами Linux всего 15 лет, что я знаю?

Хорошо, Маттиас, подумай. Чего тебе не хватает в этой игре? Вы играете в нее в Бельгии, но, вероятно, ее разработал кто-то из США. Или Швеция.

Как выглядят эти клавиатуры?

Ага, у них есть специальная клавиша для символа ]. Избалованные дети.

Я выиграл! Я прошел финальную игру! 🎉

Оказывается, волшебная комбинация клавиш для выхода из сеанса telnet — это CMD + эта странная клавиша на 2 позиции справа от P . Если только вы не на немецкой клавиатуре. Тогда это одна позиция справа от P, а не две. Потому что очевидно.

★☆☆☆☆ — Паршивая текстовая приключенческая игра, не работает.

Чит-коды для победы в игре с выходом из сеанса Telnet

В большинстве текстовых приключенческих игр есть чит-коды. Я предоставлю то же самое для текстового приключения как выйти из сеанса telnet. Если вы застряли и хотите выйти, но у вас нет ] на клавиатуре, попробуйте один из них.

  • Голландский, бельгийский: ctrl + $
  • Французский: ctrl + 6
  • Финский, шведский, норвежский, датский: ctrl + å
  • Швейцарский: ctrl + ¨
  • Немецкий: ctrl + ü
  • Венгерский: ctrl + 5
  • Португальский: ctrl + ´
  • Канадский французский: ctrl + ç

Или приобретите клавиатуру с отдельной кнопкой.

Создайте свою собственную текстовую приключенческую telnet-игру!

Вы можете создавать свои собственные уровни telnet-игры. Telnet позволяет вам установить специальный escape-символ с флагом -e.

Это было бы особенно дьявольски, если бы вы, скажем, создали общесистемный псевдоним для telnet на всех своих серверах, чтобы связываться с вашими коллегами.

С помощью параметра -e вы можете задать нормальное escape-значение. Или вы можете попытаться сделать комбинацию еще хуже, используя псевдоним и перевернув квадратную скобку.

Я не говорю, что сделал бы это.

Игра в текстовую приключенческую игру

Если вы хотите сыграть в текстовое приключение, подключитесь через telnet к известному серверу имен. Они отвечают на порт 53 через UDP и TCP (для больших ответов DNS). В зависимости от используемой версии сервера имен они не сразу закрывают соединение, если вы отправляете ему мусорные входные данные.

Когда telnet какой-либо удаленный хост на указанном порту, после установления соединения, иногда нажатие ctrl+] не завершает работу. Есть ли какая-либо команда, которая может выйти вместо того, чтобы просто закрыть окно командной строки? Спасибо.

РЕДАКТИРОВАТЬ: Но иногда даже нажимая ctrl + ] , командная строка telnet не отображается, все еще застревает на пустом экране.

10 ответов 10

ctrl+] — управляющая последовательность, которая переводит telnet в командный режим, но не завершает сеанс. Если вы наберете close после нажатия ctrl+] , это «закроет» сеанс telnet.

на немецкой клавиатуре помогут следующие комбинации клавиш

Очень верно. На немецкой клавиатуре ctrl + ] не (!) работает. Я уверен, что для других раскладок клавиатуры нужны другие комбинации.

Вы можете использовать команду "quit" или, если хотите, сократить ее до "q".

У меня сработало решение

Тогда после того, когда вы будете в telnet типа приглашения

затем введите, чтобы выйти из telnet и вернуться к приглашению DOS

Я не очень хорошо знаком с telnet в Windows, но локальное поведение на устройствах, отличных от Windows, использующих telnet, представляет собой комбинацию состояния telnet и состояния терминала или окружающего окна и оболочки. (Если ваше удаленное соединение изменило режим эха, цвет шрифта, состояние прерывания и т. д., отключение telnet не повлияет на этот локальный статус.)

Имеет ли Windows аналогичный локальный статус? (Я предполагаю, что да, иначе большинство текстовых редакторов и многих других программ не будут работать в окнах telnet.)

Для Unix типичная последовательность была следующей: Ctrl ] → quit → return → stty sane → return, чтобы получить локальное управление и работоспособность tty. Что такое Windows-эквивалент "tty sane"?

ctrl+] переведет вас в командный режим, если клиент telnet уже подключен; оттуда вы можете ввести (q)uit для выхода.

Однако, если он подключается (или не подключается. ), процесс невозможно прервать, пока не истечет время ожидания.

Стандартный способ отключения линии в большинстве приложений — ~ + . , имейте в виду, что часто это приходится вводить вслепую, поэтому пару раз нажмите Enter: Enter + ~ + . .

Это также стандартный способ закрытия соединения в сеансе SSH, который перестал отвечать.

тильда, затем точка использовалась rlogin , а затем ssh (по крайней мере, в Unix); он не использовался и не используется telnet. (Некоторые программы, такие как ed , и некоторые протоколы, такие как SMTP и NNTP, используют строку, содержащую только точку, для завершения данных.) Большинство telnet-клиентов, включая Windows, по умолчанию используют ctrl-] , но можно установить любое другое значение. другое.

На французской клавиатуре мне нужно использовать ctrl+$

Затем 'выход' из полученного приглашения telnet.

может быть, с помощью ctrl + d ?

По крайней мере, в моей системе Linux единственным способом выхода из сеанса telnet является использование следующих клавиш (одновременное нажатие трех клавиш: Ctrl, AltGr,+, после чего появляется следующее приглашение: telnet> Теперь нажмите клавишу q и сеанс telnet будет прерван.

Очень активный вопрос. Заработайте 10 репутации (не считая бонуса ассоциации), чтобы ответить на этот вопрос. Требование к репутации помогает защитить этот вопрос от спама и отсутствия ответа.

Не тот ответ, который вы ищете? Просмотрите другие вопросы с тегами windows telnet или задайте свой вопрос.

Связанные

Горячие вопросы о сети

Чтобы подписаться на этот RSS-канал, скопируйте и вставьте этот URL-адрес в программу для чтения RSS.

дизайн сайта / логотип © 2022 Stack Exchange Inc; вклады пользователей под лицензией cc by-sa. версия 2022.3.21.41727

Программа telnet представляет собой пользовательский интерфейс для протокола TELNET.

Описание

Команда telnet используется для интерактивной связи с другим хостом по протоколу TELNET. Он запускается в командном режиме, где печатает командную строку telnet ("telnet>").

Если telnet вызывается с аргументом host, он неявно выполняет команду открытия (подробности см. в разделе "Команды" ниже).

Синтаксис

Параметры

Протокол

После открытия соединения telnet пытается включить параметр TELNET LINEMODE. Если это не удается, то telnet вернется к одному из двух режимов ввода: "посимвольный" или "старый построчный" в зависимости от того, что поддерживает удаленная система.

Если включен режим LINEMODE, обработка символов выполняется в локальной системе под управлением удаленной системы. Когда редактирование ввода или эхо символов необходимо отключить, удаленная система передаст эту информацию. Удаленная система также передает изменения любых специальных символов, происходящих в удаленной системе, чтобы они могли повлиять на локальную систему.

В режиме "символ за раз" большая часть набранного текста немедленно отправляется на удаленный хост для обработки.

В «старом построчном» режиме весь текст воспроизводится локально, и (обычно) на удаленный хост отправляются только завершенные строки. «Символ локального эха» (первоначально «^E») может использоваться для включения и выключения локального эха (в основном это используется для ввода паролей без повторения пароля).

Если включен параметр LINEMODE или если переключатель localchars установлен в значение TRUE (по умолчанию для "старой строки за строкой"; см. ниже), пользовательские символы выхода, ввода и сброса перехватываются локально и отправляются по протоколу TELNET. последовательности на удаленную сторону. Если LINEMODE когда-либо был включен, то susp и eof пользователя также отправляются как последовательности протокола TELNET, а quit отправляется как TELNET ABORT вместо BREAK. Существуют опции (см. переключение автосброса и переключение автосинхронизации ниже), которые заставляют это действие сбрасывать последующий вывод на терминал (пока удаленный хост не подтвердит последовательность TELNET) и сбрасывать предыдущий ввод терминала (в случае quit и intr).< /p>

Команды

Доступны следующие команды telnet. Уникальные префиксы понимаются как сокращения.

Окружающая среда

telnet использует как минимум переменные среды HOME, SHELL, DISPLAY и TERM. Другие переменные среды могут быть переданы другой стороне с помощью параметра TELNET ENVIRON.

Файлы

/etc/telnetrc глобальные значения запуска telnet
~/.telnetrc< /td> настраиваемые пользователем значения запуска telnet

Примеры

Открывает локальное приглашение telnet>, где вы можете ввести любую из перечисленных выше команд. Например, введя в командной строке следующую команду:

Связанные команды

rlogin — начать сеанс в удаленной системе.
ssh — безопасный вход в удаленную систему.

Читайте также: