¿Cómo puedo permitir el tráfico de una dirección IP específica en mi red privada o permitir el tráfico de una red privada específica a través de firewalld? , a un puerto o servicio específico en un Red Hat Enterprise Linux (RHEL ) o CentOS servidor?
En este breve artículo, aprenderá cómo abrir un puerto para una dirección IP específica o un rango de red en su servidor RHEL o CentOS que ejecuta un cortafuegos. cortafuegos.
La forma más adecuada de solucionar esto es usando un firewalld zona. Por lo tanto, debe crear una nueva zona que contenga las nuevas configuraciones (o puede usar cualquiera de las zonas seguras predeterminadas disponibles).
Puerto abierto para una dirección IP específica en Firewalld
Primero cree un nombre de zona apropiado (en nuestro caso, hemos usado mariadb-access
para permitir el acceso al servidor de base de datos MySQL).
# firewall-cmd --new-zone=mariadb_access --permanent
A continuación, vuelva a cargar el firewalld configuración para aplicar el nuevo cambio. Si omite este paso, es posible que obtenga un error cuando intente usar el nuevo nombre de zona. Esta vez, la nueva zona debería aparecer en la lista de zonas como se destaca en la siguiente captura de pantalla.
# firewall-cmd --reload # firewall-cmd --get-zones
A continuación, agregue la dirección IP de origen (10.24.96.5/20 ) y el puerto (3306 ) que desea abrir en el servidor local como se muestra. A continuación, vuelva a cargar la configuración del cortafuegos para aplicar los nuevos cambios.
# firewall-cmd --zone=mariadb-access --add-source=10.24.96.5/20 --permanent # firewall-cmd --zone=mariadb-access --add-port=3306/tcp --permanent # firewall-cmd --reload
Como alternativa, puede permitir el tráfico de toda la red (10.24.96.0/20 ) a un servicio o puerto.
# firewall-cmd --zone=mariadb-access --add-source=10.24.96.0/20 --permanent # firewall-cmd --zone=mariadb-access --add-port=3306/tcp --permanent # firewall-cmd --reload
Para confirmar que la nueva zona tiene la configuración requerida como se agregó anteriormente, verifique sus detalles con el siguiente comando.
# firewall-cmd --zone=mariadb-access --list-all
Eliminar puerto y zona del cortafuegos
Puede eliminar la dirección IP o la red de origen como se muestra.
# firewall-cmd --zone=mariadb-access --remove-source=10.24.96.5/20 --permanent # firewall-cmd --reload
Para eliminar el puerto de la zona, emita el siguiente comando y vuelva a cargar la configuración del cortafuegos:
# firewall-cmd --zone=mariadb-access --remove-port=3306/tcp --permanent # firewall-cmd --reload
Para eliminar la zona, ejecute el siguiente comando y vuelva a cargar la configuración del cortafuegos:
# firewall-cmd --permanent --delete-zone=mariadb_access # firewall-cmd --reload
Por último, pero no en la lista, también puede usar reglas enriquecidas de cortafuegos. Aquí hay un ejemplo:
# firewall-cmd --permanent –zone=mariadb-access --add-rich-rule='rule family="ipv4" source address="10.24.96.5/20" port protocol="tcp" port="3306" accept'
Referencia :Uso y configuración de firewalld en la documentación de RHEL 8.
¡Eso es todo! Esperamos que las soluciones anteriores hayan funcionado para usted. En caso afirmativo, háganoslo saber a través del formulario de comentarios a continuación. También puede hacer preguntas o compartir comentarios generales sobre este tema.