2 enero, 2026
Cómo verificar y abrir puertos en Fedora 41 y habilitar acceso remoto a MySQL paso a paso

🔹 Introducción

En los sistemas Fedora Server 41, que utilizan firewalld con kernel 6.12.10-200.fc41.x86_64, es esencial conocer los puertos abiertos para asegurar servicios como Apache, SSH o MySQL.

Este artículo te enseña a verificar y abrir puertos en Fedora paso a paso, interpretar la salida del firewall y configurar MySQL para acceso remoto, sin comprometer la seguridad.


🧩 Verificar puertos abiertos en Fedora 41

Usa el siguiente comando:

sudo firewall-cmd --list-all

Ejemplo de salida:

FedoraServer (default, active)
  interfaces: ens192
  services: cockpit dhcpv6-client http https ssh

Esto indica que solo los puertos 22, 80, 443 y 9090 están abiertos.
Si ports: está vacío, no hay puertos adicionales definidos.


🧩 Comandos útiles para diagnóstico

Consulta las zonas y servicios activos:

sudo firewall-cmd --get-active-zones
sudo firewall-cmd --list-all-zones
sudo firewall-cmd --zone=FedoraServer --list-services
sudo firewall-cmd --zone=FedoraServer --list-ports

Además, confirma procesos en escucha con:

sudo ss -tulnp

o

sudo netstat -tulnp | grep LISTEN

⚙️ Abrir puertos en Fedora con firewalld

Para abrir el puerto 3306 (MySQL):

sudo firewall-cmd --add-port=3306/tcp --permanent
sudo firewall-cmd --reload

O directamente por servicio:

sudo firewall-cmd --add-service=mysql --permanent
sudo firewall-cmd --reload

Para limitar el acceso a una sola IP:

sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="3306" accept'
sudo firewall-cmd --reload

🛠️ Configurar MySQL para acceso remoto

Edita la configuración:

sudo nano /etc/my.cnf.d/networking.cnf

Y añade:

[mysqld]
bind-address = 0.0.0.0
port = 3306
skip-networking = 0

Reinicia MySQL:

sudo systemctl restart mysqld

Crea un usuario remoto:

CREATE USER 'appuser'@'%' IDENTIFIED BY 'TuPasswordFuerte!';
GRANT ALL PRIVILEGES ON *.* TO 'appuser'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

Verifica conexión:

mysql -u appuser -p -h dominio.com

Si aparece Connection refused o timed out, revisa el firewall y DNS.


🔒 Seguridad y diagnóstico final

  • Verifica firewall: sudo firewall-cmd --list-all
  • Comprueba red: ping dominio.com
  • Ajusta SELinux si bloquea conexión: sudo setsebool -P mysql_connect_any=1

✅ Conclusión

Has configurado correctamente tu servidor Fedora 41 para permitir conexiones externas al puerto 3306 (MySQL), revisado el firewall con firewall-cmd, habilitado bind-address=0.0.0.0, y creado un usuario remoto con permisos seguros.
Estos pasos garantizan conectividad funcional y seguridad adecuada en entornos de producción o pruebas.

author avatar
blogdecomputo.com

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *