Протокол Telnet. TELNET— основы использования

05.08.2019 Роутеры и модемы

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

Эта утилита очень часто использовалась раньше, для удаленного управления компьютером с Linux, но потом ей на замену пришел защищенный протокол SSH. Но telnet все еще используется, например, для тестирования сети, проверки портов, а также для взаимодействия с различными IoT устройствами и роутерами. В этой статье мы рассмотрим что такое telnet, а также как пользоваться telnet для решения своих задач.

Как я уже сказал, эта утилита предназначена для создания интерактивного соединения между удаленными компьютерами. Она работает по протоколу TELNET, но этот протокол поддерживается многими сервисами, поэтому ее можно использовать для управления ими. Протокол работает на основе TCP, и позволяет передавать обычные строковые команды на другое устройство. Он может использоваться не только для ручного управления но и для взаимодействия между процессами.

Для работы с этим протоколом мы будем использовать утилиту telnet, ею очень просто пользоваться. Давайте рассмотрим синтаксис telnet:

$ telnet опции хост порт

Хост - это домен удаленного компьютера, к которому следует подключиться, а порт - порт на этом компьютере. А теперь давайте рассмотрим основные опции:

  • -4 - принудительно использовать адреса ipv4;
  • -6 - принудительно использовать адреса ipv6;
  • -8 - использовать 8-битную кодировку, например, Unicode;
  • -E - отключить поддержку Escape последовательностей;
  • -a - автоматический вход, берет имя пользователя из переменной окружения USER;
  • -b - использовать локальный сокет;
  • -d - включить режим отладки;
  • - режим эмуляции rlogin;
  • -e - задать символ начала Escape последовательности;
  • -l - пользователь для авторизации на удаленной машине.

Это все, что касается команды telnet для установки соединения. Но соединение с удаленным хостом, это только полдела. После установки подключения telnet может работать в двух режимах:

  • Построчный - это предпочтительный режим, здесь строка текста редактируется на локальном компьютере и отправляется только тогда, когда она будет полностью готова. На такая возможность есть не всегда и не у всех сервисов;
  • Посимвольный - все набираемые вами символы отправляются на удаленный сервер. Тут будет сложно что-либо исправить, если вы допустили ошибку, потому что Backspace тоже будет отправляться в виде символа и стрелки движения тоже.

Использование telnet заключается в передаче специальных команд. У каждого сервиса свои команды, но у протокола есть свои команды telnet, которые можно применять в консоли telnet.

  • CLOSE - закрыть соединение с сервером;
  • ENCRYPT - шифровать все передаваемые данные;
  • LOGOUT - выйти и закрыть соединение;
  • MODE - переключить режим, со строчного на символьный или с символьного на строчный;
  • STATUS - посмотреть статус соединения;
  • SEND - отправить один из специальных символов telnet;
  • SET - установить значение параметра;
  • OPEN - установить подключение через telnet с удаленным узлом;
  • DISPLAY - отобразить используемые спецсимволы;
  • SLC - изменить используемые спецсимволы.

Мы не будем рассматривать все команды, поскольку они вам вряд ли понадобятся, а если и понадобятся, то вы легко сможете их найти в официальной документации.

Как пользоваться telnet?

Дальше мы рассмотрим как использовать telnet для решения ваших задач. Обычно, утилита уже установлена в большинстве систем, но если это не так, то вы можете установить telnet из официальных репозиториев, например, в Ubuntu:

sudo apt install telnet

Теперь перейдем к применению утилиты. Изначально она использовалась для удаленного управления компьютером, но поскольку потом был разработан более безопасный протокол SSH, использовать ее перестали.

1. Доступность сервера

Утилита все еще может быть полезной при поверке доступности узла, для этого просто передайте ей ip адрес или имя хоста:

telnet 192.168.1.243

Для этого не обязательно применять telnet, есть ping.

2. Проверка порта

C помощью telnet мы можем проверить доступность порта на узле, а это уже может быть очень полезным. Чтобы проверить порт telnet выполните:

telnet localhost 123
$ telnet localhost 22

В первом случае мы видим, что соединение никто не принимает, во втором же выводится сообщение об успешном подключении и приветствие SSH сервера.

3. Отладка

Чтобы включить режим отладки и выводить более подробную информацию во время работы используйте опцию -d во время подключения:

sudo telnet -d localhost 22

4. Консоль telnet

Использование консоли telnet тоже важный момент в разборе как пользоваться telnet. В основном режиме вы можете выполнять команды, на удаленном сервере, если же вы хотите адресовать команду именно telnet, например, для настройки ее работы, необходимо использовать спецсимвол для открытия консоли, обычно утилита сразу говорит вам что это за символ, например, по умолчанию используется "^[":

