stringtranslate.com

Телнет

Telnet (сокращение от «телетайпная сеть») [1] [2] — протокол клиент-серверных приложений , который обеспечивает доступ к виртуальным терминалам удаленных систем в локальных сетях или в Интернете . [3] Это протокол двунаправленной 8-битной связи. Его основной целью было соединить терминальные устройства и терминально-ориентированные процессы. [4]

Telnet состоит из двух компонентов: (1) самого протокола, который определяет, как две стороны должны взаимодействовать, и (2) программного приложения, предоставляющего эту услугу. Пользовательские данные перемежаются внутриполосно с управляющей информацией Telnet в 8-битно- байтовом соединении для передачи данных по протоколу управления передачей (TCP). Telnet был разработан в 1969 году, начиная с RFC  15, расширен в RFC  855 и стандартизирован как Интернет-стандарт STD 8 Рабочей группы по проектированию Интернета (IETF) , один из первых Интернет-стандартов. [1] [2] Telnet передает всю информацию, включая имена пользователей и пароли, в виде открытого текста, поэтому его не рекомендуется использовать для приложений, чувствительных к безопасности, таких как удаленное управление маршрутизаторами. [3] [5] Использование Telnet для этой цели значительно уменьшилось в пользу SSH . [6] Были предложены некоторые расширения Telnet, обеспечивающие шифрование. [7]

Компоненты

Telnet состоит из двух компонентов: (1) самого протокола и (2) сервисного компонента. Протокол telnet — это протокол клиент-сервер , основанный на надежном транспорте , ориентированном на соединение . [3] Этот протокол используется для установления соединения с портом TCP (TCP) номер 23 или 2323, который прослушивает приложение сервера Telnet. [4] [8] [9] Протокол Telnet абстрагирует любой терминал как сетевой виртуальный терминал (NVT). Клиент должен имитировать NVT, используя коды NVT при обмене сообщениями с сервером.

Telnet появился раньше UDP/IP и первоначально работал на основе протокола управления сетью (NCP). [10] Службу telnet лучше всего понимать в контексте пользователя с простым терминалом, использующего локальную программу Telnet (известную как клиентская программа) для запуска сеанса входа в систему на удаленном компьютере, где потребности пользователя в связи обрабатываются с помощью Telnet. серверная программа.

Протокол Telnet

История

Несмотря на то, что Telnet был специальным протоколом, не имеющим официального определения до 5 марта 1973 года, [11] название фактически относилось к протоколу Teletype Over Network , поскольку RFC 206 (NIC 7176) в Telnet проясняет связь: [12]

Протокол TELNET основан на понятии виртуального телетайпа и использует 7-битный набор символов ASCII . Таким образом, основная функция пользовательского TELNET заключается в предоставлении средств, с помощью которых его пользователи могут «нажимать» на все клавиши этого виртуального телетайпа. [13]

По сути, он использовал 8-битный канал для обмена 7-битными данными ASCII. Любой байт с установленным старшим битом был специальным символом Telnet. 5 марта 1973 года стандарт протокола Telnet был определен в Калифорнийском университете в Лос-Анджелесе [14] с публикацией двух документов NIC: Спецификация протокола Telnet, NIC 15372, и Спецификации опций Telnet, NIC 15373.

Расширения

Многие расширения были созданы для Telnet из-за его архитектуры протокола с возможностью согласования опций. Некоторые из этих расширений были приняты в качестве стандартов Интернета , документы IETF от STD 27 до STD 32. Некоторые расширения получили широкое распространение, а другие являются предложенными стандартами в рамках стандартов IETF (см. ниже).

Служба Telnet

Служба Telnet — это приложение, предоставляющее услуги по протоколу Telnet. Большинство операционных систем предоставляют службу, которую можно установить или включить для предоставления клиентам услуг Telnet. [15]

Уязвимости безопасности

