Cómo instalar UFW en Debian 12, 11 o 10

UFW (Uncomplicated Firewall) es una herramienta sencilla para administrar reglas de firewall en sistemas Linux. Simplifica el proceso de configuración de un firewall, lo que lo hace especialmente útil para los usuarios más nuevos que pueden encontrar desafiantes los iptables tradicionales. UFW proporciona una manera fácil de crear y administrar reglas de firewall mediante comandos simples, lo que lo hace accesible y efectivo.

Las características técnicas de UFW incluyen:

  • Facilidad de uso: Los comandos están simplificados para tareas comunes de firewall.
  • Perfiles preconfigurados: Viene con perfiles para servicios comunes.
  • Inicio sesión: Permite una fácil configuración de registros para monitorear la actividad.
  • Soporte IPv6: Totalmente compatible con IPv6.
  • Extensible: se puede ampliar con reglas adicionales para configuraciones más avanzadas.

Para los nuevos usuarios, UFW suele ser mejor que iptables porque oculta la complejidad y al mismo tiempo ofrece sólidas funciones de seguridad. Permite a los usuarios configurar reglas de firewall rápidamente sin necesidad de comprender la sintaxis detallada y las operaciones de iptables, lo que reduce la posibilidad de errores.

Esta guía le mostrará cómo instalar y configurar UFW en Debian 12, 11 o 10, cubriendo comandos básicos y consejos para ayudarlo a administrar su firewall de manera efectiva.

Instale UFW (Firewall sin complicaciones) mediante el comando APT

Si es nuevo en Debian Linux y en el terminal de comandos, aprender a proteger su sistema con un firewall puede resultar abrumador. Afortunadamente, los usuarios de Debian pueden utilizar fácilmente un cortafuegos sin complicaciones (UFW) para gestionar la seguridad de su sistema.

Antes de instalar UFW, es esencial asegurarse de que su sistema esté actualizado para evitar conflictos durante la instalación. Ejecute el siguiente comando para actualizar su sistema:

sudo apt update && sudo apt upgrade

Tenga en cuenta que si su kernel de Linux se actualizó, es posible que deba reiniciar su sistema.

Una vez que su sistema esté actualizado, puede instalar UFW ejecutando el siguiente comando:

sudo apt install ufw

A diferencia de otras distribuciones basadas en Debian como Ubuntu, UFW no está instalado de forma predeterminada en Debian. Por lo tanto, es fundamental instalar UFW manualmente.

Después de instalar UFW, debe habilitar el servicio ejecutando el siguiente comando:

sudo systemctl enable ufw --now

Este comando habilitará el servicio UFW en el momento del arranque, asegurando que su sistema permanezca protegido después de reiniciar.

Finalmente, es esencial verificar el estado de UFW para garantizar que se esté ejecutando sin errores. Puede verificar el estado del servicio UFW ejecutando el siguiente comando:

systemctl status ufw

Al ejecutar los comandos anteriores, habrá instalado UFW correctamente y se habrá asegurado de que se ejecute correctamente. En el siguiente paso, exploraremos el uso de UFW para proteger su sistema.

Habilitar el cortafuegos UFW

Ahora que UFW está instalado y ejecutándose, se habilitará el firewall. De forma predeterminada, UFW bloquea todo el tráfico entrante y permite todo el tráfico saliente. Habilitar el firewall garantiza que su sistema permanezca protegido al bloquear el acceso no autorizado.

Para habilitar UFW, ejecute el siguiente comando:

sudo ufw enable

Después de ejecutar el comando, recibirá un mensaje de confirmación de que el firewall está activo y se iniciará automáticamente cada vez que reinicie su sistema. A continuación se muestra un resultado de ejemplo:

Firewall is active and enabled on system startup

Una vez que el firewall esté activo, bloqueará todo el tráfico entrante a su sistema, protegiéndolo del acceso no autorizado. Sin embargo, vale la pena señalar que esto también podría impedir cierto tráfico legítimo, como el acceso a los servicios que necesita.

Verifique el estado de UFW

Después de habilitar el firewall UFW, es fundamental verificar que las reglas estén activas y configuradas correctamente. Puede verificar el estado de su firewall usando el siguiente comando:

sudo ufw status verbose

