Light-electric.com

IT Журнал
56 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Telnet client linux

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

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

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

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

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

Для этого не обязательно применять 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.

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

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

telnet opennet.ru 80

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

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

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

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

telnet localhost 23

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

Читать еще:  Системная информация linux

Выводы

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

telnet(1)

НАЗВАНИЕ

telnet — пользовательский интерфейс к удаленной системе, использующий протокол TELNET

СИНТАКСИС

ОПИСАНИЕ

Команда telnet используется для связи с другим хостом по протоколу TELNET.

Файлы

Переменные среды

Команда telnet использует как минимум следующие переменные среды: HOME, SHELL, USER, DISPLAY и TERM. Другие переменные среды можно передать на удаленный компьютер с помощью опции TELNET ENVIRON.

ИСПОЛЬЗОВАНИЕ

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

Опции

telnet воспринимает следующие опции:

«), если другой символ не указан опцией -e.

После установки (открытия) соединения, TELNET переходит в «режим ввода». TELNET попытается установить опцию LINEMODE (построчный режим). Если это не удастся сделать, TELNET перейдет в один из двух режимов ввода: либо в «посимвольный» режим («character at a time» mode), либо в «старый построчный» режим («old line by line» mode), в зависимости от того, какой из них поддерживается удаленной системой.

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

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

В «старом построчном» режиме текст будет отображаться локально, но (обычно) только законченные строки будут посылаться на удаленный хост. Для включения и отключения режима локального отображения можно использовать «локальный символ отображения» («local echo character», первоначально — «^E«), его имеет смысл использовать только для ввода паролей, чтобы пароль не отображался.

Если опция LINEMODE установлена или переключатель localchars имеет значение TRUE (это значение устанавливается по умолчанию для «старого построчного» режима; см. ниже), пользовательские символы quit, intr и flush будут перехватываться локально и посылаться как последовательности протокола TELNET на удаленную машину. Если когда-либо ранее была установлена опция LINEMODE, то вводимые пользователем символы susp и eof тоже будут посылаться как последовательности протокола TELNET; quit будет посылаться как TELNET ABORT, а не как BREAK. Имеются опции (см. переключатели autoflush и autosynch ниже), при установке которых данное действие подавляет весь дальнейший вывод на терминал (пока удаленный хост не подтвердит прием последовательности TELNET) и подавляет предыдущий ввод с терминала (в случае quit и intr).