Telnet уязвим для сетевых кибератак , таких как перехват пакетов конфиденциальной информации, включая пароли и снятие отпечатков пальцев . [5] [16] Службы Telnet также могут быть использованы для утечки информации о сервере (например, имен хостов, IP-адресов и торговой марки) путем перехвата пакетов баннера. Затем эту информацию можно найти, чтобы определить, принимает ли служба Telnet соединение без аутентификации . Telnet также часто используется вредоносными программами из-за неправильной настройки. [9] Фактически, Telnet становится целью злоумышленников чаще, чем другие распространенные протоколы, особенно по сравнению с UPnP , CoAP , MQTT , AMQP и XMPP . Обычно целевыми устройствами являются устройства Интернета вещей , маршрутизаторы и модемы.

Институт SANS рекомендует прекратить использование Telnet для удаленного входа в систему при обычных обстоятельствах по следующим причинам: [17]

Расширения Telnet обеспечивают безопасность транспортного уровня (TLS) и аутентификацию простого уровня аутентификации и безопасности (SASL), которые решают вышеуказанные проблемы. [7] Однако большинство реализаций Telnet не поддерживают эти расширения; и они не устраняют другие уязвимости, такие как анализ информации баннера. [16]

Эмуляция рабочих станций IBM 5250 или 3270 поддерживается через специальные клиенты telnet, TN5250 / TN3270 и системы IBM i . Клиенты и серверы, предназначенные для передачи потоков данных IBM 5250 через Telnet, обычно поддерживают шифрование SSL , поскольку SSH не включает эмуляцию 5250. В IBM i (также известном как OS/400) порт 992 является портом по умолчанию для защищенного Telnet. [18]

Использование

BusyBox работает под управлением клиента Microsoft Telnet с маршрутизатора.

Историческое использование

Исторически Telnet обеспечивал доступ к интерфейсу командной строки на удаленном хосте. Однако из-за серьезных проблем с безопасностью при использовании Telnet в открытой сети, такой как Интернет, его использование для этой цели значительно уменьшилось в пользу SSH . [19] Использование Telnet для удаленного управления быстро сократилось, особенно в общедоступном Интернете , в пользу протокола Secure Shell (SSH). [3] [20] SSH обеспечивает большую часть функций telnet с добавлением надежного шифрования для предотвращения перехвата конфиденциальных данных, таких как пароли, и аутентификации с открытым ключом , чтобы гарантировать, что удаленный компьютер действительно является тем, за кого себя выдает. .

Современное использование

Клиент Telnet может использоваться при отладке сетевых служб, таких как SMTP , IRC , HTTP , FTP или POP3 , для подачи команд серверу и проверки ответов. [15] . Например, клиентские приложения Telnet могут установить интерактивный сеанс TCP с портом, отличным от порта сервера Telnet. Однако связь с такими портами не использует протокол Telnet, поскольку эти службы просто используют прозрачное 8-битное TCP-соединение, поскольку большинство элементов протокола telnet были разработаны с учетом идеи доступа к интерфейсу командной строки , и ни одна из этих опций или механизмы используются в большинстве других подключений к Интернету.

Например, клиент telnet из командной строки может отправить HTTP-запрос к веб-серверу через TCP-порт 80 следующим образом: [21]

$ telnet  www.example.com 80 GET /path/to/file.html Хост HTTP/1.1: www.example.com Соединение: закрыть 

В наши дни старый протокол используется лишь в редких случаях для доступа к устаревшему оборудованию десятилетней давности, которое не поддерживает более современные протоколы. [22] Например, большое количество промышленных и научных устройств имеют в качестве опции связи только Telnet. Некоторые из них оснащены только стандартным портом RS-232 и используют аппаратное устройство последовательного сервера для обеспечения преобразования между данными TCP/Telnet и последовательными данными RS-232. В таких случаях SSH невозможен, если интерфейсное устройство не может быть настроено для SSH (или не заменено устройством, поддерживающим SSH).