Для его активации вам нужно нажать сочетание клавиш Ctrl+[, затем вы уведите приглашение ввода telnet.

Чтобы посмотреть все доступные команды, вы можете набрать?. Например, вы можете посмотреть статус подключения:

telnet> status

Здесь есть и другие интересные возможности. Такие вещи можно проделывать при любом подключении с помощью утилиты telnet.

5. Посмотреть сайт telnet

Один из распространенных способов использования telnet - это тестирование сайта из консоли. Да, красивую веб-страницу вы не получите, но можете вручную собрать запросы и видеть все переданные сервером данные.

telnet opennet.ru 80

Затем наберите команду веб-серверу:

Веб сервер вернет полностью страницу, а также заголовки, которые необходимы для ее отображения браузером.

6. Удаленное управление telnet

Настоятельно не рекомендуется использовать небезопасный telnet для удаленного управления, потому что все команды и пароли могут быть прослушаны сторонним пользователем. Но иногда, например, для роутеров telnet все же используется для удаленного управления. Все работает точно так же, как и для других подключений, только нужно использовать порт 23, а на удаленном компьютере должен быть установлен telnet-server:

telnet localhost 23

Тут порт можно даже не указывать, потому что по умолчанию будет использоваться именно 23. Далее, вам нужно ввести логин и пароль, а затем вы сможете выполнять команды в удаленной системе.

Выводы

В этой статье мы рассмотрели примеры использования telnet, а также что представляет из себя эта утилита, хотя она уже не используется по своему основному назначению, но до сих пор может быть полезной многим пользователям и системным администраторам. Если у вас остались вопросы, спрашивайте в комментариях!

Telnet (англ. TE rminaL NET work ) - протокол прикладного уровня, используемый для реализации двунаправленного интерактивного текстового интерфейса в сети через виртуальный терминал. Данные от пользователя перемешиваются с управляющими командами TelNet в восьмибитные байт-ориентированные данные, передаваемых по протоколу TCP. TelNet был разработан в 1969 году. Первой версией была RFC 15 , далее расширенная в RFC 854 и далее стандартизированная в один из первых интернет-стандартов IETF STD 8. Telnet обеспечивает доступ к командной строке операционной системы на удалённом хосте, поддерживая большинство видов сетевого оборудования и операционных систем с утилитой конфигурации, однако из-за серьёзных проблем в безопасности использования Telnet в открытой сети (Интернет), всё чаще для этих целей используют протокол SSH. Однако, Telnet часто используют также и для ссылки на программное обеспечение, содержащее клиентскую часть протокола, так как клиентские приложения Telnet доступны практически для всех компьютерных платформ.

История и стандарты

Telnet это протокол клиент-сервер. Как правило, он используется, чтобы установить соединение с TCP порт 23, где находится серверное приложение Telnet. Однако, до появления TCP/IP Telnet использовал протокол NCP. Официальную огласку Telnet получил 5 марта 1973 года, после того как стандарт протокола был определён в UCLA. Из-за нечёткой архитектуры опций протокола было сделано много расширений, некоторые из которых были приняты (STD 27, STD 32), широко реализованы, а так же предложены в числе стандартов IETF.

Безопасность

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

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

Эти связанные с безопасностью недостатки наглядно показывали, что использование протокола Telnet в общедоступной сети опасно и неоптимально. Позже, в 1995 году, появился протокол SSH (Secure Sell), который обеспечивал большинство функций Telnet, а так же предоставлял устойчивое шифрование и публичный ключ аутентификации, для того, чтобы предотвратить перехват уязвимых данных и подтвердить подлинность удалённого компьютера. Как и и другие ранними интернет-протоколами, расширения Telnet используют TSL и SASL для обеспечения начального уровня безопасности. Однако, поддерживают эти функции далеко не все расширения, а интереса к реализации более защищённых средств не было из-за появления SSH, достаточного для большинства целей.

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

Telnet 5250

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

Вид данных в Telnet

Все байты кроме 0xff передаются по Telnet как есть. Поэтому клиент Telnet может использоваться для установки интерактивной чистой TCP-сессии, и обычно такая не использующая IAC(0xff или 255) считается функционально идентичной. Однако, на деле всё не так: существуют иные правила виртуального терминала NVT, такие как требование сопровождения символа возврата каретки пустым символом NULL, которые отличают протокол Telnet от чистой сессии TCP. С другой стороны сегодня множество систем обладают настоящим необработанным TCP, например netcat или socat на UNIX и PuTTY на Windiws, которые можно использовать чтобы вручную обмениваться данными с другими службами без специального клиентского ПО. Тем не менее, Telnet всё ещё используется в отладке некоторых сетевых служб, таких как SMTP, IRC, HTTP, FTP или серверов POP3 - Telnet посылает команды к серверам и исследует ответы, но из всех этих стандартов только FTP использует специфичный формат данных Telnet

Ещё одно отличие Telnet от необработанного сеанса TCP - Telnet по умолчанию не чисто восьмибитный. Восьмибитный режим может быть согласован, но октеты высокого набора битов могут быть искажены до согласования, и это очевидно не требуется в не-Telnet соединении. 8-битный режим предназначен для передачи двоичных данных, а не символов. Стандарт предполагает интерпретацию кодов 000-176 как ASCII, но не предполагает значения для октетов высокого набора битов. Была попытка представить переключаемую опцию поддержки кодировки символов (например, как у HTTP), но сейчас ничего не известно о её актуальной программной поддержке

Связанные RFC

Интернет-стандарты

  • RFC 854 , Telnet Protocol Specification
  • RFC 855 , Telnet Option Specifications
  • RFC 856 , Telnet Binary Transmission
  • RFC 857 , Telnet Echo Option
  • RFC 858 , Telnet Suppress Go Ahead Option
  • RFC 859 , Telnet Status Option
  • RFC 860 , Telnet Timing Mark Option
  • RFC 861 , Telnet Extended Options: List Option

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

  • RFC 885 , Telnet end of record option
  • RFC 1073 , Telnet Window Size Option
  • RFC 1079 , Telnet terminal speed option
  • RFC 1091 , Telnet terminal-type option
  • RFC 1096 , Telnet X display location option
  • RFC 1123 , Requirements for Internet Hosts - Application and Support
  • RFC 1184 , Telnet Linemode Option
  • RFC 1372 , Telnet Remote Flow Control Option
  • RFC 1572 , Telnet Environment Option
  • RFC 2941 , Telnet Authentication Option
  • RFC 2942 , Telnet Authentication: Kerberos Version 5
  • RFC 2943 , TELNET Authentication Using DSA
  • RFC 2944 , Telnet Authentication: SRP

Telnet – базовый протокол ОС UNIX, обеспечивающий терминальный доступ пользователей к удалённому компьютеру .

Первоначально терминалом являлось устройство типа пишущей машинки, на котором оператор (пользователь) печатал команды и наблюдал результаты. Позднее терминал разделили на монитор и клавиатуру.

По умолчанию в Telnet используется 23 порт. На удалённом компьютере должна быть запущена серверная часть, а на компьютере пользователя – клиентская. Клиентская программа носит то же название – telnet и допускает ввод параметров из командной строки. К этим параметрам относятся:

Имя (IP адрес) сервера и номер порта

Тип текстового терминала

Имя пользователя

Имя журнала соединения

Определение действий некоторых функциональных клавиш клавиатуры и др.

Синтаксис командной строки зависит от программной реализации telnet и с этой точки зрения telnet можно рассматривать как службу или сервис.

Работа протокола telnet предусматривает передачу серверу (удалённому компьютеру) по протоколу ТСР каждого набранного пользователем знака в отдельном пакете. В случае включённого эха сервер возвращает знак на монитор пользователя. Результаты выполнения запущенных на сервере программ передаются уже блоками. В пределах прав пользователя и возможностей терминала telnet обеспечивает полный доступ к программам и файлам сервера. При установлении соединения в процессе аудентификации символы имени пользователя и пароля передаются в открытом виде, что делает использование telnet крайне опасным.

Наиболее популярный метод повышения безопасности прикладных терминальных протоколов (например, telnet) является протокол SSH (Secure SHell), использующий 22 порт по умолчанию. Так же, как и в telnet, на удалённом компьютере запускается серверная часть SSH, а на пользовательском компьютере – клиентская. После установления соединения все данные передаются в зашифрованном виде и все данные прикладных протоколов туннелируются по этому защищённому соединению как это показано на рисунке 3.5.3.1.

Перед использованием telnet удалённый компьютер и компьютер пользователя устанавливают защищённое соединение по 22 порту (подразумевается, что до использования SSH в клиентской и серверной части уже определены пароли криптографической защиты). При вызове telnet открывается 23 порт, но передаваемые пакеты перехватываются клиентом SSH, шифруются и отправляются по защищённому каналу. Сервер SSH расшифровывает данные и по 23 порту передаёт серверу telnet. Реакция сервера передаётся в обратном порядке. Пользователь не ощущает работы протокола SSH и работает как с обычным клиентом telnet по 23 порту.

Протоколы электронной почты

Электронная почта (E-mail) – один из старейших и наиболее распространённых сетевых сервисов, популярных как в локальных, так и глобальных сетях .

Система электронной почты появилась в 1982 г. как сервис предка Internet сети ARPANET. Эта система значительно отличалась от принятых CCITT рекомендаций серии X.400. Сложность рекомендаций Х.400 и их непродуманность привели к редкому для сетевых технологий случаю, когда инициативная разработка победила международный стандарт. Службы электронной почты, отвечающие Х.400, не нашли широкого применения и представляют скорее научный интерес.

Электронное почтовое сообщение, как и в обычной почте, содержит конверт с необходимой для доставки информацией, заголовка с полезными для автоматизированной обработки адресатом данными и собственно сообщения.

Конверт и заголовок имеют формализованные поля. Наиболее важными из них являются (обязательные для заполнения отправителем поля выделены жирным шрифтом):

То: - адрес (а) получателя (лей) в формате имя_ящика@имя_почтового_сервера

Сс: - (carbon copy) адрес (а) дополнительного (ных) получателя (лей)

Bcc: - (blind carbon copy) слепой (ые) адрес (а) получателя (лей), о которых другим не сообщается

Sender: - адрес отправителя письма

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

Return-Path: - имена узлов на пути письма

Date: - дата и время отправки письма

Reply-to: - адрес, куда надо ответить

Message-id: - уникальный идентификатор письма (для ссылок)

In-Reply-id: - идентификатор письма, на которое даётся ответ

Subject: - тема письма

Тело сообщения представляет собой набор строк из не более, чем 1000 (рекомендуется до 78) ASCII (American Standard Code for Information Interchange) знаков, т. е. 7-и битных чисел, представляющих буквы латинского алфавита, знаки препинания и цифры (популярным для такого представления является термин «кодировка»). Символы национальных кодировок (например, знаков кириллицы), двоичные файлы (например, с аудио, или видео информацией) и др. отображаются в соответствии с соглашением MIME (Multipurpose Internet Mail Extension – многоцелевые расширения электронной почты в Интернете), которое предусматривают поле с указанием способа кодировки (например, Base64 – см. параграф 3.5.2).

Базовым методом обеспечения конфиденциальности электронной почты является её криптографическая защита. Наиболее популярная система именуется PGP (Pretty Good Privacy - достаточно хорошая конфиденциальность). Эта система предложена Филом Циммерманом (Phil Zimmerman) и предусматривает использование нескольких алгоритмов шифрования (RSA, IDEA, MD5).

Другая система носит название PEM (Privacy Enhanced Mail – почта повышенной секретности) и отличается от PGP необходимостью связи с центрами сертификации ключей, меньшей степенью защиты (для кодирования данных в системе PGP используется ключи длинной 128 бит, а в системе PEM – только 56 бит), но полным соответствием рекомендациям ITU-T (Х.400 и Х.509).

Протоколы электронной почты характеризуются значительным разнообразием от фирменных, пригодных в программных продуктах конкретных фирм-производителей, до общепризнанных. Речь идёт о протоколах именно систем электронной почты, а не о распространённых системах эмуляции почтовых служб на базе протокола НТТР (см., например, www. mail. ru).

Среди почтовых протоколов можно выделить:

SMTP (Simple Mail Transfer Protocol – простой протокол электронной почты) – протокол, используемый для обмена почтой между узлами и отправки писем от клиента к почтовому серверу. По умолчанию протокол использует 25 порт.

РОР3 (Post Office Protocol v.3 –протокол электронной почты версии 3) – протокол для получения почты клиентом. По умолчанию протокол использует 110 порт.

IMAP v4 (Internet Message Access Protocol v.4 –протокол интерактивного доступа к электронной почте версии 4) – протокол, аналогичный РОР3, но позволяющий клиенту хранить и обрабатывать почту на самом почтовом сервере. По умолчанию протокол использует 585 порт

Протокол SMNP

Протокол SNMP (Simple Network Management Protocol – простой протокол сетевого управления) первоначально разрабатывался для управления маршрутизаторов, но затем был расширен на любые сетевые устройства (по умолчанию порты 161/162). В настоящее время актуальна версия 2 протокола (1999 г.) .

Протокол построен по принципу клиент - сервер (на управляемом сетевом устройстве должна быть запущена программа клиента) и включает в себя протокол управления (взаимодействие управляемого и управляющего узлов), язык ASN.1 (Abstract Syntax Notation v.1 - абстрактная синтаксическая нотация версии 1) описания модели управления и собственно модель управления MIB (Management Information Base - база управляющей информации). Распространению протокола мешает его низкая защищённость и ориентация на использование протокола UDP, приводящего к возможной потере сообщенийDNS

Задача разрешения имен подразумевает определение IP адреса узла по его символьному имени и определение символьного имени по заданному IP адресу.

Исторически первый, но до сих пор действующий механизм разрешения имен связан с прямым заданием таблицы соответствия символьных имён и IP адресов в файле hosts/lmhosts (первый файл используют UNIX/Linux и некоторые др. операционные системы (ОС), а второй – ОС фирмы Microsoft). Оба файла текстовые и их форматы и ключи можно найти в MS Windows в одноимённых файлах с расширением. sam (sample – образец). Очевидно, для сколько-нибудь крупной сети решить задачу таким образом полностью не представляется возможным, хотя запись в эти файлы сведений об основных серверах, маршрутизаторах, шлюзах и пр. весьма эффективна для ускорения старта компьютера в сетевом окружении.

Другой, достаточно популярный способ разрешения имён связан с использованием NetBIOS (Network Basic Input/Output System) поверх TCP/IP . Эта система была разработана совместными усилиями Microsoft и IBM в 80-е годы как сетевой сервис ввода/вывода для операционной системы Windows. Позже, для реализации доступа пользователей к ресурсам сети был разработан протокол NetBEUI (NetBIOS Extended User Interface – расширенный пользовательский интерфейс NetBIOS) как основной сетевой протокол в ОС Windows for Workgroups и NT. Наконец, с повсеместным распространением стека TCP/IP компания Microsoft была вынуждена выпустить реализацию NetBIOS, использующую протокол IP для передачи необходимых данных (NetBIOS поверх TCP/IP). До сих пор продолжается поддержка NetBIOS в ОС Windows 2000/NT/XP, правда уже не как основного механизма доступа к ресурсам сети. NetBIOS целесообразно использовать в небольших, одноранговых сетях.

Изначально, каждый узел в сети с NetBIOS имеет символьное имя (до 15 знаков) с идентификатором ресурса (16-ый знак), который указывает на роль узла (файловый сервер, принт-сервер, рабочая станция и пр.). «Чистый» NetBIOS применим только для небольших сетей и считается «немаршрутизируемым», т. к. –

система имён не позволяет идентифицировать сеть

широко используются широковещательные запросы для получения и обновления сведений об узлах сети (большинство маршрутизаторов широковещательные запросы не пропускают)

Для устранения указанных недостатков компания Microsoft предложила службу WINS (Windows Internet Name Service – служба Windows имен Internet) на базе серверов имен NetBIOS. Следует отметить, что несмотря на упоминание сети Internet, WINS не применяется в этой глобальной сети.

Первый недостаток NetBIOS устраняется в WINS тем, что вводится групповое имя для сети, а второй – тем, что запросы при разрешении имён обращены к конкретным серверам WINS. Неустойчивость в работе службы, трудности администрирования и затруднительность использования в глобальной сети Internet, к настоящему моменту заставили компанию Microsoft перейти к полноценной поддержке DNS.

DNS (Domain Name System – доменная система имён) реализуется с помощью одноименного прикладного протокола, использующего по умолчанию 53 порт . Система DNS была разработана в рамках ОС UNIX и соответствующая служба, использующая DNS, имеет ту же аббревиатуру, но расшифровывается как Domain Name Service.

Имена в DNS строятся по иерархическому принципу в виде перевёрнутого дерева. Домены верхнего уровня (корневые) делятся по профессиональному принципу (. com - коммерческие,. gov - государственные,. net - сетевые и пр. узлы) или по национальному (. ru - русские,. fi - финские,. fr - французские и т. д.). ОС UNIX разрабатывалась в США и, само собой считалось, что все узлы находятся там же. Сейчас можно встретить двойные имена доменов, например,. com. tw – коммерческие тайваньские.

В свою очередь, каждый домен содержит поддомен, имя которого добавляется слева и отделяется точкой, и т. д. Заканчивается запись добавлением слева имени узла. Имя каждого домена, поддомена или узла не должно превышать 63 символа, а полное имя – 255 символов. Для обозначения имён традиционно используется латинский алфавит, цифры и тире (знак _ недопустим), но, в принципе, можно зарегистрировать домен с именем на кириллице, но смысл этого проблематичен.

Данные об именах зарегистрированных в любом домене поддоменов/узлов и их IP адресах хранятся в двух таблицах на DNS-серверах, где также имеется имя и адрес вышележащего домена. По первой таблице для заданного символьного имени определяется цифровой адрес (прямое преобразование и, соответственно, т. н. «прямая зона»), а по второй - по заданному адресу находится символьное имя (обратное преобразование и «обратная зона»).

Для повышения надёжности в каждом домене должно быть не менее 2-х серверов (primary - первичного и secondary - резервного), причём физически эти серверы должны находиться в разных сетях и могут располагаться не в тех доменах, имена узлов которых они содержат.

Корневой домен поддерживают свыше 10 DNS серверов, IP адреса и имена которых «зашиты» в сетевые ОС. Регистрацию новых имён и выделение соответствующих IP адресов производит владелец домена. Например, регистрацию в домене. ru производит РосНИИРОС, где регистрация имени и получение IP адреса обойдётся приблизительно в 50$, а годовая поддержка адреса – в 10$.Все изменения в таблице имен производятся на первичном DNS сервере, резервные серверы только обновляют свои записи по записям первичного сервера. Репликация (обновление) зоны производится с помощью надёжного протокола TCP, в то время, как для DNS запросов клиентов, применяется протокол UDP. Для ускорения процесса разрешения имени и уменьшения трафика в сети иногда устанавливают так называемые кэш-серверы DNS, которые записывают часто используемые имена и адреса.Режим работы DNS сервера может быть рекурсивным и не рекурсивным. В случае рекурсивного режима при невозможности разрешить DNS запрос этот запрос транслируется специально заданному другому DNS серверу (форвардеру – forfarders), который затем возвращает полученный ответ. При не рекурсивном режиме - в отсутствии информации о запрашиваемом узле производится обращение к корневым DNS серверам, а от них вниз по цепочке до получения ответа.

NAT (Network Address Translation - трансляция сетевых адресов) реализует преобразование (подмену) IP адресов локальных сетей во внешние IP адреса глобальной сети Internet . Необходимость такого преобразования следует из соглашения об использовании части IP адресов только в локальных сетях (см. п. 3.2), по которому маршрутизаторы глобальной сети уничтожают пакеты с этими адресами.

NAT действует на сетевом и частично на транспортном уровнях, обеспечивая преобразование в IP пакетах адресов узлов локальной сети во внешний адрес. Преобразование производится путём замены адреса внутреннего узла на внешним адрес. Заменяемые адреса запоминаются в таблице, с помощью которой производится обратная замена при получении ответного пакета. Следует отметить, что для устранения возможной неразличимости преобразуется не только IP адрес, но и с помощью PAT (Port Address Translation) номер порта.

Кроме преобразования адресов NAT позволяет уменьшить потребность в IP адресах для глобальных сетей, т. к. все пользователи локальной сети могут получать доступ к ресурсам глобальной сети через один внешний адрес.

NAT - не единственный способ отправки пакетов из локальной сети в глобальную, альтернативой трансляции адресов является использование сервера-посредника.

Как вы уже могли убедиться, если читали мой пост о настройке Telnet в Windows, работать с этой службой достаточно легко. Можно запустить его без аргументов, указав в командной строке лишь адрес хост-системы. При определенных обстоятельствах еще нужно указать конкретный порт. Первое сообщение, которое видит пользователь, после выполнения команды “ telnet “, посылается самой программой, а после установления связи между клиентом и сервером выводятся сообщения, исходящие от управляемой системы. В связи с этим с удаленной операционной системой можно работать через Telnet таким же образом, как это происходит в случаях с другими специализированными программами дистанционного доступа к ОС. Теперь давайте присмотримся к данной службе поближе и разберем наиболее часто используемые команды Telnet .

Командная строка Telnet на клиенте с Windows может принимать следующие команды:

open узел порт – применяется для установки соединения с заданным узлом;

close – закрывает существующее соединение;

quit – выход из текущего сеанса Telnet;

display – позволяет просмотреть текущие параметры Telnet-клиента;

set – с ее помощью возможно задать Telnet-параметры текущей сессии , а конкретно:

  • set ntlm включит NTLM (использование интегрированной в Telnet проверки подлинности NTLM во время подключения пользователя с удаленного компьютера позволяет обойтись без ввода логина и пароля при входе);
  • set localecho включит режим локального вывода команд;
  • set term vt100/vt52/vtnt/ansi задаст указанный тип терминала (например, VT100 применяют для выполнения обычных программ командной строки, а VTNT – для выполнения расширенных программ, типа “edit”);
  • set escape символ задаст последовательность клавиш, переключающих режим сеанса в командный режим (к примеру, set escape , потом нажатие клавиш “Ctrl+P” и “Enter” установит Ctrl+P в качестве переключателя);
  • set logfile имя_файла укажет на файл журнала текущей активности Telnet (этот файл должен находиться в файловой системе управляющего компьютера);
  • set logging включит ведение журнала (файл журнала должен быть предварительно указан вышеприведенной командой, иначе возникнет сообщение с ошибкой);

unset – выполняет отключение различных параметров сессии Telnet (обратные операции по отношению к set), а именно:

  • unset ntlm отключит встроенную проверку подлинности;
  • unset localecho деактивирует режим локального вывода команд;

status – используется с целью проверки наличия подключения к Telnet-клиенту;

enter – применяется для перехода в существующий подключенный сеанс Telnet;

Или help – отображение справочной информации.

Закончив с делами на удаленной машине, вам нужно будет закрыть соединение с ней. При этом работа самого Telnet завершается не всегда. Чтобы выйти в командную строку Telnet, воспользуйтесь горячими клавишами “Ctrl+]” .