La ejecución de este comando le mostrará el estado actual del firewall, incluidas las reglas activas y las políticas predeterminadas establecidas para el tráfico entrante y saliente.

Para obtener una vista más concisa de las reglas de su firewall, puede utilizar la opción "numerada". Esta opción muestra las reglas de su firewall en una secuencia numerada, lo que facilita su identificación y administración. Utilice el siguiente comando para enumerar las reglas de su firewall en secuencia numérica:

sudo ufw status numbered

La salida numerada muestra las reglas de una manera más organizada, lo que facilita su identificación y gestión. Puede utilizar los números de regla para modificar o eliminar reglas específicas utilizando el comando "eliminar".

En conclusión, verificar el estado de su firewall es esencial para garantizar que su sistema esté protegido contra accesos no autorizados. Con los comandos descritos en este paso, puede verificar rápidamente el estado de su firewall UFW e identificar cualquier configuración incorrecta.

Establecer políticas predeterminadas de UFW

La configuración predeterminada del firewall UFW es bloquear todas las conexiones entrantes y permitir todas las conexiones salientes. Esta configuración es la más segura ya que garantiza que ningún usuario no autorizado pueda conectarse a su sistema sin un permiso explícito. Para permitir conexiones entrantes, debe crear reglas específicas que permitan el tráfico basado en direcciones IP, programas, puertos o una combinación de estos factores.

Para modificar las reglas de UFW, puede ingresar el siguiente comando en la terminal:

Para negar todas las conexiones entrantes:

sudo ufw default deny incoming

Para permitir todas las conexiones salientes:

sudo ufw default allow outgoing

De forma predeterminada, UFW ya está habilitado con las reglas predeterminadas. Sin embargo, puede modificar estas reglas para adaptarlas a sus necesidades específicas. Por ejemplo, si desea bloquear todas las conexiones salientes y solo permitir conexiones salientes específicas, puede usar el siguiente comando para ajustar las reglas en consecuencia:

Para bloquear todas las conexiones salientes:

sudo ufw default deny outgoing

Vale la pena señalar que si necesita ubicar las políticas de firewall UFW predeterminadas, puede encontrarlas en el archivo /etc/default/ufw. Este archivo contiene los ajustes de configuración para UFW, incluidas las políticas predeterminadas para el tráfico entrante y saliente. Al modificar la configuración de este archivo, puede personalizar las reglas del firewall para satisfacer sus necesidades de seguridad específicas.

Comandos UFW adicionales

Las siguientes secciones cubrirán algunos de los aspectos fundamentales de UFW. De forma predeterminada, la mayoría de los usuarios de escritorio se beneficiarán simplemente bloqueando las conexiones entrantes y permitiendo todo el tráfico saliente, lo cual es adecuado para la mayoría de los entornos. Sin embargo, UFW proporciona configuraciones adicionales que son útiles para computadoras de escritorio y servidores. A continuación se mostrarán algunos ejemplos de lo que puede hacer con UFW.

Ver perfiles de aplicación UFW

Si está interesado en obtener más información sobre los perfiles de aplicación disponibles a través de UFW, puede verlos ejecutando el siguiente comando:

sudo ufw app list

Esto mostrará una lista de todos los perfiles de aplicaciones disponibles. Es importante recordar que la lista de aplicaciones puede variar según el software que haya instalado en su sistema.

Una característica útil de los perfiles de la aplicación UFW es obtener más información sobre un perfil específico. Para hacer esto, ejecute el siguiente comando:

sudo ufw app info [application]

Reemplace [aplicación] con el nombre sobre el que desea obtener más información. Este comando proporcionará una breve descripción de la aplicación y los puertos que utiliza. Esto resulta útil al investigar puertos abiertos y tratar de determinar a qué aplicación pertenecen.

Habilite IPv6 en UFW

Si su sistema Debian está configurado con IPv6, debe asegurarse de que UFW esté configurado para admitir tráfico IPv6 e IPv4. De forma predeterminada, UFW debería habilitar automáticamente la compatibilidad con ambas versiones de IP; sin embargo, es una buena idea confirmarlo.

Para hacerlo, abra el archivo de firewall UFW predeterminado usando el siguiente comando:

sudo nano /etc/default/ufw

Una vez abierto el archivo, localice la siguiente línea:

IPV6=yes