Telnet обычно используется радиолюбителями для предоставления общественной информации. [23]

Хотя это и не рекомендуется, исследователи безопасности подсчитали, что 7 096 465 устройств, подключенных к Интернету, продолжают использовать Telnet, однако часто оценивают гораздо меньше, поскольку большинство оценок сканируют только TCP-порт 23. [9]

Технические детали

Технические детали Telnet определены различными спецификациями, включая RFC 854. [4]

Коды управления USASCII

Телнет-команды

Команды Telnet состоят как минимум из двух байтов. [4] Первый байт — это escape-символ IAC (обычно байт 255), за которым следует байт-код данной команды:

Интерпретировать как команду

Все октеты данных , кроме 0xff, передаются через Telnet как есть. (0xff или 255 в десятичном формате — это байт IAC (интерпретировать как команду), который сигнализирует о том, что следующий байт — это команда telnet. Команда для вставки 0xff в поток — это 0xff, поэтому 0xff необходимо экранировать, удваивая его при отправке данных. по протоколу Telnet.) [4]

Параметры Telnet

Telnet также имеет множество опций, которые должны поддерживать терминалы, реализующие Telnet.


Связанные RFC

Интернет-стандарты

Предлагаемые стандарты

Информационный/экспериментальный

Другие RFC

Telnet-клиенты

В популярной культуре

«Звездные войны: Эпизод IV – Новая надежда» 1977 года воссоздан в виде художественного фильма с текстом , передаваемого через Telnet. [26]

Смотрите также

