Telnet — это сетевой протокол, который дает возможность подключаться к удаленным рабочим станциям или серверам и управлять ими через текстовые команды, для этого он и был разработан в 1969 году. Но Telnet имеет один значительный недостаток — он передает данные в незашифрованном виде, что делает его небезопасным в использовании в современных сетях.
Сегодня многие пользователи переходят на более безопасные протоколы, такие как SSH (Secure Shell), который обеспечивает шифрование данных. В то же время, Telnet по-прежнему может использоваться в образовательных и тестовых целях, а также в тестировании и диагностики сетевого соединения.
В данной статье мы расскажем и на примере рассмотрим процесс установки и использования Telnet в ОС Ubuntu 24.04 LTS. Мы также покажем, как использовать Telnet для проверки открытых портов и тестирования почтовых серверов.
Что такое Telnet?
Telnet — это протокол для удаленного доступа к отдельным устройствам и серверам, позволяющий пользователю отправлять команды на сервер через текстовый интерфейс. Протокол работает по принципу клиент-сервер, где клиент устанавливает соединение с сервером по указанному IP-адресу и порту.
Хотя Telnet часто использовался для удаленного администрирования серверов, сегодня он считается небезопасным из-за отсутствия шифрования данных. Это значит, что любые передаваемые данные, такие как текстовые сообщения или пароли, могут быть перехвачены злоумышленниками. По этой причине рекомендуется использовать SSH для подключения и удаленного управления.
Однако Telnet все еще полезен для таких целей:
-
Тестирования сетевых соединений.
-
Проверки доступности портов.
-
Диагностики почтовых серверов.
-
Использование Telnet для проверки DNS
-
Тестирование HTTP-запросов
Требования для установки Telnet
Перед началом установки Telnet нам необходимо удостовериться, что наша система соответствует следующим требованиям:
-
Операционная система: Ubuntu 24.04 LTS (или другие версии).
-
Права пользователя: Доступ к системному пользователю с правами sudo.
-
IP-адрес: Статический IP-адрес для подключения через Telnet (необязательно, но рекомендуется для стабильной работы).
Установка клиента Telnet
Клиент Telnet необходим для подключения к удаленным системам с использованием Telnet-протокола. Для установки клиента Telnet в Ubuntu 24.04 LTS выполните следующие шаги.
Обновление списка пакетов и установка клиента Telnet:
sudo apt update
sudo apt install telnet -y
Нужно убедиться, что Telnet установлен правильно, введя команду:
telnet
Если вы увидите приглашение с параметрами командной строки Telnet, это значит, что установка прошла успешно, как в нашем случае.
Установка сервера Telnet
Сервер Telnet необходим, если вы хотите принимать входящие соединения через Telnet. Этот шаг может понадобиться, если вы планируете использовать Telnet для удаленного управления системой.
Установите сервер Telnet:
sudo apt install telnetd -y
Откройте файл конфигурации inetd.conf для редактирования:
sudo nano /etc/inetd.conf
Найдите строку, связанную с Telnet, и убедитесь, что она не закомментирована. Если строка закомментирована (# в начале), удалите этот символ:
telnet stream tcp nowait telnetd /usr/sbin/tcpd /usr/sbin/in.telnetd
Сохраните изменения и перезапустите службу:
sudo systemctl restart inetd.conf
Теперь сервер Telnet готов принимать соединения
Тестирование соединения с Telnet-сервером
Для тестирования соединения с сервером Telnet выполните следующие шаги:
На удаленной системе откройте терминал и выполните команду для подключения к серверу Telnet:
telnet
Если сервер Telnet настроен правильно, нам нужно убедиться в этом получив приглашение для ввода логина и пароля.
Вводим данные пользователя, у которого есть права в системе. Если все прошло успешно, то мы сможем вводить команды на удаленной системе через telnet.
Использование Telnet для проверки открытых портов
Telnet можно использовать для проверки открытых портов на удалённой системе. Это полезно для диагностики сетевых проблем и проверки доступности сервисов.
Для того чтобы проверить открытые порты, выполните команду:
telnet <номер порта>
Если порт открыт и доступен, вы увидите успешное соединение. Если порт закрыт, система вернет ошибку подключения.
Пример проверки порта 80 на удаленной системе:
telnet 192.168.1.1 80
Если порт открыт, вы получите ответ от сервера, что соединение установлено. Если нет, система сообщит, что соединение не удалось.
Но проверять открыт порт или нет можно не только на удаленной системе,
Проверка почтового сервера с использованием Telnet
Telnet можно использовать для проверки работы почтовых серверов, таких как SMTP. Это помогает удостовериться, что сервер правильно принимает и обрабатывает почтовые сообщения.
Для подключения к почтовому серверу (SMTP) выполните команду:
telnet 25
Как только мы подключились к серверу - выполняем команду EHLO:
EHLO example.com
Далее протестируйте отправку письма с помощью команд:
MAIL FROM:<отправитель@example.com>
RCPT TO:<получатель@example.com>
DATA
Напишите текст письма и завершите ввод, нажав Ctrl+D.
Эти команды помогут проверить, правильно ли работает SMTP-сервер и возможно ли отправлять почту.
Тестирование HTTP-запросов
Telnet может помочь при отладке веб-серверов. Например, вы можете отправить HTTP-запрос вручную:
telnet www.example.com 80
После установления соединения вручную введите HTTP-запрос:
GET / HTTP/1.1
Host: www.example.com
Нажмите Enter дважды, чтобы увидеть ответ сервера.
Использование Telnet для проверки DNS
Хотя это не основной способ работы с DNS, Telnet может помочь при проверке DNS-запросов через порты 53 (UDP) и 953 (TCP). Например:
telnet dns.example.com 53
Это может быть полезно для диагностики проблем с DNS-сервером.
Заключение
Telnet по-прежнему может быть полезен для тестирования и диагностики сетевых соединений. Однако из-за отсутствия шифрования он не подходит для удаленного управления серверами в реальных условиях. Рекомендуется использовать Telnet только в образовательных или тестовых целях. Для обеспечения безопасности данных лучше всего использовать SSH, который является современным стандартом для удаленного управления серверами.