Команды telnet позволяют связаться с удаленным компьютером, использующим протокол Telnet. Можно выполнить команду telnet без параметров для входа в контекст telnet, обозначенный в командной строке Telnet (telnet ). В командной строке Telnet используйте следующие команды для управления компьютером, на котором выполняется клиент Telnet.

Команды tlntadmn позволяют удаленно управлять компьютером, на котором выполняется сервер Telnet. Эти команды выполняются из командной строки. Команда tlntadmn без параметров отображает настройку локального сервера.

Чтобы использовать команды telnet из командной строки Telnet

Чтобы запустить клиент Telnet и ввести командную строку Telnet

Синтаксис

telnet [\\ удаленный_сервер ]

Параметры \\ удаленный_сервер Отображает имя подключаемого сервера /?

  • При использовании команды telnet без параметров запускается клиент Telnet.
  • В командной строке Telnet необходимо использовать команды Telnet.

Чтобы остановить клиент Telnet

Синтаксис

Параметры

отсутствуют

Примечания

  • Допускается сокращение этой команды до q .

Чтобы подключить клиент Telnet к удаленному компьютеру

Синтаксис

open [\\ удаленный_сервер ] [порт ]

Параметры \\ удаленный_сервер порт Указывает используемый порт. Если порт не указан, используется порт по умолчанию. Примечания

  • Допускается сокращение этой команды до o .
