Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Telnet - это прикладной протокол, используемый в Интернете или локальной сети для обеспечения двунаправленной интерактивной текстовой связи с использованием виртуального терминального соединения. Пользовательские данные перемежаются внутри полосы с управляющей информацией Telnet в 8-битном байтовом соединении для передачи данных по протоколу управления передачей (TCP).

Telnet был разработан в 1969 году, начиная с RFC 15 , расширен в RFC 855 и стандартизован как Internet Engineering Task Force (IETF) Internet Standard STD 8 , один из первых интернет-стандартов. Название расшифровывается как « tel etype net work». [1] [2]

Исторически Telnet предоставлял доступ к интерфейсу командной строки на удаленном хосте. Однако из-за серьезных проблем безопасности при использовании Telnet в открытой сети, такой как Интернет, его использование для этой цели значительно уменьшилось в пользу SSH .

Термин telnet также используется для обозначения программного обеспечения, реализующего клиентскую часть протокола. Клиентские приложения Telnet доступны практически для всех компьютерных платформ . Telnet также используется как глагол . Telnet означает установить соединение с использованием протокола Telnet либо с клиентом командной строки, либо с графическим интерфейсом. Например, общая директива может быть: « Для того, чтобы изменить пароль, Telnet на сервер, войдите в систему и запустить PASSWD . Команду » В большинстве случаев пользователь будет telnetting в Unix-подобных систем сервера или сетевого устройства ( например роутер).

История и стандарты [ править ]

Telnet является протоколом клиент-сервер , на основе надежного соединения-ориентированного транспорта. Обычно этот протокол используется для установления соединения с портом № 23 протокола управления передачей (TCP ), который прослушивает приложение сервера Telnet (telnetd). Telnet, однако, появился раньше TCP / IP и изначально запускался по протоколам Network Control Program (NCP).

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

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

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

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

Безопасность [ править ]

Когда Telnet был первоначально разработан в 1969 году, большинство пользователей сетевых компьютеров находились в компьютерных отделах академических институтов или в крупных частных и государственных исследовательских центрах. В этой среде безопасность не была настолько серьезной проблемой, как после резкого роста пропускной способности в 1990-х годах. Рост числа людей, имеющих доступ к Интернету, и, соответственно, числа людей, пытающихся взломать чужие серверы , сделали необходимыми зашифрованные альтернативы.

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

  • Telnet по умолчанию не шифрует никакие данные, передаваемые по соединению (включая пароли), поэтому часто возможно перехватить сообщения и использовать пароль позже в злонамеренных целях; любой, у кого есть доступ к маршрутизатору , коммутатору , концентратору или шлюзу, расположенному в сети между двумя хостами, где используется Telnet, может перехватывать проходящие пакеты и получать логин, пароль и все остальное, введенное анализатором пакетов .
  • Большинство реализаций Telnet не имеют аутентификации, которая гарантирует, что связь осуществляется между двумя желаемыми хостами и не будет перехвачена в середине .
  • За прошедшие годы в широко используемых демонах Telnet было обнаружено несколько уязвимостей .

Эти связанные с безопасностью недостатки привели к быстрому сокращению использования протокола Telnet, [7] особенно в общедоступном Интернете , в пользу протокола Secure Shell (SSH), впервые выпущенного в 1995 году. SSH практически заменил Telnet, и более старый В наши дни протокол используется только в редких случаях для доступа к устаревшему оборудованию, устаревшему десятилетиями, которое не поддерживает более современные протоколы. [8] SSH предоставляет большую часть функций telnet с добавлением надежного шифрования для предотвращения перехвата конфиденциальных данных, таких как пароли, и открытый ключ.проверка подлинности, чтобы убедиться, что удаленный компьютер действительно является тем, кем он себя называет. Как и в случае с другими ранними Интернет-протоколами, расширения протокола Telnet обеспечивают безопасность транспортного уровня (TLS) и аутентификацию на уровне простой аутентификации и безопасности (SASL), которые решают указанные выше проблемы. Однако большинство реализаций Telnet не поддерживают эти расширения; и было относительно мало интереса к их реализации, поскольку SSH подходит для большинства целей.

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

Telnet все еще используется любителями, особенно среди радиолюбителей . Протокол Winlink поддерживает пакетную радиосвязь через соединение Telnet.

Telnet 5250 [ править ]

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

Данные Telnet [ править ]

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

Некоторые используют клиентские приложения Telnet для установления интерактивного сеанса TCP с портом, отличным от порта сервера Telnet. Соединения с такими портами не используют IAC, и все октеты отправляются на сервер без интерпретации. Например, пользователь может сделать HTTP-запрос вручную, используя версию командной строки клиента telnet к веб-серверу через TCP-порт 80 следующим образом:

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

Существуют и другие терминальные клиенты TCP, такие как netcat или socat в UNIX и PuTTY в Windows, которые обрабатывают такие требования. Тем не менее, Telnet все еще можно использовать для отладки сетевых служб, таких как SMTP , IRC , HTTP , FTP или POP3 , для отправки команд серверу и проверки ответов.

Еще одно различие между Telnet и другими терминальными клиентами TCP заключается в том, что Telnet по умолчанию не является 8-битным . Можно согласовать 8-битный режим, но октеты с установленным старшим битом могут быть искажены до тех пор, пока этот режим не будет запрошен, поскольку 7-битный режим является режимом по умолчанию. 8-битный режим (так называемый двоичный вариант ) предназначен для передачи двоичных данных, а не символов ASCII. Стандарт предлагает интерпретацию кодов 0000–0176 как ASCII, но не предлагает никакого значения для октетов данных с высоким набором битов . Была попытка ввести переключаемую поддержку кодировки символов, подобную HTTP [10], но ничего не известно о ее реальной программной поддержке.

