TELNET - клиент сервера Telnet для Windows.



Протокол прикладного уровня TELNET (от англ. TErminaL NETwork) — сетевой протокол для реализации текстового интерфейса по сети. Название telnet получили также клиентские программы реализации данного протокола, практически для всех существующих операционных систем. Протокол Telnet – один из старейших сетевых протоколов, разрабатывавшихся как средство связи между удаленными терминалами в тестовом режиме. Поэтому в нем не предусмотрено шифрование данных и использование современных средств проверки подлинности. Протокол уязвим для множества сетевых атак, и не может использоваться в качестве средства управления сетевыми операционными системами. В настоящее время, для удалённого доступа к системе применяется сетевой протокол SSH (Secure SHell), при создании которого упор делался именно на вопросы безопасности. Относительная безопасность сессий Telnet осуществляется только в полностью контролируемой сетевой среде или с применением защиты на сетевом уровне (различные реализации VPN - виртуальных частных сетей). Тем не менее, TELNET по-прежнему применяется для управления специализированными сетевыми устройствами (Коммутаторами, роутерами и т.п.), а также для сетевой диагностики, выполнения отладки и изучения других текст-ориентированных (telnet-like) протоколов на основе транспорта TCP. Современный стандарт протокола Telnet описан в RFC 854.

В современных ОС семейства Windows, утилита telnet.exe по умолчанию, не устанавливается. Для ее установки нужно перейти в Панель управления - Программы и Компоненты – Включение или отключение компонентов Windows и установить галочку для Клиент Telnet. Или в командной строке, запущенной от имени администратора, выполнить команду:

pkgmgr /iu:"TelnetClient"

Формат командной строки:

telnet [-a][-e Символ][-f Файл][-l Имя][-t Тип][Узел [Порт]]

Параметры командной строки:

-l Имя пользователя для входа в удаленную систему при условии, что поддерживается параметр TELNET ENVIRON.

-a Попытка автоматического входа в систему. Как и ключ -l, но использует текущее имя пользователя, под которым выполнен вход в систему.

-e Служебный символ переключения режима ввода в окне telnet-клиента.

-f Имя файла журнала на стороне клиента. В русскоязычной справке этот параметр неверно трактуется как Файл_входа - “Имя файла со стороны клиента для выполнения входа в систему”.

-t Тип telnet-терминала. Поддерживаются 4 типа терминалов: vt100, vt52, ansi и vtnt.

Узел Имя узла или IP-адрес удаленного компьютера, к которому выполняется подключение. Порт Номер порта или имя службы. Если номер не задан, то используется стандартный порт Telnet 23\TCP

При запуске без параметров, утилита переходит в режим ожидания ввода команд :



Добро пожаловать в программу-клиент Microsoft Telnet

Символ переключения режима: 'CTRL+]'

Microsoft Telnet>



При вводе символа ? или help отображается справочная инвормация:

Команды могут быть сокращены. Поддерживаемыми командами являются:

c - close - закрыть текущее подключение

d - display - отобразить параметры операции

o - open имя_узла [Порт] - подключиться к сайту (по умолчанию, Порт = 23)

q - quit - выйти из telnet

set - set - установить параметры ("set ?" для вывода их списка)

sen - send - отправить строки на сервер

st - status - вывести сведения о текущем состоянии

u - unset - сбросить параметры ("unset ?" для вывода их списка)

? /h - help - вывести справку


Некоторые из команд позволяют получить подсказку по использовании, при вводе с символом вопроса:

Telnet> set ? - получить подсказку по использованию команды установки режимов . Пример отображаемой информации:

bsasdel - символ BackSpace будет отправляться как символ Delete

crlf - режим возврата каретки; приводит к отправке символов CR & LF

delasbs - символ Delete будет отправляться как символ BackSpace

escape x - где x - символ переключения в режим telnet-терминала и обратно

localecho - включение локального эха.

logfile x - где x - файл журнала. В русском переводе неверно трактуется как "Файл входа текущего клиента в систему"

logging - запись текущей сессии в журнал. В русском переводе неверно трактуется как "выполнение входа в систему"

mode x - где x=console - консольный режим, используемый для работы с оконными приложениями (редактор vi) и x=stream - потоковый режим, используемый для работы в командной строке.

ntlm - включение проверки подлинности NTLM.

term x - тип эмулируемого терминала. Где x - ansi, vt100, vt52, или vtnt.

Для получения подсказки по отмене установленных параметров используется команда

Microsoft Telnet> unset ?

bsasdel - символ BackSpace будет отправляться как символ Delete

crlf - режим перевода строки; приводит к отправке символа CR

delasbs - символ Delete будет отправляться как символ Backspace

escape - символ переключения в режим telnet-терминала и обратно не задан

localecho - отключение локального эха

logging - отключение записи журнала. В русскоязычной весии неверно трактуется как "отключение выполнения входа в систему"

ntlm - отключение проверки подлинности NTLM.

Примеры команд в интерактивном режиме:

open 192.168.0.1 - подключиться к серверу Telnet с IP-адресом 192.168.0.1

o zte-f660 - подключиться к Telnet-серверу с именем zte-f660. Используется сокращение команды open

set logfile C:\telnet.log - использовать в качестве файла журнала C:\telnet.log

set logging - выполнять запись текущей сессии в файл журнала.

display - отобразить параметры текущей сессии. Пример отображаемой информации:

Символ переключения режима: 'CTRL+]'

Проверка подлинности NTLM - включена

Вывод локального эха - отключен

Режим новой строки - Символ ВВОД будет отправляться как CR & LF

Текущий режим: Потоковый

РЕЖИМ ТЕРМИНАЛА

Предпочитаемый тип терминала ANSI



На практике, утилита telnet.exe используется как средство диагностики и отладки для подключения не только к серверу Telnet на TCP порт 23, но и на любой другой TCP-порт, тем самым, позволяя взаимодействовать с любым приложением, управляемым командной строкой. Так, например, с использованием утилиты telnet можно подключиться к серверам, поддерживающим текстовый (telnet-like) ввод команд и данных - SMTP, POP3, IMAP и т.п. Кроме этого, утилиту можно использовать в качестве средства грубой проверки возможности подключения на любой TCP-порт (проверки слушается ли определенный порт TCP).

telnet 192.168.1.1 8080 - подключиться к узлу 192.168.1.1 на порт 8080. В тех случаях, когда порт закрыт, утилита сообщит о невозможности подключения. Причем, для проверки доступности определенного порта даже необязательно, чтобы он слушался службой с поддержкой текстового ввода, как например, сервер VNC. Для отключения от удаленного сервера необходимо ввести символ переключения режима ( по умолчанию - CTRL+]).

Утилиту telnet.exe можно использовать , например, для обмена с почтовым сервером по протоколу POP3 (Post Office Protocol ver. 3). Данный протокол используется почтовыми клиентскими программами (Outlook, Outlook Express, The Bat и т.д.) для получения электронной почты, хранящейся в почтовом ящике пользователя. Это простейший протокол, в основе которого лежит обмен текстовыми сообщениями. С целью изучения взаимодействия почтового клиента с почтовым сервером, можно реализовать сеанс подключения с помощью TELNET.

Стандартно сервер POP3 ожидает входящие соединения по протоколу TCP на порт 110 ("слушает" порт tcp/110). Команда telnet для подключения к серверу, например pop.mail.ru

telnet pop.mail.ru 110

Если сервер работоспособен, в окне telnet появится его приглашение

+OK mPOP POP3 v1.1

Для доступа к почтовому ящику, нужно авторизоваться на данном почтовом сервере с помощью директив user имя пользователя и pass пароль

user vasya@pochta.ru

После чего, сервер предложит ввести пароль:

+OK Password required for user vasya@pochta.ru

Нужно ввести пароль

pass VasinPass

Сервер сообщит результат проверки пароля:

+OK vasya@pochta.ru maildrop has 10 messages (152527 octets)

Подобное сообщение означает, что авторизация выполнена успешно, и в почтовом ящике vasya@pochta.ru имеются 10 полученных писем, общим объемом 152527 байт (октетов).

Можно запросить список писем директивой list:

list

В ответ на это, сервер выдаст список и размеры писем в почтовом ящике:

+OK 10 messages (152527 octets)
1 48628
      1-это порядковый номер, 48628 - размер
2 1829
3 2070
:


При необходимости можно посмотреть заголовки писем. Для этого используется команда top порядковый номер, пробел, число строк из тела сообщения

top 2 0

В ответ на это, вы увидите заголовок письма, содержащий служебную информацию об отправителе, дате отправки, обратном адресе и некоторые другие данные:

Received: from [62.141.94.151] (HELO mx1.ks.pochta.ru) by node7-1.ks.pochta.ru with QIP.RU LMTP
for vasya@pochta.ru;
Fri, 08 Apr 2011 15:18:33 +0400
Received: from mx3.softkey.ru ([217.74.43.68])
: :

Для приема писем используется директива retr порядковый номер

retr 2 - принять письмо с порядковым номером 2

Для удаления письма, используется директива dele порядковый номер Например, для удаления 2-го письма из списка, полученного директивой list:

dele 2

Если удаление прошло успешно, сервер выдаст сообщение:

+OK message 2 deleted


Иногда, команду TELNET можно использовать и для идентификации службы, слушающей указанный порт, поскольку многие из них при подключении отображают либо свой баннер, либо специфическую служебную информацию. Например, приветствие FTP-сервера: 220-FileZilla Server version 0.9.43 beta

220-written by Tim Kosse (tim.kosse@filezilla-project.org)

220 Please visit http://sourceforge.net/projects/filezilla/

А так выглядит экран при подключении к серверу RealVNC:

RFB 003.008


Если вы желаете поделиться ссылкой на эту страницу в своей социальной сети, пользуйтесь кнопкой "Поделиться"











Весь список команд CMD Windows