Примеры

Чтобы подключиться к удаленному серверу Redmond через порт 44, введите в командную строку: o redmond 44

Чтобы отключить клиент Telnet от удаленного компьютера

Синтаксис

close [\\ удаленный_сервер ]

Параметры \\ удаленный_сервер Указывает имя управляемого сервера. Если сервер не указан, используется локальный сервер. Примечания

  • Допускается сокращение этой команды до c .
Примеры

Чтобы отключиться от удаленного сервера Redmond, введите команду: c redmond 44

Чтобы настроить параметры клиента Telnet

Синтаксис

set [\\ удаленный_сервер ] [ntlm ] [localecho ] [term {ansi | vt100 | vt52 | vtnt }] [escape символ ] [logfile имя_файла ] [logging ] [bsasdel ] [crlf ] [delasbs ] [mode {console | stream }] [? ]

Параметры \\ удаленный_сервер Указывает имя управляемого сервера. Если сервер не указан, используется локальный сервер. ntlm Включает проверку подлинности NTML, если она доступна на удаленном сервере. localecho Включает режим локального отображения команд. term {ansi | vt100 | vt52 | vtnt } Задает терминал указанного типа. escape символ Задает управляющий символ. Управляющий символ может быть отдельным символом или сочетанием клавиши CTRL и символа. Чтобы задать комбинацию клавиш, удерживайте клавишу CTRL во время ввода символа, который необходимо назначить. logfile имя_файла Задает файл журнала активности Telnet. Файл журнала должен располагаться на локальном компьютере. Запись в журнал начинается автоматически после выбора этого параметра. logging Включает ведение журнала. Если файл журнала не задан, выводится сообщение об ошибке. bsasdel Задает клавишу BACKSPACE, как удалить. crlf Назначает новый линейный режим, который опреляет клавишу ENTER как 0x0D, 0x0A. delasbs Назначает клавише DELETE значение удаления последнего символа. mode {console | stream } Задает режим работы. ? Позволяет просматривать полный синтаксис команды. Примечания

  • Чтобы отключить назначенный ранее параметр, в командной строке Telnet, введите:

    unset [параметр ]

  • Чтобы назначить управляющий символ, введите команду:

    -e символ

  • В версиях Telnet, отличных от английской, доступна команда codeset параметр . Codeset параметр задает текущий кодовый набор для параметра, который может быть одним из следующих: Shift JIS , Japanese EUC , JIS Kanji, JIS Kanji (78) , DEC Kanji , NEC Kanji . Необходимо назначить такой же кодовый набор на удаленном компьютере.

