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, який є сучасним стандартом для віддаленого управління серверами.