Мережеві порти: що це таке, які вони бувають, навіщо потрібні та які мають обмеження
Вступ
Сучасні комп'ютерні мережі побудовані на принципі одночасної роботи великої кількості сервісів та застосунків. Вебсервери, поштові системи, бази даних, VPN-рішення, системи моніторингу та корпоративні сервіси використовують одну й ту саму мережеву інфраструктуру, але при цьому повинні коректно розрізняти мережевий трафік.
Саме для цього використовуються мережеві порти. Вони є невід'ємною частиною протоколів TCP/IP і дозволяють операційним системам визначати, якому саме процесу або службі необхідно передати отримані дані.
Для системних адміністраторів, мережевих інженерів, DevOps-фахівців та спеціалістів з кібербезпеки розуміння принципів роботи портів є базовою компетенцією. Неправильна конфігурація портів може призвести до проблем із доступністю сервісів, зниження продуктивності або навіть до серйозних інцидентів інформаційної безпеки.
У цій статті розглянемо, що таке мережеві порти, які їх типи існують, для чого вони використовуються, які обмеження мають та як правильно працювати з ними в корпоративних мережах.
Що таке мережевий порт
Мережевий порт - це логічний ідентифікатор, який використовується транспортними протоколами TCP та UDP для визначення конкретного застосунку або служби на пристрої.
Якщо IP-адреса визначає комп'ютер або мережевий пристрій, то порт визначає конкретний сервіс на цьому пристрої.
Наприклад:
- IP-адреса: 192.168.1.10
- Порт: 80
- Сервіс: вебсервер HTTP
Комбінація IP-адреси та номера порту формує унікальну точку доступу до мережевого сервісу.
Наприклад:
192.168.1.10:80
або
10.10.1.25:443
Один сервер може одночасно використовувати десятки або навіть сотні портів для різних служб.
Як працюють мережеві порти
Коли клієнт надсилає запит до сервера, він вказує:
- IP-адресу отримувача.
- Номер порту сервісу.
- Транспортний протокол (TCP або UDP).
Наприклад, при відкритті вебсайту браузер зазвичай звертається до:
https://example.com
Фактично відбувається підключення до:
example.com:443
Операційна система сервера отримує пакет, аналізує номер порту та передає дані відповідному процесу.
Схема роботи виглядає так:
Клієнт
│
▼
IP + Port
│
▼
Операційна система
│
▼
Необхідний сервіс
Без механізму портів сервер не зміг би визначити, якій саме програмі необхідно передати отриманий мережевий пакет.
TCP та UDP порти
Мережеві порти використовуються двома основними транспортними протоколами.
TCP-порти
TCP (Transmission Control Protocol) забезпечує:
- гарантовану доставку даних;
- контроль помилок;
- контроль послідовності пакетів;
- підтвердження отримання інформації.
TCP застосовується для:
- вебсайтів;
- електронної пошти;
- баз даних;
- файлових серверів;
- SSH-з'єднань.
Приклади:
80/TCP
443/TCP
22/TCP
3389/TCP
UDP-порти
UDP (User Datagram Protocol) працює швидше за TCP, але не гарантує доставку пакетів.
Використовується для:
- DNS-запитів;
- потокового відео;
- VoIP-телефонії;
- онлайн-ігор;
- систем моніторингу.
Приклади:
53/UDP
123/UDP
161/UDP
Діапазони мережевих портів
Кожен порт має числове значення від 0 до 65535.
Відповідно до класифікації IANA існує три основні категорії.
Well-Known Ports (0–1023)
Це стандартні порти системних служб.
Найпоширеніші:
| Порт | Протокол | |
|---|---|---|
| 20 | TCP | FTP Data |
| 21 | TCP | FTP Control |
| 22 | TCP | SSH |
| 23 | TCP | Telnet |
| 25 | TCP | SMTP |
| 53 | TCP/UDP | DNS |
| 67 | UDP | DHCP |
| 68 | UDP | DHCP Client |
| 80 | TCP | HTTP |
| 110 | TCP | POP3 |
| 143 | TCP | IMAP |
| 443 | TCP | HTTPS |
Registered Ports (1024–49151)
Призначені для застосунків та програмних продуктів.
Приклади:
| Порт | Сервіс |
|---|---|
| 1433 | Microsoft SQL Server |
| 1521 | Oracle Database |
| 3306 | MySQL |
| 3389 | Remote Desktop |
| 5432 | PostgreSQL |
| 5900 | VNC |
Dynamic або Ephemeral Ports (49152–65535)
Використовуються операційною системою тимчасово.
Приклад:
Користувач відкриває вебсайт:
Клієнт: 192.168.1.100:54832
Сервер: 172.217.16.14:443
Порт 54832 буде автоматично обраний системою лише на час сесії.
Найпоширеніші мережеві порти
HTTP - порт 80
Використовується для незашифрованого вебтрафіку.
http://example.com
HTTPS - порт 443
Використовується для захищених вебз'єднань через TLS.
https://example.com
SSH - порт 22
Надає захищений віддалений доступ до серверів.
ssh admin@server
RDP - порт 3389
Використовується для віддаленого підключення до Windows-серверів.
DNS - порт 53
Відповідає за перетворення доменних імен в IP-адреси.
SMTP - порт 25
Передача електронної пошти між серверами.
Перевірка відкритих портів
Linux
Перегляд відкритих портів:
ss -tulnp
або
netstat -tulnp
Перевірка конкретного порту:
nc -zv 192.168.1.10 443
Windows
Перегляд активних портів:
netstat -ano
Пошук процесу:
tasklist /fi "PID eq 1234"
Перевірка доступності порту:
Test-NetConnection 192.168.1.10 -Port 443
Сканування портів
Для аудиту мережі часто використовується Nmap.
Перевірка популярних портів:
nmap 192.168.1.10
Сканування всіх портів:
nmap -p- 192.168.1.10
Визначення сервісів:
nmap -sV 192.168.1.10
Результат:
22/tcp open ssh
80/tcp open http
443/tcp open https
Такі перевірки широко застосовуються під час аудиту безпеки та інвентаризації інфраструктури.
Практичний приклад роботи портів
Розглянемо типовий вебсервер.
На сервері працюють:
22 SSH
80 HTTP
443 HTTPS
3306 MySQL
Користувач відкриває сайт:
https://company.local
Запит надходить на порт:
443/TCP
Адміністратор підключається до сервера:
22/TCP
База даних працює через:
3306/TCP
Кожен сервіс використовує власний порт і не конфліктує з іншими службами.
Обмеження мережевих портів
Попри простоту концепції, порти мають низку важливих обмежень.
Обмежена кількість номерів
Доступно лише:
65535 портів
Для більшості систем цього достатньо, але на високонавантажених серверах можливе вичерпання тимчасових портів.
Один порт - один процес
У більшості випадків один TCP-порт не може одночасно використовуватися двома різними процесами.
Наприклад:
Apache → 80
Nginx → 80
Одночасний запуск призведе до конфлікту.
Типова помилка:
Address already in use
Блокування міжмережевими екранами
Порт може бути відкритий на сервері, але недоступний через:
- Firewall;
- ACL;
- маршрутизатори;
- NAT;
- корпоративні політики безпеки.
Ризики безпеки
Відкритий порт збільшує поверхню атаки.
Наприклад:
- відкритий RDP;
- відкритий Telnet;
- незахищений FTP;
- публічні бази даних.
Саме тому рекомендується відкривати лише ті порти, які дійсно необхідні для роботи сервісів.
Рекомендації щодо безпеки
Мінімізуйте кількість відкритих портів
Принцип мінімальних привілеїв актуальний і для мережевої взаємодії.
Не відкривайте сервіси без потреби.
Використовуйте сучасні протоколи
Замість:
Telnet
FTP
використовуйте:
SSH
SFTP
FTPS
Регулярно виконуйте аудит
Корисні інструменти:
- Nmap;
- Nessus;
- OpenVAS;
- Microsoft Defender Vulnerability Management.
Обмежуйте доступ за IP
Наприклад, SSH доцільно відкривати лише для адміністраторських мереж:
ufw allow from 10.10.0.0/24 to any port 22
Використовуйте VPN
Адміністративні сервіси краще приховувати за VPN-доступом.
Типові помилки адміністраторів
Найчастіше зустрічаються:
- Відкриття всіх портів у Firewall.
- Публікація баз даних в Інтернет.
- Використання стандартних паролів.
- Відсутність моніторингу мережевих з'єднань.
- Використання застарілих протоколів.
- Відсутність сегментації мережі.
- Відсутність журналювання мережевої активності.
Такі помилки суттєво підвищують ризик компрометації інфраструктури.
Висновки
Мережеві порти є фундаментальним елементом архітектури TCP/IP та забезпечують взаємодію між мережевими застосунками і сервісами. Вони дозволяють операційній системі визначати, якому саме процесу необхідно передати отримані дані, а також забезпечують одночасну роботу великої кількості служб на одному сервері.
Розуміння принципів роботи TCP та UDP портів, знання стандартних номерів сервісів, вміння аналізувати мережеві з'єднання та контролювати відкриті порти є обов'язковими навичками для системних адміністраторів, мережевих інженерів, DevOps-фахівців і спеціалістів з інформаційної безпеки.
Правильна конфігурація портів, регулярний аудит мережі та дотримання принципів безпеки дозволяють підвищити надійність інфраструктури, зменшити поверхню атаки та забезпечити стабільну роботу корпоративних сервісів.