Introducción
Bienvenidos a este laboratorio práctico sobre cómo habilitar un firewall básico. Asegurar un servidor es una tarea crítica para cualquier administrador de sistemas, y un firewall es la primera línea de defensa contra el acceso no autorizado a la red.
En este laboratorio, trabajarán con UFW (Uncomplicated Firewall), una interfaz fácil de usar para gestionar las reglas del firewall iptables en sistemas Debian y Ubuntu. UFW está diseñado para ser simple e intuitivo, haciendo que la gestión básica del firewall sea accesible para todos. Aprenderán cómo instalar UFW, añadir reglas para permitir tráfico específico, habilitar y deshabilitar el firewall, y verificar su estado.
Al finalizar este laboratorio, tendrán una comprensión sólida de cómo realizar operaciones esenciales del firewall utilizando UFW.
Instalar UFW con el comando apt install ufw -y
En este paso, instalarán el Firewall No Complicado (Uncomplicated Firewall, UFW). Aunque UFW está incluido en muchas distribuciones de Ubuntu, es una buena práctica asegurarse de que esté instalado o instalarlo si falta. Utilizaremos el gestor de paquetes apt para esto.
Primero, siempre es una buena idea actualizar su lista de paquetes para asegurar que están obteniendo las últimas versiones disponibles.
Ejecuten el siguiente comando en su terminal:
sudo apt update
Verán una salida mientras se actualizan las listas de paquetes desde los repositorios.
Ahora, procedan a instalar UFW. La bandera -y responde automáticamente "sí" a cualquier solicitud durante el proceso de instalación.
sudo apt install ufw -y
Una vez que el comando se complete, UFW estará instalado en su sistema. Deberían ver una salida similar a la siguiente, indicando una instalación exitosa:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
ufw
0 upgraded, 1 newly installed, 0 to remove and ... not upgraded.
Need to get ...
After this operation, ... of additional disk space will be used.
...
Setting up ufw (...)
...
En este punto, UFW está instalado pero aún no está activo. En el siguiente paso, configurarán una regla antes de habilitarlo.
Permitir HTTP con el comando ufw allow 80
En este paso, añadirán una regla de firewall para permitir el tráfico HTTP entrante. Por defecto, UFW deniega todas las conexiones entrantes. Si estuvieran ejecutando un servidor web, necesitarían crear una regla para permitir explícitamente que los usuarios accedan a él. El tráfico HTTP utiliza el puerto 80.
Pueden añadir una regla usando el comando ufw allow seguido del número de puerto o el nombre del servicio.
Ejecuten el siguiente comando para permitir el tráfico en el puerto 80:
sudo ufw allow 80
Verán una confirmación de que la regla ha sido añadida. UFW es lo suficientemente inteligente como para añadir la regla tanto para el tráfico IPv4 como para IPv6, por eso ven dos líneas en la salida.
Rule added
Rule added (v6)
Esta regla ya está configurada, pero no surtirá efecto hasta que el firewall esté habilitado, lo cual harán en el siguiente paso. Esta es una práctica segura, ya que les permite configurar todas las reglas necesarias (por ejemplo, para SSH) antes de activar el firewall y potencialmente bloquearse el acceso.
Habilitar Firewall con el comando ufw enable
En este paso, activarán el firewall. Simplemente instalar UFW y añadir reglas no es suficiente; el servicio de firewall debe estar en ejecución para que las reglas se apliquen.
Antes de habilitar el firewall, es importante permitir el tráfico SSH para evitar quedar bloqueado fuera del sistema. SSH utiliza el puerto 22 por defecto.
sudo ufw allow ssh
Verán la confirmación de que la regla SSH ha sido añadida:
Rule added
Rule added (v6)
Ahora pueden habilitar UFW de forma segura. Usen el comando ufw enable.
sudo ufw enable
El firewall se activará y la salida confirmará que ahora está activo y se habilitará automáticamente al inicio del sistema.
Firewall is active and enabled on system startup
Su firewall ya está activo y aplicando las reglas que han configurado, incluyendo permitir el acceso SSH.
Comprobar Estado con el comando ufw status
En este paso, aprenderán cómo verificar el estado de su firewall y ver las reglas activas. Este es un comando esencial para confirmar su configuración.
Para ver un informe de estado básico, utilicen el comando ufw status.
sudo ufw status
La salida mostrará que el firewall está activo y listará las reglas que han configurado. Deberían ver las reglas para SSH y el puerto 80 que añadieron.
Status: active
To Action From
-- ------ ----
80 ALLOW Anywhere
80 (v6) ALLOW Anywhere (v6)
22 ALLOW Anywhere
22 (v6) ALLOW Anywhere (v6)
Para una vista más detallada, pueden usar la opción verbose. Esto también mostrará las políticas por defecto (default policies).
sudo ufw status verbose
La salida detallada proporciona más contexto, incluyendo la política por defecto para el tráfico entrante (incoming), saliente (outgoing) y enrutado (routed). Por defecto, UFW deniega todo el tráfico entrante y permite todo el tráfico saliente.
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
80/tcp ALLOW IN Anywhere
80/tcp (v6) ALLOW IN Anywhere (v6)
22/tcp ALLOW IN Anywhere
22/tcp (v6) ALLOW IN Anywhere (v6)
Revisar el estado regularmente es una buena práctica para asegurar que su firewall esté configurado como esperan.
Deshabilitar y Eliminar Reglas con el comando ufw disable
En este paso, aprenderán cómo deshabilitar el firewall y eliminar las reglas existentes. Es posible que necesiten hacer esto para mantenimiento, solución de problemas (troubleshooting) o para reconfigurar su firewall desde cero.
Primero, deshabilitemos el firewall. Esto detendrá a UFW de filtrar el tráfico de red.
sudo ufw disable
La salida confirmará que el servicio ha sido detenido.
Firewall stopped and disabled on system startup
A continuación, eliminemos la regla que añadimos. Aunque el firewall esté deshabilitado, las reglas aún se almacenan en la configuración. Para borrar una regla específica, primero pueden listarlas con números usando ufw status numbered.
sudo ufw status numbered
Status: inactive
Dado que el firewall está inactivo, volvamos a habilitarlo para ver las reglas numeradas.
sudo ufw enable
sudo ufw status numbered
La salida se verá así:
Status: active
To Action From
-- ------ ----
[ 1] 80 ALLOW IN Anywhere
[ 2] 80 (v6) ALLOW IN Anywhere (v6)
[ 3] 22 ALLOW IN Anywhere
[ 4] 22 (v6) ALLOW IN Anywhere (v6)
Ahora pueden eliminar una regla por su número. Eliminemos la primera regla (para IPv4).
sudo ufw delete 1
UFW pedirá confirmación. En este entorno, procederá automáticamente. Verán una confirmación de que la regla ha sido eliminada.
Deleting:
allow 80
Proceed with operation (y|n)?
Rule deleted
Finalmente, si desean restablecer completamente UFW a su estado por defecto, eliminando todas las reglas y deshabilitándolo, pueden usar el comando ufw reset.
sudo ufw reset
Este comando es muy útil para empezar de nuevo con una configuración de firewall limpia.
Resumen
¡Felicidades por completar el laboratorio! Han aprendido con éxito los fundamentos de la gestión de un firewall en un sistema Linux utilizando UFW.
En este laboratorio, han practicado:
- La instalación de UFW usando el gestor de paquetes
apt. - La adición de reglas para permitir tráfico específico con
ufw allow. - La habilitación y activación del firewall con
ufw enable. - La verificación del estado y las reglas del firewall con
ufw status. - La deshabilitación del firewall y la eliminación de reglas con
ufw disableyufw delete.
Dominar estos comandos básicos les proporciona una herramienta poderosa para mejorar la seguridad de sus servidores. Configurar correctamente un firewall es una habilidad fundamental en la administración de sistemas y la seguridad de redes.