Чтобы отправить команды клиента Telnet

Синтаксис

send [\\ удаленный_сервер ] [ao ] [ayt ] [esc ] [ip ] [synch ] [? ]

Параметры \\ удаленный_сервер Имя сервера, к управлению которым требуется перейти. Если сервер не указан, используется локальный сервер. ao Отменяет команду ввода. ayt Посылает команду "Вы на месте?" esc Отправляет текущий управляющий знак. ip Прерывает выполнение команды обработки. synch Выполняет операцию синхронизации Telnet. ? Позволяет просматривать полный синтаксис команды.

Чтобы посмотреть текущие параметры клиента Telnet

Синтаксис display

Параметры

Отсутствуют

Примечания

  • Данная команда выводит текущие рабочие параметры для клиента Telnet. При работе в режиме сеанса Telnet (другими словами, при подключении к серверу Telnet), можно выйти из сеанса для изменения параметров, нажав клавиши CTRL+]. Для возвращения в сеанс Telnet нажмите клавишу ENTER.

Чтобы использовать команды tlntadmn из командной строки

Чтобы администрировать компьютер, на котором выполняется сервер Telnet/P>Синтаксис

tlntadmn [\\ удаленный_сервер ] [start ] [stop ] [pause ] [continue ]Параметры \\ удаленный_сервер Указывает имя сервера, к управлению которым требуется перейти. Если сервер не указан, используется локальный сервер. start Запускает сервер Telnet. stop Останавливает сервер Telnet. pause Прерывает работу сервера Telnet. continue Возобновляет работу сервера Telnet. /?

  • С помощью команд tlntadmn tlntadmn

