Cómo abrir un puerto concreto para un rango de direcciones IP en el cortafuegos de un equipo con Rocky Linux. El proceso es similar para distribuciones Linux Red Hat, como AlmaLinux, CentOS, Fedora, Oracle Linux, etc.
Realizaremos el proceso de apertura de puerto a un rango de IP creando una zona para ello. Supongamos que queremos abrir el puerto 3306 de MySQL/MariaDB. En primer lugar, comprobaremos que el servicio de cortafuegos está activo, para ello, ejecutaremos el siguiente comando:
1 |
sudo systemctl status firewalld |
Si el servicio de firewall está activo, nos devolverá algo así:
1 2 3 4 5 6 7 8 9 10 11 |
[fac@srfacturacion ~]$ sudo systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; preset: enabled) Active: active (running) since Tue 2025-01-21 12:01:55 CET; 1 day 2h ago Docs: man:firewalld(1) Main PID: 741 (firewalld) Tasks: 2 (limit: 35191) Memory: 43.7M CPU: 373ms CGroup: /system.slice/firewalld.service └─741 /usr/bin/python3 -s /usr/sbin/firewalld --nofork --nopid |
Ahora conviene listar las zonas actuales, para no añadir una que ya exista. Para listar las zonas, ejecutamos el comando:
1 |
sudo firewall-cmd --get-zones |
Nos devolverá las zonas actuales:
1 2 |
[fac@srfacturacion ~]$ sudo firewall-cmd --get-zones block dmz drop external home internal nm-shared public trusted work |
Crearemos la zona, la llamaremos «mysql», con el comando:
1 |
sudo firewall-cmd --new-zone=mysql --permanent |
Si se ha creado correctamente, nos devolverá el mensaje: success.
Agregaremos el rango de direcciones IP al que queramos dar acceso por el puerto a la zona mysql. En este caso, para el rango de direcciones 192.168.1.0/24, ejecutando el comando:
1 |
sudo firewall-cmd --zone=mysql --add-source=192.168.1.0/24 --permanent |
Si se ha asignado correctamente, nos devolverá el mensaje: success.
Asignaremos el puerto a la zona creada «mysql». En este caso, abriremos el puerto 3306:
1 |
sudo firewall-cmd --zone=mysql --add-port=3306/tcp --permanent |
Si se ha asignado correctamente, nos devolverá el mensaje: success.
Recargaremos el firewall para aplicar los cambios con:
1 |
sudo firewall-cmd --reload |
Si se han recargado correctamente, nos devolverá el mensaje: success.

Y ya tendremos acceso desde cualquier equipo con direccionamiento IP del rango 192.168.1.0/24 a través del puerto 3306 al servidor con Linux Rocky o Linux Red Hat.