Рекомендации

  1. ^ аб Уин, Эндрю (2011). Точка-тире к Dot.Com: как современные телекоммуникации превратились из телеграфа в Интернет . Спрингер. п. 132. ИСБН 9781441967596.
  2. ^ аб Мейнель, Кристоф; Сак, Харальд (2013). Межсетевое взаимодействие: технологические основы и приложения . Издательство X.media. п. 57. ИСБН 978-3642353918.
  3. ^ abcd Валенчич, Д.; Мательян, В. (2019). «Реализация протокола NETCONF». 2019 г. 42-я Международная конвенция по информационным и коммуникационным технологиям, электронике и микроэлектронике (МИПРО) . стр. 421–430. дои : 10.23919/МИПРО.2019.8756925. ISBN 978-953-233-098-4. S2CID  195883872.
  4. ^ abcdefg Постел, Дж.; Рейнольдс, Дж. К. (1983). «Спецификация протокола Telnet». Сетевая рабочая группа . дои : 10.17487/RFC0854 . ISSN  2070-1721.
  5. ^ аб Даш, Ресул; Карабаде, Абубакар; Тунец, Гуркан (2015). «Распространенные типы сетевых атак и механизмы защиты». 2015 23-я конференция по приложениям обработки сигналов и связи (SIU) . стр. 2658–2661. дои : 10.1109/SIU.2015.7130435. ISBN 978-1-4673-7386-9. S2CID  11256038.
  6. ^ Тодоров, Добромир (2007). Механика идентификации и аутентификации пользователей: основы управления идентификацией. Бока-Ратон: Публикации Ауэрбаха. ISBN 978-1-4200-5220-6. ОСЛК  263353270.
  7. ^ Аб Махмуд, HB (2003). «Протокол безопасности транспортного уровня в Telnet». 9-я Азиатско-Тихоокеанская конференция по коммуникациям (IEEE Cat. No.03EX732) . Том. 3. С. 1033–1037 Том 3. дои : 10.1109/APCC.2003.1274255. ISBN 0-7803-8114-9. S2CID  56798078.
  8. ^ «Реестр имен служб и номеров портов транспортного протокола» . www.iana.org . Проверено 12 января 2023 г.
  9. ^ abcd Шриниваса, Шрейас; Педерсен, Йенс Мирюп; Василоманолакис, Эммануил (2 ноября 2021 г.). «Открыт для проката». Материалы 21-й Интернет-конференции ACM по измерениям . ММК '21. Нью-Йорк, штат Нью-Йорк, США: Ассоциация вычислительной техники. стр. 195–215. дои : 10.1145/3487552.3487833. ISBN 978-1-4503-9129-0. S2CID  240357287.
  10. ^ Постел, Дж. (1981). «План перехода NCP/TCP». Сетевая рабочая группа . doi : 10.17487/RFC0801. ISSN  2070-1721.
  11. ^ RFC 318 — документация по старому специальному протоколу telnet.
  12. ^ Брюен, Гарт О. (2015). WHOIS управляет Интернетом: протокол, политика и конфиденциальность (1-е изд.). Уайли. п. 25. ISBN 9781118679555.
  13. ^ RFC 206 (NIC 7176). Архивировано 15 марта 2017 г. в Wayback Machine , 9 августа 1971 г.; Лаборатория компьютерных исследований, UCSB; Дж. Уайт.
  14. ^ RFC 495 — анонс протокола Telnet
  15. ^ Аб Шимонски, Роберт Дж.; Итон, Уолли; Хан, Умер; Гордиенко, Юрий (01 января 2002 г.), Шимонски, Роберт Дж.; Итон, Уолли; Хан, Умер; Гордиенко, Юрий (ред.), «Глава 11. Обнаружение и устранение нарушений безопасности с помощью Sniffer Pro», Справочник по оптимизации сети и устранению неполадок Sniffer Pro , Burlington: Syngress, стр. 513–565, ISBN 978-1-931836-57-9, получено 12 января 2023 г.
  16. ^ abcd Самтани, Сагар; Ю, Шуо; Чжу, Хунъи; Паттон, Марк; Чен, Синьчунь (2016). «Выявление уязвимостей SCADA с использованием методов пассивной и активной оценки уязвимостей». Конференция IEEE 2016 по разведке и информатике безопасности (ISI) . стр. 25–30. дои : 10.1109/ISI.2016.7745438. ISBN 978-1-5090-3865-7. S2CID  11741873.
  17. ^ Кирк, Джереми (12 февраля 2007 г.). «Уязвимость нулевого дня в Solaris позволяет осуществлять удаленные атаки». Сетевой мир . Проверено 12 января 2023 г.
  18. ^ «Порты IBM TCP/IP, необходимые для доступа к Windows и связанным функциям - США» . www-01.ibm.com . IBM Technote. Архивировано из оригинала 18 сентября 2016 г. Проверено 7 сентября 2016 г.{{cite web}}: CS1 maint: others (link)
  19. ^ Тодоров, Добромир (2007). Механика идентификации и аутентификации пользователей: основы управления идентификацией. Бока-Ратон: Публикации Ауэрбаха. ISBN 978-1-4200-5220-6. ОСЛК  263353270.
  20. Поулсен, Кевин (2 апреля 2007 г.). «Телнет умер в 35...RIP». Проводной . п. 24. Архивировано из оригинала 21 декабря 2016 года . Проверено 14 июня 2017 г.
  21. ^ Ошибка цитирования: именованная ссылка :10была вызвана, но так и не определена (см. страницу справки ).
  22. ^ Илонен, Тату. «История протокола SSH». Домашняя страница SSH . SSH Communications Security, Inc. Архивировано из оригинала 25 июля 2018 года . Проверено 14 июня 2017 г.
  23. ^ Ошибка цитирования: именованная ссылка :9была вызвана, но так и не определена (см. страницу справки ).
  24. ^ RFC 2066 — опция TELNET CHARSET
  25. ^ «Параметры Telnet». www.iana.org . Проверено 12 января 2023 г.
  26. ^ «Затерянные миры Telnet». Новый стек . 10 марта 2019 года . Проверено 5 июня 2022 г.

Внешние ссылки