Si el valor está establecido en "no", cámbielo a "sí" y guarde el archivo presionando CTRL+O y luego CTRL+X salir.

Después de realizar cambios en el archivo, deberá reiniciar el servicio de firewall UFW para que los cambios surtan efecto. Para hacerlo, ejecute el siguiente comando:

sudo systemctl restart ufw

Esto reiniciará el servicio de firewall UFW con la nueva configuración, lo que permitirá la compatibilidad con el tráfico IPv6.

Permitir conexiones UFW SSH

SSH (Secure Shell) es crucial para acceder de forma remota a servidores Linux. Sin embargo, de forma predeterminada, UFW no permite conexiones SSH. Esto puede ser problemático, especialmente si ha habilitado el firewall de forma remota, ya que es posible que se encuentre bloqueado. Para permitir conexiones SSH, debe seguir estos pasos.

Primero, habilite el perfil de la aplicación SSH escribiendo el siguiente comando:

sudo ufw allow ssh

Si ha configurado un puerto de escucha personalizado para conexiones SSH distinto del puerto predeterminado 22, por ejemplo, el puerto 3541, debe abrir el puerto en el firewall UFW escribiendo lo siguiente.

sudo ufw allow 3541/tcp

Los siguientes comandos se pueden usar para bloquear todas las conexiones SSH o cambiar el puerto y bloquear las antiguas.

Utilice el siguiente comando para bloquear todas las conexiones SSH (asegúrese de que sea posible el acceso local):

sudo ufw deny ssh/tcp

Si cambia el puerto SSH personalizado, abra un puerto nuevo y cierre el existente, por ejemplo:

sudo ufw deny 3541/tcp 

Habilitar puertos UFW

UFW puede permitir el acceso a puertos específicos para aplicaciones o servicios. Esta sección cubrirá cómo abrir los puertos HTTP (puerto 80) y HTTPS (puerto 443) para un servidor web y cómo permitir rangos de puertos.

Para permitir el puerto HTTP 80, puede utilizar cualquiera de los siguientes comandos:

Permitir por perfil de aplicación:

sudo ufw allow 'Nginx HTTP

Permitir por nombre de servicio:

sudo ufw allow http

Permitir por número de puerto:

sudo ufw allow 80/tcp

Para permitir el puerto HTTPS 443, puede utilizar cualquiera de los siguientes comandos:

Permitir por perfil de aplicación:

sudo ufw allow 'Nginx HTTPS'

Permitir por nombre de servicio:

sudo ufw allow https

Permitir por número de puerto:

sudo ufw allow 443/tcp

Si desea permitir puertos HTTP y HTTPS, puede utilizar el siguiente comando:

sudo ufw allow 'Nginx Full'

UFW permite rangos de puertos

Puede permitir puertos individuales y rangos de puertos. Al abrir un rango de puertos, debe identificar el protocolo del puerto.

Para permitir un rango de puertos con protocolos TCP y UDP, utilice los siguientes comandos:

sudo ufw allow 6500:6800/tcp
sudo ufw allow 6500:6800/udp

Alternativamente, puede permitir múltiples puertos de una sola vez usando los siguientes comandos:

sudo ufw allow 6500, 6501, 6505, 6509/tcp
sudo ufw allow 6500, 6501, 6505, 6509/udp

Permitir conexiones remotas en UFW

Habilitar conexiones remotas en UFW puede ser crucial para fines de creación de redes y se puede hacer rápidamente con unos pocos comandos simples. Esta sección explica cómo permitir conexiones remotas a su sistema a través de UFW.

UFW permite direcciones IP específicas

Puede utilizar el siguiente comando para permitir que direcciones IP específicas se conecten a su sistema. Esto es útil cuando necesita permitir que solo sistemas específicos se conecten a su servidor y puede especificar sus direcciones IP.

sudo ufw allow from 192.168.55.131

UFW permite direcciones IP específicas en un puerto específico

Puede utilizar el siguiente comando para permitir que una IP se conecte a un puerto específico de su sistema. Por ejemplo, si necesita permitir que una IP se conecte al puerto 3900 de su sistema, puede usar este comando:

sudo ufw allow from 192.168.55.131 to any port 3900

Permitir conexiones de subred a un puerto específico

