Saltar al contenido
Consultar y abrir un puerto

Puerto 3306: uso seguro del puerto de MySQL y MariaDB

El puerto 3306 es el puerto predeterminado de MySQL y MariaDB y utiliza TCP. La herramienta te muestra los datos principales y genera comandos de firewall para limitar el acceso a determinadas direcciones IP.

Creado por Justin Schuessler

Prueba los comandos directamente en tu propio VPS, con acceso root y tu propio firewall.

Añade varios puertos, uno tras otro, hasta 12.

O elige una plantilla

Puertos

3306/TCPMySQL / MariaDB

Bases de datos · Puerto registrado · Capa OSI 7

Conexiones a MySQL y MariaDB. Si la aplicación está en el mismo servidor, no hace falta abrir el puerto.

IANA: registrado oficialmente como mysql

No lo expongas a Internet: permite el acceso al puerto solo desde una dirección IP concreta o accede mediante una VPN o un túnel SSH.

Regla de firewall (entrante)

Al menos un puerto no debería estar abierto a todo el mundo: elige «IP específica».

Comandos de firewall

Abrir puerto

sudo ufw allow 3306/tcp
Comprobar puerto
Notas sobre ufw

Para Ubuntu y Debian. ufw crea la regla para IPv4 e IPv6. Si ufw aún está desactivado, permite primero SSH (sudo ufw allow 22/tcp) y después actívalo con sudo ufw enable; de lo contrario, podrías perder el acceso.

En un VPS de ZAP-Hosting con el firewall de red activo, también tienes que abrir el puerto en el Panel de cliente.

Puerto 3306: explicación

¿Para qué sirve el puerto 3306?

Finalidad

A través del puerto 3306, las aplicaciones y los clientes se conectan a un servidor MySQL o MariaDB. Entre ellos se encuentran aplicaciones web como WordPress o Nextcloud, plugins de servidores de juego para clasificaciones y bans, servicios de backend y herramientas de administración como MySQL Workbench o HeidiSQL. Si la aplicación y la base de datos se ejecutan en el mismo servidor, la conexión suele ser local mediante 127.0.0.1 o un socket Unix. El puerto 3306 solo debe ser accesible por red si la base de datos está en otro servidor.

Origen y estándar

MySQL fue lanzado a mediados de la década de 1990 por la empresa sueca MySQL AB y hoy pertenece a Oracle. De MySQL surgió el fork MariaDB, impulsado por uno de los desarrolladores originales de MySQL, que también utiliza el puerto 3306. La IANA ha asignado el puerto 3306 al servicio «mysql». Se encuentra en el rango de puertos registrados, del 1024 al 49151.

Uso habitual

  • Base de datos para aplicaciones web como WordPress, Shopware o Nextcloud
  • Almacenamiento para plugins de servidores de juego, como bans, rangos y estadísticas
  • Conexión de un servidor de aplicaciones a un servidor de bases de datos independiente
  • Replicación entre servidores MySQL o MariaDB
  • Administración mediante MySQL Workbench, HeidiSQL o un cliente de línea de comandos

Seguridad

El puerto 3306 nunca debe estar abierto a todo Internet. Los puertos de bases de datos abiertos se escanean continuamente de forma automatizada y se atacan con listas de contraseñas. Por eso, los paquetes de MySQL y MariaDB para Debian y Ubuntu solo escuchan en 127.0.0.1 de forma predeterminada, mediante la opción bind-address. Si necesitas acceso desde el exterior, permite en el firewall únicamente la IP de tu servidor de aplicaciones y crea usuarios de base de datos que solo puedan conectarse desde esa dirección. Para administrarla ocasionalmente desde tu propio equipo, un túnel SSH es la opción más segura: así, el puerto 3306 permanece completamente cerrado.

Más puertos

Puertos relacionados

Estos puertos suelen formar parte de la misma configuración. Haz clic para ver su explicación y los comandos de firewall.

Ver todos los puertos conocidos y la lista completa de la IANA

Fuente de la lista de puertos: IANA Service Name and Transport Protocol Port Number Registry, actualizado el 22 de octubre de 2026. iana.org

Descubrir más

Más herramientas

FAQ

Preguntas frecuentes

Respuestas breves sobre el puerto 3306.

Solo si una aplicación alojada en otro servidor necesita acceder directamente a la base de datos. Si la web o el servidor de juego están en el mismo sistema que la base de datos, el puerto 3306 permanece cerrado y la conexión es local. Para administrarla desde tu PC, basta con un túnel SSH.

Con ufw puedes permitir el acceso solo a tu servidor de aplicaciones: sudo ufw allow from 203.0.113.10 to any port 3306 proto tcp. Sustituye la IP de ejemplo por la dirección de tu servidor. Además, bind-address debe apuntar a una dirección accesible desde el exterior en la configuración de MySQL o MariaDB.

Con ssh -L 3306:127.0.0.1:3306 user@dein-server, rediriges el puerto local 3306 al servidor de bases de datos a través de la conexión SSH. Después, tu cliente de bases de datos solo tiene que conectarse a 127.0.0.1. Herramientas como HeidiSQL o MySQL Workbench también pueden crear el túnel por sí mismas.

Normalmente, el servidor solo escucha en 127.0.0.1 porque ese es el valor predeterminado de bind-address. Otras posibles causas son la falta de una regla en el firewall o que el usuario de la base de datos solo tenga acceso desde localhost. Con el comprobador de puertos puedes ver si el puerto 3306 es accesible desde el exterior.

¿Tienes más preguntas?

Contactar con soporte
¿Tu propio servidor?

Prueba los comandos en tu propio VPS

Con un VPS de ZAP-Hosting tienes acceso root, configuras los servicios y las reglas de firewall tú mismo y ves al instante qué puertos están abiertos.

4,4/5 Trustpilot32.000+ Servidores activosDesde 2010

Sin configuración. Sin riesgos. En línea en segundos.

Duración flexibleCancelable en cualquier momentoEn línea en 60 segundos

¿Buscas más herramientas? Ver todas las herramientas de red