Связанные RFC [ править ]

Интернет-стандарты [ править ]

  • RFC 854 , спецификация протокола Telnet
  • RFC 855 , спецификации опции Telnet
  • RFC 856 , двоичная передача Telnet
  • RFC 857 , опция эха Telnet
  • RFC 858 , опция Telnet Suppress Go Ahead Option
  • RFC 859 , опция статуса Telnet
  • RFC 860 , опция метки времени Telnet
  • RFC 861 , расширенные параметры Telnet: параметр списка

Предлагаемые стандарты [ править ]

  • RFC 885 , опция окончания записи Telnet
  • RFC 1073 , параметр размера окна Telnet
  • RFC 1079 , опция скорости терминала Telnet
  • RFC 1091 , опция типа терминала Telnet
  • RFC 1096 , вариант расположения дисплея Telnet X
  • RFC 1123 , Требования к Интернет-хостам - Применение и поддержка
  • RFC 1184 , опция линейного режима Telnet
  • RFC 1372 , опция удаленного управления потоком через Telnet
  • RFC 1572 , опция среды Telnet
  • RFC 2941 , опция аутентификации Telnet
  • RFC 2942 , проверка подлинности Telnet: Kerberos версии 5
  • RFC 2943 , аутентификация TELNET с использованием DSA
  • RFC 2944 , аутентификация Telnet: SRP
  • RFC 2946 , опция шифрования данных Telnet
  • RFC 4248 , Схема URI Telnet

Информационное / экспериментальное [ править ]

  • RFC 1143 , Q-метод реализации согласования параметров TELNET
  • RFC 1571 , Проблемы взаимодействия опций среды Telnet

Другие RFC [ править ]

  • RFC 1041 , вариант режима Telnet 3270
  • RFC 1205 , интерфейс Telnet 5250
  • RFC 2217 , опция управления портом Telnet Com
  • RFC 4777 , Расширения Telnet IBM iSeries

Клиенты Telnet [ править ]

  • Командная строка PuTTY и plink - это бесплатный клиент SSH , Telnet, rlogin и TCP с открытым исходным кодом для Windows , Linux и Unix с открытым исходным кодом .
  • AbsoluteTelnet - это телнет-клиент для Windows . Он также поддерживает SSH и SFTP ,
  • RUMBA (эмулятор терминала)
  • Браузер режима строки, веб-браузер командной строки
  • NCSA Telnet
  • ТераТерм
  • SecureCRT от Van Dyke Software
  • ZOC Терминал
  • Терминальная программа SyncTERM BBS, поддерживающая Telnet, SSHv2, RLogin, Serial, Windows, * nix и платформы Mac OS X, X / Y / ZMODEM и различные эмуляции терминала BBS
  • Rtelnet - это клиентская версия Telnet SOCKS , обеспечивающая аналогичные функции telnet для тех хостов, которые находятся за межсетевым экраном и NAT .
  • Inetutils включает в себя клиент и сервер telnet и устанавливается по умолчанию во многих дистрибутивах GNU / Linux.
  • Утилита командной строки telnet.exe включена в стандартную установку многих версий Microsoft Windows.

См. Также [ править ]

  • Список эмуляторов терминала
  • Захват баннера
  • Виртуальный терминал
  • Обратный телнет
  • HyTelnet
  • Кермит
  • SSH

Ссылки [ править ]

  1. ^ Уин, Эндрю (2011). Dot-dash на Dot.Com: как современные телекоммуникации превратились из телеграфа в Интернет . Springer. п. 132. ISBN 9781441967596.
  2. ^ Майнель, Кристоф; Мешок, Харальд (2013). Межсетевое взаимодействие: технологические основы и приложения . X.media.publishing. п. 57. ISBN 3642353916.
  3. ^ RFC 318 - документация старого специального протокола telnet
  4. ^ Bruen, Гарт О. (2015). WHOIS под управлением Интернета: протокол, политика и конфиденциальность (1-е изд.). Вайли. п. 25. ISBN 9781118679555.
  5. RFC 206 (NIC 7176). Архивировано 15 марта2017 г. на Wayback Machine , 9 августа 1971 г .; Лаборатория компьютерных исследований, UCSB; Дж. Уайт.
  6. ^ RFC 495 - объявление протокола Telnet
  7. Поулсен, Кевин (2 апреля 2007 г.). "Telnet, мертв на 35 ... RIP" . Проводной . п. 24. Архивировано 21 декабря 2016 года . Проверено 14 июня 2017 года .
  8. ^ Илонен, Tatu. «История протокола SSH» . Домашняя страница SSH . SSH Communications Security, Inc. Архивировано 25 июля 2018 года . Проверено 14 июня 2017 года .
  9. ^ «Порты IBM TCP / IP, необходимые для доступа к Windows и связанным функциям - США» . www-01.ibm.com . IBM Technote. Архивировано 18 сентября 2016 года . Проверено 7 сентября 2016 .CS1 maint: другие ( ссылка )
  10. ^ RFC 2066 - опция TELNET CHARSET

57,9654

Внешние ссылки [ править ]

  • Опции Telnet - официальный список назначенных номеров опций на iana.org
  • Взаимодействия Telnet, описанные в виде диаграммы последовательности
  • Конфигурация Telnet
  • Описание протокола Telnet со ссылкой на NVT
  • Microsoft TechNet: команды Telnet
  • TELNET: Мать всех (приложений) протоколов
  • Устранение ошибок Telnet в операционной системе Windows
  • "telnet.org - информация о telnet" . telnet.org . Проверено 7 января 2020 . Содержит список адресов telnet и список клиентов telnet