¿Para qué se usa el puerto 3306?
Es el puerto predeterminado de las bases de datos MySQL y MariaDB.
¿Debe estar abierto el puerto 3306?
No lo expongas a internet. Mantén este puerto en redes privadas y accede a él mediante una VPN o un túnel SSH. Vincula MySQL a 127.0.0.1 o a una IP privada y conéctate de forma remota a través de un túnel SSH.
Ver qué escucha en el puerto 3306
# Linux
sudo ss -tlnp | grep ':3306 '
# macOS
sudo lsof -nP -i TCP:3306 -sTCP:LISTEN
# Windows (PowerShell)
Get-NetTCPConnection -LocalPort 3306 -State Listen
Abrir o bloquear el puerto 3306 en un firewall
# Ubuntu / Debian (ufw)
sudo ufw allow 3306/tcp
sudo ufw deny 3306/tcp
# Windows (PowerShell, as administrator)
New-NetFirewallRule -DisplayName "Port 3306" -Direction Inbound -Protocol TCP -LocalPort 3306 -Action Allow
En servidores en la nube, abre también el puerto en el grupo de seguridad o en el firewall de red del proveedor. En casa, un servicio detrás de un router necesita una regla de reenvío de puertos hacia la IP local del dispositivo.
Probarlo desde fuera
Un puerto puede estar abierto en el servidor pero bloqueado más arriba en la red. El Comprobador de puertos se conecta desde internet, así que muestra lo que ve el resto del mundo. Desde tu propio equipo, usa nc -vz example.com 3306 (macOS/Linux) o Test-NetConnection example.com -Port 3306 (Windows).
Comprobador de puertos
Comprueba si un servidor acepta conexiones en puertos específicos —web (80/443), correo (25/587/993), SSH, bases de datos o escritorio remoto— y mira cuáles están abiertos, cerrados o filtrados por un cortafuegos.