Instala ufw firewall en tu servidor web Ubuntu Server 14.04

Bienvenid@s, ya veis que estamos en agosto y que tengo un poco más de tiempo para dedicar al blog y compartir cosas con vosotros. Espero poder seguir esta tendencia en los próximos meses, y seguir compartiendo con más frecuencia. Hoy vamos a activar y configurar el firewall ufw en Ubuntu Server.

Con esta pequeña guía cerraremos por fin todo lo que explicamos en esta guía y en este artículo, donde explicábamos algunas cosas de puesta en marcha de servidores, de redes, y de GNU/Linux, y decíamos que el paso siguiente consistía en instalar un firewall.

Por cierto si ves que explico alguna cosa demasiado avanzada o quieres profundizar en alguno de los aspectos que vamos a exponer siéntete libre por favor de dejar tu comentario, tus preguntas, tus dudas, etc.

Escudo de seguridad

Pues bien, hoy vamos a configurar ufw en un Ubuntu Server donde corren solo los servicios imprescindibles para servir páginas web dinámicas. Te invito a que leas los dos recursos anteriores para seguir la explicación de hoy.

Por si no lo sabes, ufw (Uncomplicated Firewall) es el firewall predeterminado de Ubuntu. Se trata de un sistema frontend de iptables que facilita mucho las cosas a los que quieren configurar rápidamente un firewall y no quieren complicarse programando reglas de filtrado de paquetes con iptables. ufw proporciona una capa de abstracción amigable que permite a los administradores tomar decisiones de filtrado más fácilmente que con iptables.

ufw ya viene instalado en Ubuntu, pero está desactivado de forma predeterminada. Para ver el estado del firewall:

Si no lo activaste antes tiene que salirte un mensaje que indica que el firewall no está activo. Para activarlo:

Si activas ufw de forma remota, con ssh, te saldrá este mensaje:

Dile que sí (y), pero no antes de asegurarte que dispones de una copia de seguridad de lo que consideres importante en tu servidor.

Nada más activar ufw cerraremos todos los puertos:

De este modo adoptamos una política de denegación por defecto para las comunicaciones entrantes, o sea, nuestro Ubuntu Server no aceptará ningún paquete que le entre.

Como alternativa, podemos elegir una política que acepte por defecto todo el tráfico entrante, de modo que el administrador tenga que establecer reglas para denegar comunicaciones determinadas.

Hombre con paraguas

En la política deny por defecto el administrador prefiere abrir a mano los puertos imprescindibles. Esto tiene la ventaja de que el servidor es más seguro, pero presenta el inconveniente de que exige al administrador un conocimiento de los servicios que maneja, y también puede resultar un poco más complicada de mantener.

Lo anterior es una regla general en seguridad informática: a más seguridad, menos usabilidad del sistema y un tanto más de trabajo en el mantenimiento de dicha política de seguridad.

Antes hemos cerrado todas las conexiones entrantes. Ahora vamos a abrir solo los puertos que necesita nuestro Ubuntu Server que, como decimos, solo sirve páginas web dinámicas.

Suponiendo que hemos cambiado el puerto del servicio ssh a 981, abrimos el puerto 981 para que acepte conexiones TCP:

Luego abrimos http:

Y abrimos https:

Por cierto, si en algún momento te equivocas con alguna regla, que sepas que así como las hemos puesto con los comandos de arriba, en cualquier momento también puedes quitarlas a mano así:

Una vez hecho todo esto tendrías que comprobar el nuevo estado de ufw y comprobar que todo está ok:

La salida es esta:

Es muy importante que te asegures de dejar abierto el puerto del servicio ssh (981 en nuestro caso porque lo cambiamos cuando hicimos el hardening correspondiente) porque si no lo haces no podrás entrar a administrar tu servidor de forma remota.

Luego, no está de más que te asegures que tu archivo /etc/ufw/ufw.conf tiene puesta a yes la entrada ENABLED:

La configuración anterior ejecutará ufw al iniciar el sistema.

Algunos recursos recomendados sobre lo que hemos hecho hoy:

Pues bien amig@s, una vez asimilada la teoría que estamos manejando, y una vez entendido lo que explico en los 2 posts anteriores a que hacía referencia al principio, y este de hoy de ufw ya podemos levantar un Ubuntu Server seguro en pocos minutos. Por favor, si hay alguna cosa que ahora mismo no ves muy clara o tienes alguna duda siéntete libre de dejar tu comentario.

2 comentarios
  1. Nelson
    Nelson Dice:

    Como podemos hacer Nat con este firewall?? Necesito públicas unas subinterfaces que cree en mi servidor para que mi cliente haga ping a las subinterfaces

    Responder

¿Me dejas un comentario? ¡Gracias!

Deja un comentario

Los campos obligatorios están marcados con *