Puede utilizar el siguiente comando para permitir conexiones desde un rango de IP en una subred a un puerto específico. Esto es útil cuando necesita permitir conexiones desde un rango específico de IP y puede especificar la subred para permitir conexiones.

sudo ufw allow from 192.168.1.0/24 to any port 3900

Este comando conectará todas las direcciones IP desde 192.168.1.1 a 192.168.1.254 al puerto 3900.

Permitir interfaz de red específica

Si necesita permitir conexiones a una interfaz de red específica, puede usar el siguiente comando. Esto es útil cuando tiene varias interfaces de red y necesita permitir conexiones a una interfaz específica.

sudo ufw allow in on eth2 to any port 3900

Al utilizar estos comandos, puede permitir fácilmente conexiones remotas a su sistema a través de UFW mientras mantiene su seguridad.

Denegar conexiones remotas en UFW

Si ha notado tráfico sospechoso o no deseado proveniente de una dirección IP en particular, puede denegar conexiones desde esa dirección usando UFW. UFW niega todas las conexiones entrantes de forma predeterminada, pero puede crear reglas para bloquear conexiones de IP o rangos de IP específicos.

Por ejemplo, para bloquear conexiones desde una única dirección IP, puede utilizar el siguiente comando:

sudo ufw deny from 203.13.56.121

Si un pirata informático utiliza varias direcciones IP dentro de la misma subred para atacar su sistema, puede bloquear toda la subred especificando el rango de IP en notación CIDR:

sudo ufw deny from 203.13.56.121/24

También puede crear reglas para denegar el acceso a puertos específicos para la IP o el rango de IP bloqueado. Por ejemplo, para bloquear conexiones de la misma subred a los puertos 80 y 443, puedes usar los siguientes comandos:

sudo ufw deny from 203.13.56.121/24 to any port 80
sudo ufw deny from 203.13.56.121/24 to any port 443

Es importante tener en cuenta que bloquear las conexiones entrantes puede ser una medida de seguridad eficaz, pero no es infalible. Los piratas informáticos aún pueden utilizar técnicas como la suplantación de IP para disfrazar su verdadera dirección IP. Por lo tanto, es importante implementar múltiples capas de seguridad y no depender únicamente del bloqueo de IP.

Eliminar reglas UFW

Eliminar reglas UFW innecesarias o no deseadas es esencial para mantener un firewall organizado y eficiente. Puede eliminar reglas UFW de dos maneras diferentes. En primer lugar, para eliminar una regla UFW usando su número, debe enumerar los números de regla escribiendo el siguiente comando:

sudo ufw status numbered

El resultado mostrará una lista de reglas UFW numeradas, lo que le permitirá identificar la regla que desea eliminar. Una vez que haya determinado el número de la regla que desea eliminar, escriba el siguiente comando:

sudo ufw delete [rule number]

Por ejemplo, supongamos que desea eliminar la tercera regla para la dirección IP 1.1.1.1. En ese caso, debe encontrar el número de regla ejecutando el comando "sudo ufw status numbered" y escriba el siguiente comando en su terminal:

sudo ufw delete 3

Eliminar reglas que ya no son necesarias ayuda a mantener la seguridad y eficiencia de su firewall.

Acceder y ver registros de UFW

El firewall de UFW registra todos los eventos y es esencial revisar estos registros periódicamente para identificar posibles violaciones de seguridad o solucionar problemas de red. De forma predeterminada, el registro UFW está configurado en bajo, lo cual es adecuado para la mayoría de los sistemas de escritorio. Sin embargo, los servidores pueden requerir un mayor nivel de registro para capturar más detalles.

Puede ajustar el nivel de registro de UFW a bajo, medio o alto o desactivarlo por completo. Para establecer el nivel de registro de UFW en bajo, use el siguiente comando:

sudo ufw logging low

Para configurar el registro UFW en medio:

sudo ufw logging medium

Para configurar el registro UFW en alto:

sudo ufw logging high

La última opción es desactivar el registro por completo; asegúrese de estar satisfecho con esto y no será necesario verificar el registro.

sudo ufw logging off

Para ver los registros de UFW, puede encontrarlos en la ubicación predeterminada de /var/log/ufw.log. Con el comando tail, puede ver registros en vivo o imprimir una cantidad específica de líneas de registro recientes. Por ejemplo, para ver las últimas 30 líneas del registro, utilice el siguiente comando:

