Protege tu servidor Linux con UFW (Uncomplicated Firewall)

Author
Por Darío Rivera
Publicado el en GNU/Linux Debian

A medida que tus proyectos crecen, bien sea un servido SaaS, un blog, un ecommerce, etc, necesitas mejorar tu infraestructura y la seguridad de tus servidores. Una de las formas más sencillas para mejorar la seguridad es instalar un firewall en tus servidores. En este post explicaremos cómo realizar una configuración básica para una web con UFW (Uncomplicated Firewall).

Paso 1 - Instalar UFW

Para instalar UFW debes buscar el nombre del paquete en la distribución Linux sobre la cuál está tu servidor. En este caso vamos a realizar la instalación sobre GNU/Linux Debian.

sudo apt install ufw

Paso 2 - Configura las políticas por defecto

Es muy importante entender qué hacen las políticas por defecto. UFW por defecto deniega todas las conexiones entrantes y permite todas las conexiones de salida. Esto significa que cualquier que intente alcanzar tu servidor no lo podrá realizar pero tu servidor podrá conectarse a cualquier otro sitio web o recurso en internet. Para asegurarnos que esto es así, podemos ejecutar los siguientes comandos:

sudo ufw default deny incoming
sudo ufw default allow outgoing

Paso 3 - Revisa la lista de programas disponibles

Una vez instalado el firewall en el sistema estará por defecto deshabilitado, y no tendrá ningún programa habilitado para pasar a través de él. Para ver la lista de programas candidatos para pasar por el firewall puedes utilizar el siguiente comando.

sudo ufw app list

Verás un resultado similar al siguiente:

...
OpenSSH
POP3
POP3S
...
WWW
...

La lista obtenida puede ser bastante larga, he listado algunos programas que muy seguramente desearás que el firewall no bloquee. Si tienes un servidor web, o accedes por SSH en este momento y habilitas el firewall sin habilitar primero estos programas perderás acceso a tu web y a tu servidor por SSH. Yo personalmente utilizo en su mayoría el servicio SSH en servidores web con apache, por tal motivo utilizo estos comandos para habilitar dichos servicios.

sudo ufw allow 'WWW Full'
sudo ufw allow OpenSSH

Paso 4 - Activa el Firewall

El paso final consiste en activar el firewall con el siguiente comando.

sudo ufw enable

Si notas que algún servicio de los que utilizas quedó deshabilitado después de activar el firewall recuerda que en cualquier momento puedes desactivar el firewall con el siguiente comando.

sudo ufw disable

Espero que esta breve pero útil introducción al firewall UFW te haya sido útil. Hasta pronto!.

Paso 5 - Verifica el estado del firewall

Finalmente puedes verificar el estado del firewall con el siguiente comando.

admin@server:/etc/apache2$ sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
WWW Full                   ALLOW       Anywhere                  
OpenSSH                    ALLOW       Anywhere                  
WWW Full (v6)              ALLOW       Anywhere (v6)             
OpenSSH (v6)               ALLOW       Anywhere (v6)             

Acerca de Darío Rivera

Author

Application Architect at Elentra Corp . Quality developer and passionate learner with 10+ years of experience in web technologies. Creator of EasyHttp , an standard way to consume HTTP Clients.

LinkedIn Twitter Instagram

Sólo aquellos que han alcanzado el éxito saben que siempre estuvo a un paso del momento en que pensaron renunciar.