Перейти к содержимому
Skip to content
← Все статьи

Открытые порты сервера: как проверить и почему это важно для безопасности

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

Как работают сетевые порты

IP геолокацию идентифицирует сервер в сети, а порт — конкретное приложение на этом сервере. Вместе они образуют сокет (socket), например 93.184.216.34:443. Всего существует 65 535 портов, разделённых на три диапазона:

ДиапазонНазваниеОписание
0–1023Well-known portsЗарезервированы для стандартных сервисов (HTTP, SSL/TLS проверку, SSH, FTP)
1024–49151Registered portsЗарегистрированы за конкретными приложениями (MySQL, PostgreSQL, Redis)
49152–65535Dynamic portsИспользуются для временных соединений

Популярные порты и сервисы

ПортПротоколСервисНужен публично?
22TCPSSHТолько с ограничением по IP
25TCPSMTPТолько для почтовых серверов
53TCP/UDPDNSТолько для DNS-серверов
80TCPHTTPДа (редирект на HTTPS)
443TCPHTTPSДа
3306TCPMySQLНет — только localhost
5432TCPPostgreSQLНет — только localhost
6379TCPRedisНет — только localhost
8080TCPHTTP альтернативныйЗависит от случая
27017TCPMongoDBНет — только localhost

Почему открытые порты опасны

Расширение поверхности атаки

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

Типичные атаки через порты

Как проверить открытые порты

Изнутри сервера

# Все прослушиваемые порты
ss -tlnp
# или
netstat -tlnp

# Конкретный порт
ss -tlnp | grep :3306

Снаружи (сканирование)

# nmap — сканирование популярных портов
nmap example.com

# Конкретные порты
nmap -p 22,80,443,3306,6379 example.com

# Определение версий сервисов
nmap -sV example.com

Онлайн-инструменты

Для быстрой проверки без установки nmap используйте онлайн-инструменты проверки портов. Enterno.io предоставляет ping-инструмент с возможностью проверки конкретных TCP-портов.

Как защитить открытые порты

1. Firewall (iptables / ufw / firewalld)

Основной инструмент защиты — firewall. Принцип: запретить всё, разрешить только необходимое.

# UFW (Ubuntu)
ufw default deny incoming
ufw allow 80/tcp
ufw allow 443/tcp
ufw allow from 1.2.3.4 to any port 22   # SSH только с вашего IP
ufw enable

2. Привязка к localhost

Сервисы, не требующие внешнего доступа, должны слушать только на 127.0.0.1:

# MySQL: my.cnf
bind-address = 127.0.0.1

# Redis: redis.conf
bind 127.0.0.1

# PostgreSQL: postgresql.conf
listen_addresses = 'localhost'

3. Смена стандартных портов

Смена порта SSH с 22 на нестандартный (например, 2222) не является полноценной защитой, но значительно снижает количество автоматизированных атак.

4. Fail2ban

Fail2ban анализирует логи и блокирует IP-адреса после нескольких неудачных попыток подключения:

# Установка
apt install fail2ban

# Проверка статуса
fail2ban-client status sshd

5. VPN / SSH-туннели

Для административных интерфейсов (панели управления, БД, мониторинг сайтов) используйте VPN или SSH-туннели вместо открытия портов в интернет.

Чек-лист безопасности портов

Проверьте ваш сайт прямо сейчас

Проверить →
Другие статьи: Безопасность
Безопасность
Безопасность cookies: HttpOnly, Secure, SameSite
14.03.2026 · 11 просм.
Безопасность
WAF: что это и как защищает сайт
14.03.2026 · 12 просм.
Безопасность
Заголовки безопасности: полный гайд
14.03.2026 · 16 просм.
Безопасность
Безопасность API: лучшие практики защиты
11.03.2026 · 15 просм.