Чтобы администрировать сеансы Telnet

Синтаксис

tlntadmn [\\ удаленный_сервер ] [-s ] [-k {код_сеанса | all }] [-m {код_сеанса |all } " сообщение " ]

Параметры \\ удаленный_сервер -s Отображает активные сеансы Telnet. -k {код_сеанса | all } Завершает сеансы. Введите код сеанса для завершения конкретного сеанса или введите all для завершения всех сеансов. -m {код_сеанса | all } " сообщение " Отправляет сообщение в один или несколько сеансов. Введите код сеанса для отправки сообщения в конкретный сеанс или введите all для отправки сообщения во все сеансы. Введите сообщение, которое нужно послать, в кавычках (т. е. " сообщение " ). /? Отображает справку в командной строке. Примечания

  • С помощью команд tlntadmn можно удаленно администрировать компьютер, на котором запущен сервер Telnet, если оба компьютера работают под управлением Windows XP. Команды tlntadmn не могут быть использованы для удаленного администрирования сервера Telnet, работающего под управлением Windows 2000, с компьютера, работающего под управлением Windows XP.

Чтобы установить параметры журнала событий для компьютера, на котором выполняется сервер Telnet

Синтаксис

tlntadmn [\\ удаленный_компьютер ] config [auditlocation= {eventlog | file | both }][audit= [{+ | - }admin ][{+ | - }user ][{+ | - }fail ]]