После соединения с удаленным хостом в командный режим telnet можно войти, введя «управляющий символ» TELNET (изначально — «^[«).

При работе в командном режиме поддерживаются обычные соглашения по редактированию для терминала.

Команды

Поддерживаются следующие команды TELNET, причем можно набирать только начальную часть команды, достаточную для ее однозначного определения (это же истинно и для аргументов команд mode, set, toggle, unset, slc, environ и display).

close Закрывает сеанс TELNET и возвращается в командный режим. display аргумент . Показывает значения всех или некоторых установок и переключателей. mode тип В зависимости от состояния сеанса TELNET, аргумент тип может иметь одно из представленных ниже значений. У удаленного хоста будет запрошено разрешение на переход в требуемый режим. Если удаленный хост способен перейти в этот режим, он перейдет в него.

Information Security Squad

stay tune stay secure

?♂️ 5 Утилит Linux для проверки сетевого подключения

Хотите знать, как проверить соединение между двумя конечными точками сети?

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

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

Как бы то ни было, вам помогут следующие утилиты / команды.

Они протестированы на CentOS 7.x, и я не вижу причин им не сработать также на другом дистрибутиве Linux.

Давайте исследуем их по порядку…

1 telnet

Одна из широко используемых команд для проверки необходимых подключений между серверами — IP-адресом другого сетевого устройства.

Синтаксис команды прост.

Допустим, вы хотите проверить, можете ли вы подключиться к порту 8080 по IP-адресу 10.0.0.1; тогда команда будет такой:

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

В большинстве случаев telnet должен помочь.

Однако, если вам нужен какой-то другой вариант, вот несколько альтернатив telnet.

2 ncat или nc

Ncat (a.k.a. nc) — мощная сетевая утилита со многими функциями, такими как привязка и принятие соединения, удаленное выполнение команд, запись и чтение данных и т. д.

Она работает как на IPv4, так и на IPv6.

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

Давайте рассмотрим пример тестирования порта 443 на itsecforu.ru

Как уже упоминалось, вы также можете использовать nc для привязки соединения для прослушивания определенного порта.

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

Чтобы начать прослушивание порта:

Это свяжет порт с заданным номером.

Если ncat не установлен, вы можете сделать это с помощью yum install nc на серверах CentOS / RHEL.

Полезные статьи о использовании и описании команды netcat:

3 wget

wget — полезная команда для загрузки / тестирования HTTP, HTTPS и FTP.

Если вы работаете веб-инженером или часто сталкиваетесь с проблемами, связанными с Интернетом, то wget — ваш надежный товарищ и друг.

Читать еще:  1с предприятие linux

Тестирование с использованием wget простое и быстрое.

Вот пример тестирования tools.itsecforu.ru

Если он показывает connected, значит, проблема с подключением отсутствует.

4 curl

Curl — это многоцелевой инструмент.

Знаете ли вы, что вы можете использовать подключение по telnet к порту с помощью curl?

Ну, теперь вы знаете.

Ниже приведен рабочий пример.

И, когда нет проблем с портом прослушивания или брандмауэром, вы увидите, что-то вроде такого вывода.

Вы также можете использовать curl для загрузки данных. Он поддерживает несколько протоколов — HTTP, HTTPS, FTP, IMAP, LDAP, POP3, SCP, SFTP, GOPHER и т. д.

Интересные статьи про инструмент Curl

5 nmap

О нем мы говорили тут миллион раз

И наверное этот инструмент не нуждается в представлении, но всеже.

Популярный инструмент с сотнями функций.

Часто он рассматривается как инструмент безопасности.

Nmap позволяет тестировать один IP / порт или в диапазоне.

Чтобы проверить один порт

Пример тестирования порта 443 на siterelic.com

Посмотрите на столбец состояния.

Если вы видите open, значит, соединение в порядке.

И, если состояние filtered, это означает, что подключение не существует.

Некоторые полезные статьи по Nmap

Заключение

Telnet постепенно отключается в последней версии Linux.

Но всегда есть вышеупомянутые альтернативы telnet.

How to Install Telnet Client on RHEL 6/7, CentOS 6/7, Oracle Linux 6/7

Telnet is one of the most frequently used software by the system administrator, program developers and anyone who needs to use the application or data that is located in a particular host computer.

It is a network protocol used on the internet or a local area network to provide text-oriented interactive bidirectional communication facility using a virtual terminal connection.

Telnet client is not installed automatically on all linux distribution with a minimum installation.

Telnet has two different packages which are telnet client and telnet server package. If you do a “yum install telnet” it will only contain client telnet program.

This article explain how to install telnet client program and tested on various linux platform.

How to Install Telnet Client on RHEL 6/7, CentOS 6/7, Oracle Linux 6/7

1. Issue the following commands to confirm that telnet is installed or not :

If telnet client does not installed, it should return something like :

2. Verify telnet client using which command :

3. Issue the following command to install telnet client :

4. If telnet client installed, it should return something like :

Related Posts

Question : When i try to perform the troubleshooting using telnet command, the following error…

Webmin is a free software that is used by system administrators for system administration and…

Wget is a free network utility to download files from the Web using http and…

In this post, i will share on how to install GNOME Desktop on Linux CentOS…

Perl is an interpreted language that is very popular in the Unix community because it…

Post navigation

4 comments

Lucas

Thank you – worked like a charm

Kindly help. Below is the error :
[sam@xxxxxx

]$ yum install telnet -y
Loaded plugins: fastestmirror, langpacks
You need to be root to perform this command.
[sgunjan@inmum0931

]$ sudo yum install telnet -y
Loaded plugins: fastestmirror, langpacks
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was
14: HTTP Error 407 – Proxy Authentication Required
https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5/repodata/repomd.xml: [Errno 14] curl#22 – “HTTP returned error”
Trying other mirror.
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=extras&infra=stock error was
14: HTTP Error 407 – Proxy Authentication Required
localrepo | 3.6 kB 00:00:00
http://repo.mysql.com/yum/mysql-connectors-community/el/7/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 407 – Proxy Authentication Required
Trying other mirror.
http://repo.mysql.com/yum/mysql-tools-community/el/7/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 407 – Proxy Authentication Required
Trying other mirror.
http://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 407 – Proxy Authentication Required
Trying other mirror.
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=updates&infra=stock error was
14: HTTP Error 407 – Proxy Authentication Required
Determining fastest mirrors

One of the configured repositories failed (Unknown),
and yum doesn’t have enough cached data to continue. At this point the only
safe thing yum can do is fail. There are a few ways to work “fix” this:

1. Contact the upstream for the repository and get them to fix the problem.

2. Reconfigure the baseurl/etc. for the repository, to point to a working
upstream. This is most often useful if you are using a newer
distribution release than is supported by the repository (and the
packages for the previous distribution release still work).

3. Disable the repository, so yum won’t use it by default. Yum will then
just ignore the repository until you permanently enable it again or use
–enablerepo for temporary usage:

4. Configure the failing repository to be skipped, if it is unavailable.
Note that yum will try to contact the repo. when it runs most commands,
so will have to try and fail each time (and thus. yum will be be much
slower). If it is a very temporary problem though, this is often a nice
compromise:

yum-config-manager –save –setopt=.skip_if_unavailable=true

Cannot find a valid baseurl for repo: base/7/x86_64

Telnet client linux

OpenNET

Издательство «БИНОМ. Лаборатория знаний»

Интересное

13.3. Программы telnet и ftp

Глава 13. Выход в локальные сети

13.3. Программы telnet и ftp

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

13.3.1 Программы telnet и rlogin

Для того чтобы воспользоваться программой telnet , вам необходимо знать имя или IP-адрес удаленного компьютера, работающего под управлением ОС типа UNIX, на котором для вас открыт пользовательский бюджет. Предположим для примера, что на компьютере linux2 имеется пользователь user5, пароль которого вам известен. В таком случае вы можете дать команду

Читать еще:  Linux все версии

[user]$ telnet linux2

Если программе удалось подключиться к указанному компьютеру, на экране появится сообщение «Connected to server linux2» и приглашение к входу в систему, как если бы вы сидели за терминалом компьютера linux2. Вводите имя (user5) и пароль, и вы будете работать на этом компьютере.

Команда rlogin может быть использована для выхода на удаленный компьютер вполне аналогично команде telnet , хотя лучше сразу указать в командной строке имя пользователя:

[user]$ rlogin -l user5 linux2

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

Когда вы работаете с программой telnet , вы полностью работаете на удаленном компьютере: команды выполняются в его оперативной памяти, вы видите (по команде ls ) каталоги и файлы на дисках удаленного компьютера и т. д. Только вывод результатов осуществляется на ваш монитор. В рамках программы telnet невозможно, например, открыть для просмотра файл, расположенный на локальном диске. Ваш компьютер выполняет только роль удаленного терминала. Если же вы хотите организовать обмен файлами между вашим компьютером и удаленным, можно воспользоваться программой ftp .

13.3.2 Программа ftp

Программа ftp — это пользовательский интерфейс к стандартному протоколу передачи файлов по Интернету — File Transfer Protocol. Программа позволяет передавать файлы на удаленный компьютер и получать файлы с удаленного компьютера. Однако, введя команду ftp , вы запускаете только клиентскую программу. Для того чтобы получить доступ к файлам удаленного компьютера, на нем должен быть запущен ftp-сервер. Кроме того, необходимо знать либо имя и пароль пользователя, либо ftp-сервер должен разрешать анонимный доступ. Предположим, что эти условия выполнены и вы запустили программу ftp (без параметров). Вы увидите приглашение интерпретатора команд этой программы:

Если ввести знак вопроса, программа выдаст перечень возможных команд. Первая команда, которую нужно в этом случае ввести, — команда open , после которой надо указать сетевое имя компьютера, на котором запущен ftp-сервер. Если анонимный доступ к этому серверу разрешен, то вы получите запрос на ввод имени и пароля пользователя. По команде pwd можно узнать имя текущего каталога на удаленном компьютере, а по команде dir — вывести список файлов и подкаталогов этого каталога. Команда cd имя_каталога используется для смены текущего каталога на удаленном компьютере.

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

Если вы хотите выполнить какую-то команду на локальном компьютере (например, выяснить имя текущего каталога), надо дать соответствующую команду, перед которой поставить восклицательный знак:

! — это команда интерпретатора, вызывающая новый экземпляр оболочки shell локального компьютера. Первый аргумент, следующий за ! , должен быть командой оболочки, а все остальные аргументы — аргументами вызываемой команды. Для смены текущего каталога на локальном компьютере имеется специальная команда lcd (очень полезная, поскольку часто до запуска ftp забываешь перейти в тот каталог, куда хочешь скопировать файл с удаленного компьютера; не выходить же из-за этого из программы ftp ).

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

ftp > put имя_файла

(или ее синоним send ), а для копирования файла с удаленного компьютера в текущий каталог на локальном диске — команда

ftp > get имя_файла

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

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

Перед тем, как начать пересылку файлов, следует еще выполнить одну из команд, определяющих режим пересылки: ascii или binary . По умолчанию программа использует режим «ascii», и это вполне допустимо при пересылке текстовых файлов, но если вы собираетесь передать или получить исполняемый файл, то необходимо задать режим «binary». Процесс пересылки файлов можно прервать с помощью комбинации клавиш + .

Пока вы находитесь в программе ftp , вы можете выполнить некоторые операции с файлами и каталогами на удаленном компьютере (конечно, для этого надо иметь соответствующие права). По команде

ftp > rename from_name to_name

осуществляется переименование файла или каталога; команда

ftp > mkdir name

создает каталог, а

ftp > delete name

удаляет файл или каталог. Еще одна интересная команда — system, позволяет выяснить тип операционной системы на удаленном компьютере. Ну, и наконец, команда close (или disconnect ) позволяет завершить сеанс работы с удаленным компьютером, не выходя из программы ftp (т. е. предполагается, что после этого вы снова дадите команду open , например, для соединения с другим компьютером). Если же вы хотите вообще выйти из программы, то надо дать команду bye .

Я думаю, что приведенных здесь сведений вполне достаточно для успешной работы с программой ftp (для копирования файлов с удаленного или на удаленный компьютер, на котором запущен ftp-сервер). С другими возможностями этой очень полезной и широко применяемой программы вам придется знакомиться самостоятельно (вернее, с помощью man-страниц и системы info ).

0 0 голоса
Рейтинг статьи
Ссылка на основную публикацию
ВсеИнструменты