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