$put_perv_real = "/home/www/dvakompa-ru/dopol/"; ?>
Протокол прикладного уровня 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