Параметры \\ удаленный_сервер auditlocation= {eventlog | file | both } Указывает, следует ли отправлять сведения о событиях в окно просмотра событий, в файл или в оба места. audit= [{+ | - }admin ][{+ | - }user ][{+ | - }fail ] Указывает, для каких событий требуется аудит (события регистрации администратора, события регистрации пользователя или неудачные попытки регистрации). Чтобы задать аудит событий конкретного типа, введите знак "плюс" (+) перед данным типом событий. Чтобы остановить аудит событий конкретного типа, введите знак "минус" (-) перед данным типом событий. /?

  • С помощью команд tlntadmn можно удаленно администрировать компьютер, на котором запущен сервер Telnet, если оба компьютера работают под управлением Windows XP. Команды tlntadmn не могут быть использованы для удаленного администрирования сервера Telnet, работающего под управлением Windows 2000, с компьютера, работающего под управлением Windows XP.
  • Если указано, куда отправить сведения о событии без определения типа или типов сведений для аудита, только для сведений о событиях регистрации администратора будет проводиться аудит и отправка в указанное место.
Примеры

Для отправки информации о событиях в окно просмотра событий введите:

tlntadmn config auditlocation=eventlog

Для аудита событий регистрации администратора и неудачных попыток регистрации введите:

tlntadmn config audit=+admin +fail

Чтобы задать основной домен для компьютера, на котором выполняется сервер Telnet

Синтаксис

tlntadmn [\\ удаленный_сервер ] config [dom= имя_домена ]Параметры \\ удаленный_сервер Указывает имя сервера, к управлению которым требуется перейти. Если сервер не указан, используется локальный сервер. dom= имя_домена Указывает домен, который требуется сделать основным. /? Отображает справку в командной строке. Примечания

  • С помощью команд tlntadmn можно удаленно администрировать компьютер, на котором запущен сервер Telnet, если оба компьютера работают под управлением Windows XP. Команды tlntadmn не могут быть использованы для удаленного администрирования сервера Telnet, работающего под управлением Windows 2000, с компьютера, работающего под управлением Windows XP.
Примеры

Чтобы сделать домен Redmond основным доменом на локальном сервере, введите:

tlntadmn config dom=Redmond

Чтобы сопоставить клавишу ALT для компьютера, на котором выполняется сервер Telnet

Синтаксис

tlntadmn [\\ удаленный_сервер ] config [ctrlakeymap= {yes | no }]

Параметры \\ удаленный_сервер Указывает имя сервера, к управлению которым требуется перейти. Если сервер не указан, используется локальный сервер. ctrlakeymap= {yes | no } Указывает, требуется ли интерпретация сервером Telnet сочетания клавиш CTRL+A как ALT. Введите yes для сопоставления сочетания клавиш или no для отказа от сопоставления. /? Отображает справку в командной строке. Примечания

  • С помощью команд tlntadmn можно удаленно администрировать компьютер, на котором запущен сервер Telnet, если оба компьютера работают под управлением Windows XP. Команды tlntadmn не могут быть использованы для удаленного администрирования сервера Telnet, работающего под управлением Windows 2000, с компьютера, работающего под управлением Windows XP.
  • Если клавиша ALT не сопоставлена, сервер Telnet не отправляет нажатие клавиши ALT в приложения, где это может потребоваться.

Чтобы задать максимальное число подключений для компьютера, на котором выполняется сервер Telnet

