Тарифы Услуги Сим-карты

Наиболее часто используемые команды Telnet. Что такое Telnet

Как вы уже могли убедиться, если читали мой пост о настройке 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 представляет собой протокол сети, основанный на тексте, который используется для доступа к удаленным компьютерам с использованием TCP / IP.

Он был создан и запущен в 1969 году – можно сказать, что это был первый интернет.

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

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

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

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

Сегодня Telnet принес многие важные изменения. Теперь есть возможность подключения к серверу одновременно нескольким пользователям.

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

Этот компьютер не нуждается в мощном аппаратном обеспечении, вам понадобится только подключение к сети и текстовый интерфейс.

Что такое сервер Telnet в Windows 7 – Windows 10

В операционной системе Windows 7 – Windows 10 можете добавить две функции:

  • Telnet сервер — если вы установите эту функцию, то можете настроить компьютер для работы в качестве сервера. Это значит, что ваш компьютер будет настроен на входящие соединения и позволит другим использовать его. Если у вас брандмауэр отключен, и есть публичный IP адрес, то любой человек в мире может контролировать ваш компьютер удаленно с помощью клиента Telnet.
  • Клиент Telnet — это позволит вам подключиться через Telnet с любого сервера, используя только окно команд.

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

Хотя Telnet с момента появления очень изменился, технологии по-прежнему имеет слабые стороны.

Хуже всего с безопасностью. Он передает и принимает данные в текстовом режиме без использования шифрования.

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

Каждый кто знает, как использовать отслеживание сетевых соединений будет иметь возможность увидеть все передаваемые данные.


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

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

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

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

Зачем использовать Telnet

Теперь, когда вы немного знаете историю Telnet и что он является очень небезопасным протоколом, но при всем этом все-таки им пользуется – почему.

  • Старые сервера, по-прежнему используют этот протокол для удаленных подключений. До сих пор где-то есть еще несколько старых серверов UNIX, и все еще есть люди, работающие с Telnet для доступа к ним.
  • Некоторые сетевые устройства, такие как маршрутизаторы Cisco позволяют Telnet подсоединятся к ним. В них можно настроить использование клиента.
  • Основная причина, почему люди до сих пор его используют: посмотреть текст, играть в игры, проверить прогноз погоды и многое другое.
  • Некоторые люди до сих пор используют Telnet CPC для управления и подключения к информационным системам и текстовым дискуссиям. Например, на форумах нет ничего, кроме текста. Даже изображения или графика не нужны. Поэтому, есть все еще много активных сообществ в сети.
Надеюсь вы получили базовые знания о Telnet — этот протокол является в современном мире своего рода динозавром, который коренным образом изменился с момента рождения.

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

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

Раньше telnet часто использовался для того чтобы управлять ПК с операционной системой «Линукс».

А сейчас с помощью этой же утилиты тестируют сеть, проверяют порты, управляют роутерами и другими IoT-устройствами.

Содержание:

Особенности утилиты

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

Например, получать доступ к POP3, HTTP, IRC или SMTP.

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

Синтаксис команд telnet при подключении к удалённому компьютеру выглядит следующим образом: $ telnet (опции) (хост) (порт).

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

  • -4 и -6 обеспечивают принудительное использование адресов ipv4 и ipv6, соответственно;
  • -8 даёт возможность использования 8-битной кодировки;
  • -Е отключает поддержку escape-последовательностей;
  • -a автоматически регистрирует пользователя в удалённой системе;
  • -d включает отладочный режим;
  • -p включает эмуляции rlogin;
  • -e устанавливает начальный управляющий символ;
  • -l авторизует пользователя в системе.

После того как соединение с удалённым хостом установлено утилита telnet начинает работу в одном из двух режимов – построчном или посимвольном.

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

Недостатком такого построчного режима является отсутствие его поддержки некоторыми сервисами. В то время как посимвольный можно применять в любом случае.

Однако при его использовании вся информация отправляется на моментально.

И, если пользователь допустил ошибку, исправить её будет невозможно – ведь даже пробелы и Backspace отправляются на сервер в виде символов.

Следует знать: При использовании протокола telnet отсутствует возможность шифрования передачи информации. Все данные отправляются напрямую и могут быть перехвачены посторонним пользователем. И передавать их таким способом не рекомендуется – желательно применять для этого защищённый сетевой протокол Secure Shell.

Основные команды

Работая с протоколом telnet, пользователь вводит в консоли соответствующие команды. К самым популярным относят следующие:

  • OPEN (название ПК) (порт). Позволяет обеспечить связь с компьютером, имя которого указано в команде. Если не указывать порт, утилита попытается использовать номер, выбранный по умолчанию. Иногда вместо имени ПК указывают его ;
  • DISPLAY (аргумент). Команда для отображения полного или частичного набора параметров утилиты telnet;
  • CLOSE. Предназначена для закрытия сессии «телнет» и возвращения системы в командный режим;
  • QUIT. Команда для завершения всех открытых соединений и выведения из telnet;