sudo ufw tail /var/log/ufw.log -n 30

Revisar los registros puede ayudarlo a determinar qué direcciones IP están intentando conectarse a su sistema e identificar cualquier actividad sospechosa o no autorizada. Además, revisar los registros puede ayudarle a comprender los patrones de tráfico de la red, optimizar el rendimiento de la red e identificar cualquier problema que pueda surgir.

Pruebe las reglas de la UFW

Siempre es una buena idea probar las reglas de su firewall UFW antes de aplicarlas para asegurarse de que funcionen según lo previsto. El indicador “–ejecución en seco” le permite ver los cambios que se habrían realizado sin aplicarlos realmente. Esta es una opción útil para sistemas altamente críticos para evitar cambios accidentales.

Para utilizar el indicador “–ejecución en seco”, escriba el siguiente comando:

sudo ufw --dry-run enable

Para desactivar el indicador “–ejecución en seco”, simplemente use el siguiente comando:

sudo ufw --dry-run disable

Restablecer reglas UFW

A veces, es posible que necesite restablecer su firewall a su estado original con todas las conexiones entrantes bloqueadas y las conexiones salientes permitidas. Esto se puede hacer usando el comando "reset":

sudo ufw reset

Confirme el reinicio, ingrese lo siguiente:

sudo ufw status

La salida debería ser:

Status: inactive 

Una vez que se complete el restablecimiento, el firewall estará inactivo y deberá volver a habilitarlo y comenzar a agregar nuevas reglas. Es importante tener en cuenta que el comando de reinicio debe usarse con moderación, ya que elimina todas las reglas existentes y puede dejar su sistema vulnerable si no se realiza correctamente.

Cómo encontrar todos los puertos abiertos (verificación de seguridad)

La seguridad de su sistema debe ser una prioridad máxima y una forma de garantizarla es comprobando periódicamente si hay puertos abiertos. UFW bloquea todas las conexiones entrantes de forma predeterminada, pero a veces los puertos pueden quedar abiertos sin darse cuenta o por motivos legítimos. En este caso, saber qué puertos están abiertos y por qué es fundamental.

Una forma de comprobar si hay puertos abiertos es utilizar Nmap, una herramienta de exploración de red conocida y confiable. Para instalar Nmap, primero escriba el siguiente comando para instalarlo.

sudo apt install nmap

A continuación, busque la dirección IP interna de su sistema escribiendo:

hostname -I

Salida de ejemplo:

192.168.50.45

Con la dirección IP, ejecute el siguiente comando:

nmap 192.168.50.45

Nmap escaneará su sistema y enumerará todos los puertos abiertos. Si encuentra algún puerto abierto del que no está seguro, investíguelo antes de cerrarlo o bloquearlo, ya que podría interrumpir los servicios o bloquearle el acceso a su sistema.

Según la información de este tutorial, puede crear reglas UFW personalizadas para cerrar o restringir puertos abiertos. UFW bloquea todas las conexiones entrantes de forma predeterminada, así que asegúrese de no bloquear el tráfico legítimo antes de implementar cambios.

Comandos APT de gestión de UFW

Eliminar el cortafuegos UFW

UFW es una herramienta valiosa para administrar reglas de firewall y proteger su sistema Debian. Sin embargo, puede haber situaciones en las que necesite desactivarlo o eliminarlo.

Si desea desactivar UFW temporalmente, puede hacerlo escribiendo el siguiente comando:

sudo ufw disable

Esto desactivará el firewall y permitirá que todo el tráfico pase a través del sistema.

Por otro lado, si necesita eliminar UFW de su sistema por completo, puede hacerlo con el siguiente comando:

sudo apt remove ufw

Sin embargo, es esencial tener en cuenta que eliminar UFW por completo de su sistema puede dejarlo vulnerable a ataques externos. A menos que tenga una alternativa sólida para administrar el firewall de su sistema o comprenda cómo usar IPTables, no es recomendable eliminar UFW.

Por lo tanto, antes de eliminar UFW, asegúrese de tener una solución alternativa para mantener la seguridad de su sistema y evitar el acceso no autorizado.

Conclusión

Joshua James
Sígueme
Últimas entradas de Joshua James (ver todo)

Deja un comentario