Про Перевірка портів
Загальний огляд
Інструмент Перевірка портів дає змогу перевірити, чи відкриті або закриті певні TCP-порти на будь-якому публічному хості або IP-адресі. Порти — це логічні кінцеві точки, на яких працюють мережеві сервіси: наприклад, порт 80 для HTTP, порт 443 для HTTPS і порт 22 для SSH. Можливість швидко протестувати доступність портів є критично важливою для системних адміністраторів, розробників та всіх, хто усуває проблеми з мережевим з'єднанням.
Цей інструмент підтримує перевірку до 20 портів одночасно для одного хоста. Він використовує неблокуючі паралельні TCP-з'єднання, щоб перевірити всі запитані порти одразу, тому загальний час перевірки приблизно дорівнює часу найповільнішого окремого порту, а не сумі всіх. Кожен результат містить номер порту, назву відомого сервісу (якщо застосовно), статус відкрито/закрито та затримку з'єднання в мілісекундах.
Ключові можливості
- Перевірка кількох портів — перевіряйте до 20 портів одним запитом, вводячи їх через кому.
- Паралельні з'єднання — усі порти перевіряються одночасно за допомогою неблокуючого
stream_socket_clientзstream_select, результати з'являються за секунди. - Визначення сервісів — автоматично маркує поширені порти (FTP, SSH, SMTP, HTTP, HTTPS, MySQL, PostgreSQL, Redis, MongoDB тощо).
- Вимірювання затримки — показує час з'єднання в мілісекундах для кожного відкритого порту, допомагаючи виявити повільні сервіси.
- Фільтрація безпеки — блокує запити до приватних IP-діапазонів, петлевих адрес та локальних хостів для запобігання зловживанням.
- Очищення введення — автоматично видаляє префікси
http://таhttps://і шляхи, тому можна вставити URL напряму. - Валідація портів — відхиляє нечислові значення та порти поза діапазоном 1–65535 із зрозумілим повідомленням про помилку.
Як користуватися інструментом «Перевірка портів»
- Введіть ім'я хоста або IP-адресу, яку хочете перевірити (наприклад,
google.comабо93.184.216.34). - Введіть один або кілька номерів портів, розділених комами (наприклад,
80, 443, 22, 3306). - Натисніть Перевірити. Інструмент розпізнає хост і відкриє паралельні TCP-з'єднання до всіх зазначених портів.
- Перегляньте результати: для кожного порту показано назву сервісу, статус відкрито/закрито та час відповіді.
- Скористайтеся кнопкою Копіювати або Завантажити TXT, щоб зберегти звіт.
Технічна основа
Інструмент виконує TCP connect scan — найнадійніший спосіб визначити, чи приймає порт з'єднання. Для кожного порту ініціюється повне тристороннє рукостискання TCP (SYN, SYN-ACK, ACK). Якщо рукостискання завершується — порт відкритий; якщо з'єднання відхилено або перевищено тайм-аут у 3 секунди — порт закритий.
Усі з'єднання відкриваються асинхронно за допомогою прапорця PHP STREAM_CLIENT_ASYNC_CONNECT. Один цикл stream_select одночасно стежить за всіма сокетами, позначаючи кожен як доступний для запису (з'єднаний) або виняткований (відхилений). Завдяки цій архітектурі перевірка 20 портів займає приблизно стільки ж часу, як і перевірка одного.
Інструмент також виконує DNS-резолюцію та перевіряє всі отримані записи A та AAAA на належність до зарезервованих діапазонів RFC 1918 та RFC 5737. Якщо будь-яка з отриманих IP-адрес є приватною або зарезервованою, запит відхиляється для запобігання скануванню внутрішніх мереж.
Сценарії використання
- Перевірка розгортання сервера — після запуску нового сервера переконайтеся, що порти веб-сервера (80/443), SSH (22) та бази даних (3306/5432) доступні з інтернету.
- Тестування правил фаєрволу — перевірте, що фаєрвол правильно дозволяє або блокує певні порти після зміни правил.
- Моніторинг стану сервісів — швидко перевірте, чи сервіс припинив прослуховування на очікуваному порті.
- Виявлення блокування портів провайдером — визначте, чи ваш інтернет-провайдер блокує вихідні з'єднання на портах як-от 25 (SMTP) або 445 (SMB).
- Діагностика DevOps — коли мікросервіс не може з'єднатися з іншим сервісом, перевірте, чи цільовий порт відкритий і відповідає.
Конфіденційність та безпека
Перевірки портів виконуються на стороні сервера з інфраструктури Xuvero. Цільовий хост і номери портів, які ви вводите, використовуються виключно для виконання перевірки та не логуються й не зберігаються після завершення запиту. Приватні та локальні адреси заблоковані за замовчуванням для запобігання скануванню внутрішніх мереж. Інструмент виконує стандартний TCP connect — він не надсилає жодних корисних даних прикладного рівня й не намагається експлуатувати сервіси.