Рис. 2. Использование команды Quit в клиенте MS Telnet.

  • MODE TYPE. Используется для управления одним из двух вариантов режима ввода (посимвольным или построчным). При этом удалённому компьютеру отправляется запрос на переход в определённый режим, и, если он поддерживается сервисом, обеспечивается соответствующее переключение;
  • STATUS. Команда, с помощью которой отображается текущий статус утилиты, имя и режим обмена;
  • ? (команда). Сообщает информацию о соответствующей командной последовательности. Нужна в тех случаях, когда пользователь собирается применить незнакомую ему команду;
  • ! (команда). Выполняет командную последовательность на локальной системе;
  • SEND ARGUMENTS. Посылает символьные аргументы удалённому ПК;
  • ESCAPE. Отправляет один из escape-знаков типа запятой, скобки или символа «карет» (^);
  • SYNCH. Служит для отправления synch-последовательности, позволяющей отменить все набранные, но ещё не отправленные команды. Используется только в построчном режиме;
  • BRK . Отправление break-последовательности при нажатии клавиши Break.

Все эти команды являются основными, хотя общее их количество намного больше. Однако из-за достаточно редкого применения этой утилиты полный их перечень проще всего найти, введя в терминале HELP .

А, после вывода на экран полного списка, получить справочную информацию о каждой командной последовательности с помощью команды «?».

Хотя, например, для клиента telnet в Windows перечень может оказаться сокращённым.

Рис. 3. Список команд telnet в клиенте Microsoft.

  • Системное администрирование
  • Недавняя крупнейшая DDoS атака на DNS-серверы компании Dyn на Хабре . Особенностью этого блэкаута стала широкое применение http запросов c IoT устройств и открытый 23-й tcp порт, используемый службой telnet .


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

    Теоретический минимум

    Уязвимость CVE-2016-1000245 - это просто караул. На всех девайсах один и тот же рутовый пароль xc3511, который нельзя изменить так как на системе нет команды passwd . Служба telnet включена и из настроек никак не отключается, разве что удалить инит скрипт из /etc/init.d/rcS .


    /etc $ cat passwd root:absxcfbgXtb3o:0:0:root:/:/bin/sh /etc $ cat passwd- root:ab8nBoH3mb8.g:0:0::/root:/bin/sh
    All internet-capable XiongMai Technology boards running the DVR/NVR CMS (Also known as
    NetSurveillance) enable the telnet service to run on the primary ethernet interface. This service
    is run via /etc/rcS and cannot be disabled. The user "root" has a hardcoded and immutable
    password of xc3511. These systems do not have the "passwd" tool installed and the root
    password cannot be changed from command line nor from the web interface.

    Уязвимость CVE-2016-1000246 не уступает первой. Можно обойти ввод учетной записи и пароля, если зайти через http:///DVR.htm .


    Many known XiongMai DVRs, NVRs and IP Cameras run "CMS" (also called NetSurveillance) built by XM Technologies. This software is also used by all downstream vendors of XiongMai Technologies. The login page for these devices can be bypassed by simply changing the from http://_IP_/Login.htm to http://_IP_/DVR.htm . This allows you access to view all the camera systems without authentication. Furthermore, there is no logging on the system so user management is not possible. The web-server version on all affected products is the same; “uc-httpd”. All products currently affected by CVE-2016-1000245 are also vulnerable to the authentication bypass.

    Надеюсь, что в наших аэропортах не установлены эти самые XiongMai и Dahua .

    Итоги

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


    С моего забора вижу так. Во-первых , основная вина на горе-производителях дырявых IoT устройств и встроенных систем. Все эти XiongMai и Dahua . С опозданием, но производитель отзывает из продажи IP-камеры . Однако, беглый обзор новостей показывает, что PR-отделы китайских компаний и сотрудники министерства коммерции не даром едят свой хлеб.


    Мне это отделение известно! Там кому попало выдают паспорта!

    Во-вторых , конечно виноваты регулирующие органы - те, кто их сертифицирует и дает положительное заключение. Из отчета Rapid7.


    These results all speak to a fundamental failure in modern internet engineering. Despite calls from the Internet Architecture Board, the Internet Engineering Task Force, and virtually every security company and security advocacy organization on Earth, compulsory encryption is not a default, standard feature in internet protocol design. Cleartext protocols “just work,” and security concerns are doggedly secondary.

    В-третьих , подрядчики и интеграторы, которые засадили весь мир этими CCTV камерами.
    Если не принять законодательные меры, регулирующие ИТ безопасность интернет-утюгов и видеокамер, то блэкауты станут все чаще и круче, как кайдзю.





    P. S. Пока набирал текст, возникло сильное желание - проверить домашний роутер nmap-ом и прочими инструментами. Проверил и успокоился, но видимо ненадолго.

    Использованные материалы

    1. W. Richard Stevens TCP/IP Illustrated, Volume 1, The Protocols, 1994.

    Теги:

    • linux
    • telnet
    • botnet
    • honeypot
    Добавить метки

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

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


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

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

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

    $ telnet localhost 123 $ telnet localhost 22

    $ telnet localhost 123

    $ telnet localhost 22


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

    3. Отладка

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

    $ sudo telnet -d localhost 22

    $ sudo telnet - d localhost 22

    4. Консоль telnet

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


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

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

    telnet> status

    telnet > status


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

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

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

    $ telnet opennet.ru 80

    $ telnet opennet . ru 80


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