Соединение с удаленным портом и установление интерактивного канала связи для передачи команд или получения данных – все это возможно при помощи утилиты telnet. Иногда ее называют универсальным браузером для терминала, потому что программа способна работать с различными протоколами.
Что такое telnet?
Протокол telnet, созданный на основе TCP, позволяет передавать на удаленный сервер простые текстовые команды для ручного управления процессами и включения взаимодействия между ними. Несмотря на повальный переход на SSH, утилита продолжает повсеместно использоваться.
Общий синтаксис telnet:
$ telnet опции хост порт
Под хостом подразумевается удаленный компьютер (домен или IP-адрес), порт – тот порт, через который осуществляется подключение. Перечень опций следующий:
- -4 – вручную включить поддержку стандарта IPv4;
- -6 – то же самое относительно IPv6;
- -8 – применять 8-битную кодировку вроде Unicode;
- -E – отключить поддержку Escape-последовательностей;
- -a – автоматическое подключение под логином из переменного окружения USER;
- -b – использовать локальный сокет;
- -d – активировать режим отладки;
- -p – включить эмуляцию rlogin;
- -l – указание пользователя авторизации.
Перечисленные опции предназначены для подключения к удаленному серверу. Но это лишь начало, далее следует ввод команд для управления процессами. Здесь возможно включение двух различных режимов:
- построчный – сначала строка полностью вводится в терминал на локальном компьютере и только затем целиком отправляется на сервер;
- посимвольный – отправка осуществляется посимвольно, в этом случае критичны любые ошибки ввода, потому что даже Backspace передается в виде определенной комбинации из символов.
Стандартные команды консоли telnet
- CLOSE – отключиться от удаленного сервера;
- ENCRYPT – включить шифрование информации;
- LOGOUT – выйти из программы с закрытием соединения;
- MODE – переключение режима со строчного на символьный или наоборот;
- STATUS – отобразить текущий статус соединения;
- SEND – отправить один из специальных символов telnet;
- SET – установить значение параметра;
- OPEN – открыть соединение с удаленным сервером;
- DISPLAY – отобразить применяемые спецсимволы;
- SLC – изменить используемые спецсимволы.
Это основной перечень команд, более подробно о них написано в официальной документации разработчика программы.
Как установить telnet
Теперь проведем несколько тренировочных подключений, чтобы на практике разобраться в работе утилиты. Но предварительно ее требуется инсталлировать на компьютер (на примере Ubuntu). Для этого используется команда:
$ sudo apt install telnet
По завершении процедуры можно приступать к запуску и использованию.
Проверка доступности сервера
Первая и самая важная команда – это проверка доступности сервера, к которому осуществляется подключение. Она позволяет подтвердить установление соединения. Выглядит она так:
telnet 192.168.1.243
Фактически это аналог PING, поэтому она вводится только при использовании telnet, чтобы перед инициацией других процессов убедиться в том, что сервер воспринимает команды.
Проверка доступности порта
То же относится к режиму проверки порта на удаленном сервере. Это осуществляется командами:
$ telnet localhost 123 $ telnet localhost 22
Первая строка в приведенном примере выдает ответ, что на соединение никто не отвечает. Вторая же инициирует ответ, что доступно соединение по протоколу SSH.
Отладка
Режим отладки востребован в ситуациях, когда пользователю важно видеть подробности работы утилиты (в окне консоли). Для этого команда запуска вводится с префиксом -d:
$ sudo telnet -d localhost 22
Консоль telnet
Встречаются ситуации, когда необходимо передать команды в утилиту telnet, запущенную именно на сервере, а не на локальном компьютере пользователя. В этом случае требуется открыть консоль, для чего используется спецсимвол. По умолчанию это "^[".
Чтобы ввести его, достаточно нажать комбинацию клавиш <Ctrl + [>. После этого на экране будет отображаться приглашение ввода telnet. Сначала рекомендуется посмотреть текущий перечень доступных команд, он отображается после ввода команды <?>. Также на этом этапе есть возможность посмотреть статус подключения:
telnet> status
По желанию можно опробовать другие команды, доступные для ввода в текущей сессии.
Тестирование сайта
Распространенный вариант применения telnet заключается в подключении к определенному сайту через консоль. Страницы отображаются не в привычном «красивом» виде, а списком информации, которая передается с сервера или на него. Пример команды:
$ telnet test-site.ru 80
После подключения достаточно ввести команду /GET, и веб-сервер вернет страницу и заголовки, которые при обычном подключении передаются в браузер.
Подключение к удаленному серверу
Отказ от telnet чаще связывается с тем, что передаваемые команды легко «подслушать» извне. В этом случае появляются риски несанкционированного подключения. Но опробовать такой режим вполне допускается в качестве изучения матчасти. Пример команды:
$ telnet localhost 23
Порт по умолчанию – 23, поэтому команду легко «упростить» и убрать номер. Подключение все равно будет производиться по тому же принципу. После запроса остается ввести логин и пароль доступа, после чего приступать к управлению удаленным компьютером.
Комментарии