PortChecker Logo
PortChecker

Порт 3306 — MySQL (TCP)

MySQL

Что такое порт 3306?

База данных MySQL

Это зарегистрированный порт (1024–49151), часто назначаемый сервисам вроде MySQL.  ·  No formal RFC; MySQL Client/Server Protocol

Когда нужен открытый порт 3306?

Open only when an application on a different host must connect to MySQL. For single-server setups (app and database on the same machine), keep port 3306 closed externally and connect via a local socket or 127.0.0.1.

Типичные применения и ПО

  • MySQL Server
  • MariaDB
  • Percona Server
  • WordPress
  • Drupal
  • phpMyAdmin (backend)
  • Laravel
  • Django

Безопасность

Bind MySQL to 127.0.0.1 by setting bind-address in my.cnf unless remote access is explicitly needed. Never expose port 3306 to the internet. For remote access, use an SSH tunnel: ssh -L 3306:localhost:3306 user@server. Grant privileges using least-privilege principles — avoid GRANT ALL and the root account for application connections.

Безопасен ли порт 3306?

Открытый порт увеличивает поверхность атаки. Безопасность зависит от настройки MySQL.

Средний риск

Держите MySQL в актуальном состоянии с патчами безопасности. Требуйте надежной аутентификации и ограничьте доступ до минимально необходимых IP-адресов.

Проверить порт 3306 сейчас

Проверьте доступность порта 3306 на любом хосте.

1-65535

Открытие порта 3306

Чтобы разрешить входящие подключения к порту 3306 (MySQL), настройте брандмауэр и добавьте правило переадресации порта на маршрутизаторе на локальный IP вашего устройства.

Брандмауэр Windows

Откройте Брандмауэр Windows Defender → Дополнительные параметры → Правила для входящих → Новое правило → Порт → TCP → Указанные локальные порты: 3306 → Разрешить подключение → Задайте имя и сохраните.

netsh advfirewall firewall add rule name="Open Port 3306" dir=in action=allow protocol=tcp localport=3306
Linux (UFW / iptables)sudo ufw allow 3306/tcpsudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
Маршрутизатор

Войдите в роутер (192.168.1.1 или 192.168.0.1) → Перенаправление портов → Добавьте новое правило: Протокол TCP, Внешний порт 3306, Внутренний IP: локальный IP устройства, Внутренний порт 3306 → Сохранить.

Как закрыть порт 3306

Если MySQL не нужен, заблокируйте порт в фаерволе или роутере.

Брандмауэр Windows

Чтобы заблокировать порт 3306 в Windows, выполните следующую команду в PowerShell или командной строке (от имени администратора):

netsh advfirewall firewall add rule name="Block Port 3306" dir=in action=block protocol=tcp localport=3306
Linux (UFW / iptables)Выполните: sudo ufw deny 3306/tcpsudo iptables -A INPUT -p tcp --dport 3306 -j DROP
Маршрутизатор

Удалите или отключите правило проброса порта 3306.

Часто задаваемые вопросы

Для чего используется порт 3306?▾

Порт 3306 — стандартный TCP-порт для MySQL. Он используется серверами и приложениями, которым нужно принимать входящие соединения для этого сервиса. Нужен ли он открытым, зависит от того, активно ли вы запускаете сервер MySQL — в противном случае его следует держать закрытым.

Безопасно ли держать порт 3306 открытым?▾

Открытый порт 3306 расширяет поверхность атаки. Если вы не запускаете MySQL активно, закройте порт в брандмауэре и удалите правила переадресации. Если MySQL должен быть доступен, ограничьте доступ до доверенных IP и регулярно обновляйте ПО.