Ir al contenido
  1. Posts/

Administración básica de AlmaLinux - Firewalld

·4 mins
Home Lab CLI Linux Admin
Administración de AlmaLinux - Este artículo es parte de una serie.
Parte 3: Este artículo

Administración básica de AlmaLinux - Firewalld
#

En esta entrada compartiré una pequeña guía para administrar las reglas del firewall en un entorno AlmaLinux. Como se vio en entradas anteriores, esta serie cubre aspectos que tuve que aprender al ejecutar mi propio Laboratorio Casero en Proxmox.

Firewalld, el firewall predeterminado en distribuciones basadas en RHEL, fue diseñado como un reemplazo para iptables introducido en 2011.

En esencia, firewalld actúa como un guardián de seguridad, controlando el tráfico de red entrante y saliente.

Si bien viene prehabilitado con una configuración predeterminada segura, es posible que deba abrir puertos específicos para que los servicios esenciales funcionen correctamente.

Por ejemplo, al encontrar problemas con la exportación de métricas de nodos en mis máquinas virtuales, revisé mis configuraciones de Proxmox y de red, solo para descubrir que el tráfico estaba siendo bloqueado por la propia máquina virtual.

Si te encuentras en una situación similar, esta guía te ayudará con lo siguiente:

  • Permitir puertos o servicios a través del firewall: Otorgar acceso a las conexiones entrantes para los servicios elegidos.
  • Aplicar reglas de firewall: Activar los cambios realizados en las configuraciones del firewall.
  • Verificar puertos y servicios abiertos: Mantenerse al tanto de los puertos y servicios actualmente accesibles.
  • Administrar puertos abiertos: Revocar el acceso cuando ya no se requiera un servicio.

Puertos y zonas del Firewall
#

Firewalld utiliza zonas para categorizar las interfaces de red y gestionar el flujo de tráfico en consecuencia. La interfaz de red de tu laboratorio casero probablemente pertenece a la zona “pública”, que maneja el tráfico proveniente de internet.

Generalmente, la regla predeterminada de un firewall es denegar todo y solo permitir el paso de excepciones específicas para los servicios necesarios.

Puedes agregar reglas a esta zona para controlar el tráfico entrante desde internet. Existen dos métodos principales para abrir puertos:

  1. Por servicio: Este es el enfoque preferido, ya que abre automáticamente el número de puerto relevante asociado a un servicio. Por ejemplo, el siguiente comando permite el tráfico HTTP en el puerto 80.

  bash   firewall-cmd --zone=public --add-service=http --permanent   

  1. Por número de puerto: Utiliza este método si no hay un servicio correspondiente para el puerto que deseas abrir. El siguiente comando abre el puerto 8080 para conexiones TCP:

  bash   firewall-cmd --zone=public --add-port=8080/tcp --permanent   

Comandos esenciales de administración de Firewall
#

  • Listar servicios y puertos abiertos: Mostrar servicios activos con puertos abiertos  bash  firewall-cmd --zone=public --list-services     Mostrar puertos abiertos independientemente del servicio asociado  bash  firewall-cmd --zone=public --list-ports  
  • Recargar Firewall:   Esto activará cualquier cambio permanente realizado en las reglas del firewall   bash   firewall-cmd --reload   
  • Ver todas las reglas del firewall: Proporciona una vista completa de la configuración de tu firewall:

  bash   firewall-cmd --list-all   

  • Cerrar un puerto: Elimina la regla HTTPS del firewall   bash   firewall-cmd --zone=public --permanent --remove-service=HTTPS   

Puertos comunes y comandos de Firewall para servicios de laboratorio casero
#

Estos son algunos comandos útiles para abrir puertos para servicios esenciales que podrías usar en tu entorno de laboratorio casero:

# Permitir HTTP a través del firewall
firewall-cmd --zone=public --add-service=http --permanent

# Permitir HTTPS a través del firewall
firewall-cmd --zone=public --add-service=https --permanent

# Permitir MySQL a través del firewall
firewall-cmd --zone=public --add-service=mysql --permanent

# Permitir SSH a través del firewall (suponiendo que no esté ya abierto)
firewall-cmd --zone=public --add-service=ssh --permanent

# Permitir DNS a través del firewall
firewall-cmd --zone=public --add-service=dns --permanent

# Permitir PostgreSQL a través del firewall
firewall-cmd --zone=public --add-service=postgresql --permanent

# Permitir telnet a través del firewall
firewall-cmd --zone=public --add-service=telnet --permanent

Consideraciones de seguridad al abrir puertos
#

La seguridad siempre debe ser tu prioridad al administrar tu firewall. Solo abre puertos para los servicios que realmente necesitas y utilizas activamente en tu laboratorio casero.

Aquí hay algunas prácticas recomendadas de seguridad adicionales a tener en cuenta:

  • Minimizar puertos expuestos: Abre solo los puertos específicos necesarios para que un servicio funcione. Evita abrir rangos completos de puertos.
  • Contraseñas seguras: Utiliza contraseñas seguras para todos los servicios que requieren autenticación, especialmente para los servicios accesibles de forma remota.
  • Mantén el software actualizado: Actualiza periódicamente tu sistema AlmaLinux y las aplicaciones para abordar las vulnerabilidades de seguridad.
  • Monitoriza los registros del firewall: Revisa periódicamente los registros de tu firewall para detectar actividades sospechosas que puedan indicar intentos de acceso no autorizado.

Siguiendo estos pasos y comprendiendo las reglas del firewall, puedes administrar de manera efectiva el tráfico entrante en tu laboratorio casero de AlmaLinux.

Administración de AlmaLinux - Este artículo es parte de una serie.
Parte 3: Este artículo

Relacionados

Administración básica de AlmaLinux - Instalación
3 mins
Home Lab CLI Linux Admin
Administración básica de AlmaLinux - Usuarios
4 mins
Home Lab CLI Linux Admin
Redes 101: DNS, DHCP, y Proxies
3 mins
Networking Home Lab