stringtranslate.com

Телнет

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

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

Компоненты

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

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

Протокол Telnet

История

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

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

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

Расширения

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

Служба Telnet

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

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

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

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

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

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

Использует

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

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

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

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

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

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

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

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

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

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

Технические подробности

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

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

Команды Telnet

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

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

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

Параметры Telnet

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

Telnet-клиенты

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

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

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

Ссылки

  1. ^ Крокер, Стивен Д.; Хефнер, Джон Ф.; Меткалф, Роберт М.; Постел, Джонатан Б. (1971). "Функционально-ориентированные протоколы для компьютерной сети ARPA". Труды 16-18 ноября 1971 г., осенняя совместная компьютерная конференция - AFIPS '71 (осень) . Ассоциация вычислительной техники. стр. 271–279. doi :10.1145/1478873.1478908. ISBN 9781450379090.
  2. ^ abcd Валенчич, Д.; Мательян, В. (2019). «Внедрение протокола NETCONF». 2019 42-я Международная конвенция по информационным и коммуникационным технологиям, электронике и микроэлектронике (MIPRO) . стр. 421–430. doi :10.23919/MIPRO.2019.8756925. ISBN 978-953-233-098-4. S2CID  195883872.
  3. ^ abcdefg Постел, Дж.; Рейнольдс, Дж. К. (1983). "Спецификация протокола Telnet". Сетевая рабочая группа . doi : 10.17487/RFC0854 . ISSN  2070-1721. RFC 854.
  4. ^ Уин, Эндрю (2011). Точка-тире в Dot.Com: как современные телекоммуникации эволюционировали от телеграфа до Интернета . Springer. стр. 132. ISBN 9781441967596.
  5. ^ Майнел, Кристоф; Сак, Харальд (2013). Межсетевое взаимодействие: технологические основы и приложения . X.media.publishing. стр. 57. ISBN 978-3642353918.
  6. ^ ab Daş, Resul; Karabade, Abubakar; Tuna, Gurkan (2015). «Распространенные типы сетевых атак и механизмы защиты». 2015 23-я конференция по обработке сигналов и коммуникационным приложениям (SIU) . стр. 2658–2661. doi :10.1109/SIU.2015.7130435. ISBN 978-1-4673-7386-9. S2CID  11256038.
  7. ^ Тодоров, Добромир (2007). Механика идентификации и аутентификации пользователя: основы управления идентификацией. Бока-Ратон: Auerbach Publications. ISBN 978-1-4200-5220-6. OCLC  263353270.
  8. ^ ab Mahmood, HB (2003). "Протокол безопасности транспортного уровня в Telnet". 9-я Азиатско-Тихоокеанская конференция по коммуникациям (IEEE Cat. No.03EX732) . Том 3. стр. 1033–1037 Том 3. doi :10.1109/APCC.2003.1274255. ISBN 0-7803-8114-9. S2CID  56798078.
  9. ^ "Реестр имен служб и номеров портов транспортных протоколов". www.iana.org . Получено 12.01.2023 .
  10. ^ abcd Шриниваса, Шреяс; Педерсен, Йенс Майруп; Василоманолакис, Эммануил (2021-11-02). «Открыт для найма». Труды 21-й конференции ACM по измерению Интернета . IMC '21. Нью-Йорк, штат Нью-Йорк, США: Ассоциация вычислительной техники. стр. 195–215. doi :10.1145/3487552.3487833. ISBN 978-1-4503-9129-0. S2CID  240357287.
  11. ^ Постел, Дж. (1981). "План перехода NCP/TCP". Сетевая рабочая группа . doi : 10.17487/RFC0801 . ISSN  2070-1721. RFC 801.
  12. Протокол Telnet. 3 апреля 1972 г. doi : 10.17487/RFC0318 . RFC 318.
  13. ^ Бруен, Гарт О. (2015). WHOIS управляет Интернетом: протокол, политика и конфиденциальность (1-е изд.). Wiley. стр. 25. ISBN 9781118679555.
  14. ^ Дж. Уайт (9 августа 1971 г.). Пользователь TELNET — Описание первоначальной реализации. Лаборатория компьютерных исследований, Калифорнийский университет в Санта-Барбаре. doi : 10.17487/RFC0206 . RFC 206.
  15. ^ Спецификация протокола TELNET. 1 мая 1973 г. doi : 10.17487/RFC0495 . RFC 495.
  16. ^ ab Шимонски, Роберт Дж.; Итон, Уолли; Хан, Умер; Гордиенко, Юрий (2002-01-01), Шимонски, Роберт Дж.; Итон, Уолли; Хан, Умер; Гордиенко, Юрий (ред.), "Глава 11 - Обнаружение и выполнение нарушений безопасности с помощью Sniffer Pro", Справочник по оптимизации и устранению неполадок в сети Sniffer Pro , Берлингтон: Syngress, стр. 513–565, doi :10.1016/B978-193183657-9/50015-0, ISBN 978-1-931836-57-9, получено 2023-01-12
  17. ^ abcd Самтани, Сагар; Ю, Шуо; Чжу, Хонги; Паттон, Марк; Чен, Синьчунь (2016). «Идентификация уязвимостей SCADA с использованием пассивных и активных методов оценки уязвимостей». Конференция IEEE по разведке и информатике безопасности (ISI) 2016 г. стр. 25–30. doi :10.1109/ISI.2016.7745438. ISBN 978-1-5090-3865-7. S2CID  11741873.
  18. ^ Кирк, Джереми (2007-02-12). «Уязвимость нулевого дня в Solaris позволяет проводить удаленные атаки». Network World . Получено 2023-01-12 .
  19. ^ "Порты TCP/IP, необходимые для доступа IBM i и связанных функций". Служба поддержки IBM. Архивировано из оригинала 2016-09-18 . Получено 2016-09-07 .
  20. ^ Тодоров, Добромир (2007). Механика идентификации и аутентификации пользователя: основы управления идентификацией. Бока-Ратон: Auerbach Publications. ISBN 978-1-4200-5220-6. OCLC  263353270.
  21. ^ Poulsen, Kevin (2 апреля 2007 г.). "Telnet, dead at 35...RIP". Wired . стр. 24. Архивировано из оригинала 21 декабря 2016 г. Получено 14 июня 2017 г.
  22. ^ "SysAdmin MD". www.sysadmin.md . Получено 2023-01-12 .
  23. ^ Ylonen, Tatu. "История протокола SSH". Домашняя страница SSH . SSH Communications Security, Inc. Архивировано из оригинала 25 июля 2018 г. Получено 14 июня 2017 г.
  24. ^ "Telnet | PDF | Сетевые стандарты | Стандарты Интернета". Scribd . Получено 2023-01-12 .
  25. ^ Параметр TELNET CHARSET. doi : 10.17487/RFC2066 . RFC 2066.
  26. ^ "Параметры Telnet". www.iana.org . Получено 2023-01-12 .
  27. ^ "The Lost Worlds of Telnet". The New Stack . 10 марта 2019 г. Получено 5 июня 2022 г.

Дальнейшее чтение

Стандарты Интернета

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

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

Другие RFC

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