Синтаксис

tlntadmn [\\ удаленный_сервер ] config [maxconn= положительное_целое ]

Параметры \\ удаленный_сервер Указывает имя сервера, к управлению которым требуется перейти. Если сервер не указан, используется локальный сервер. maxconn= положительное_целое Устанавливает максимальное число подключений. Этот номер можно указать с помощью любого положительного целого меньше 10 миллионов. /? Отображает справку в командной строке. Примечания

  • С помощью команд tlntadmn можно удаленно администрировать компьютер, на котором запущен сервер Telnet, если оба компьютера работают под управлением Windows XP. Команды tlntadmn не могут быть использованы для удаленного администрирования сервера Telnet, работающего под управлением Windows 2000, с компьютера, работающего под управлением Windows XP.

Чтобы задать максимальное число неудачных попыток доступа для компьютера, на котором выполняется сервер Telnet

Синтаксис

tlntadmn [\\ удаленный_компьютер ] config [maxfail= положительное_целое ]

Параметры \\ удаленный_сервер Указывает имя сервера, к управлению которым требуется перейти. Если сервер не указан, используется локальный сервер. maxfail= положительное_целое Задает максимальное разрешенное число неудачных попыток входа для пользователя. Этот номер можно указать с помощью любого положительного целого меньше 100. /? Отображает справку в командной строке. Примечания

  • С помощью команд tlntadmn можно удаленно администрировать компьютер, на котором запущен сервер Telnet, если оба компьютера работают под управлением Windows XP. Команды tlntadmn не могут быть использованы для удаленного администрирования сервера Telnet, работающего под управлением Windows 2000, с компьютера, работающего под управлением Windows XP.

Чтобы задать режим работы для компьютера, на котором выполняется сервер Telnet

Синтаксис

tlntadmn [\\ удаленный_сервер ] config [mode= {console | stream }]

Параметры \\ удаленный_сервер mode {console | stream } Указывает режим работы. /? Отображает справку в командной строке. Примечания

  • С помощью команд tlntadmn можно удаленно администрировать компьютер, на котором запущен сервер Telnet, если оба компьютера работают под управлением Windows XP. Команды tlntadmn не могут быть использованы для удаленного администрирования сервера Telnet, работающего под управлением Windows 2000, с компьютера, работающего под управлением Windows XP.

Чтобы задать порт Telnet для компьютера, на котором выполняется сервер Telnet

Синтаксис

tlntadmn [\\ удаленный_сервер ] config [port= целое_значение ]

Параметры \\ удаленный_сервер Указывает имя сервера, к управлению которым требуется перейти. Если сервер не указан, используется локальный сервер. port= целое_значение Задает порт Telnet. Порт можно указать с помощью любого целого меньше 1 024. /? Отображает справку в командной строке. Примечания

  • С помощью команд tlntadmn можно удаленно администрировать компьютер, на котором запущен сервер Telnet, если оба компьютера работают под управлением Windows XP. Команды tlntadmn не могут быть использованы для удаленного администрирования сервера Telnet, работающего под управлением Windows 2000, с компьютера, работающего под управлением Windows XP.

Чтобы задать методы проверки подлинности для компьютера, на котором выполняется сервер Telnet

Синтаксис

tlntadmn [\\ удаленный_сервер ] config [sec= [{+ | - }ntlm ][{+ | - }passwd ]]Параметры \\ удаленный_сервер Указывает имя сервера, к управлению которым требуется перейти. Если сервер не указан, используется локальный сервер. sec= [{+ | - }ntlm ][{+ | - }passwd ] Определяет использование проверки подлинности NTML или пароля, или одновременое их применение для проверки подлинности попыток входа. Чтобы использовать конкретный тип проверки подлинности, введите знак (+) перед данным типом проверки. Чтобы предотвратить использование проверки подлинности определенного типа, введите знак (-) перед этим типом. /? Отображает справку в командной строке. Примечания

  • С помощью команд tlntadmn можно удаленно администрировать компьютер, на котором запущен сервер Telnet, если оба компьютера работают под управлением Windows XP. Команды tlntadmn не могут быть использованы для удаленного администрирования сервера Telnet, работающего под управлением Windows 2000, с компьютера, работающего под управлением Windows XP.
  • NTML - это протокол проверки подлинности для транзакций между двумя компьютерами, один из которых или оба находятся под управлением Windows NT 4.0 и более ранних версий. Кроме того, протокол проверки подлинности NTML используется для компьютеров, не входящих в домен, таких как независимые серверы и рабочие группы.

Чтобы задать таймаут простоя сеансов для компьютера, на котором выполняется сервер Telnet

Синтаксис

tlntadmn [\\ удаленный_сервер ] config [timeout= чч : мм : сс ]

Параметры \\ удаленный_сервер Указывает имя сервера, к управлению которым требуется перейти. Если сервер не указан, используется локальный сервер. timeout= чч : мм : сс Задает значение истечения времени в часах, минутах и секундах. /? Отображает справку в командной строке. Примечания

  • С помощью команд tlntadmn можно удаленно администрировать компьютер, на котором запущен сервер Telnet, если оба компьютера работают под управлением Windows XP. Команды tlntadmn не могут быть использованы для удаленного администрирования сервера Telnet, работающего под управлением Windows 2000, с компьютера, работающего под управлением Windows XP.
Примечания
  • Чтобы переключиться с клиента Telnet в режим команд, в командной строке Telnet нажмите сочетание клавиш CTRL+]. Для обратного перехода к клиенту Telnet, нажмите клавишу ENTER.