Cómo instalar y configurar Firewall con UFW en Debian 10

27 feb 2021 6 min di lettura
Cómo instalar y configurar Firewall con UFW en Debian 10
Indice dei contenuti

Introducción

Debian incluye varios paquetes que proporcionan herramientas para administrar un firewall con iptables instaladas como parte del sistema base. Puede ser complicado para los principiantes aprender a usar la herramienta iptables para configurar y administrar correctamente un firewall, pero UFW lo hace fácil.

UFW (Uncomplicated Firewall) es un front-end intuitivo para administrar las reglas del firewall de iptables y su principal objetivo es simplificar la administración de iptables o como su nombre lo indica sin complicaciones.

En este tutorial, le mostraremos cómo configurar un firewall con UFW en Debian 10 Buster.

Prerrequisitos

Antes de continuar con este tutorial, asegúrese de que el usuario que haya iniciado sesión tenga privilegios de sudo.

Si desea instalar UFW Firewall en un servidor remoto, continúe leyendo; de lo contrario, omita el primer párrafo "Conexión al servidor" y lea el siguiente.

Conexión al servidor

Para acceder al servidor, necesita conocer la dirección IP. También necesitará su nombre de usuario y contraseña para la autenticación. Para conectarse al servidor como root, escriba el siguiente comando:

ssh root@IP_DEL_SERVER

A continuación, deberá ingresar la contraseña del usuario root.

Si no está utilizando el usuario root, puede iniciar sesión con otro nombre de usuario utilizando el mismo comando, luego cambie root a su nombre de usuario:

ssh nome_utente@IP_DEL_SERVER

Luego se le pedirá que ingrese su contraseña de usuario.

El puerto estándar para conectarse a través de ssh es 22, si su servidor usa un puerto diferente, deberá especificarlo usando el parámetro -p, luego escriba el siguiente comando:

ssh nome_utente@IP_DEL_SERVER -p PORTA

Instalar UFW

UFW no se instala de forma predeterminada en Debian 10. Puede instalar el ufw escribiendo el siguiente comando:

sudo apt install ufw

Verificar el estado de UFW

Una vez que se completa el proceso de instalación, puede verificar el estado de UFW con el siguiente comando:

sudo ufw status

La salida se verá así:

Status: inactive

UFW está deshabilitado de forma predeterminada. La instalación no activará automáticamente el firewall para evitar el bloqueo desde el servidor.

Reglas predefinidas de UFW

De forma predeterminada, UFW bloqueará todas las conexiones entrantes y permitirá todas las conexiones salientes. Esto significa que cualquiera que intente acceder a su servidor no podrá conectarse a menos que usted abra específicamente el puerto, mientras que todas las aplicaciones y servicios que se ejecutan en el servidor podrán acceder al mundo exterior.

Las reglas predeterminadas se definen en el /etc/default/ufw y se pueden cambiar usando el comando sudo ufw default <policy> <chain>

Las políticas de firewall son la base para crear reglas más detalladas y definidas por el usuario. En la mayoría de los casos, los criterios predeterminados iniciales de UFW son un buen lugar para comenzar.

Perfiles de aplicación

Al instalar un paquete con apt this, se agregará un perfil de aplicación al /etc/ufw/applications.d describe el servicio y contiene la configuración de UFW.

Para enumerar todos los perfiles de aplicación disponibles en el tipo de sistema:

sudo ufw app list

Dependiendo de los paquetes instalados en su sistema, la salida se verá así:

Available applications:
 AIM
 Bonjour
 CIFS
 DNS
 Deluge
 IMAP
 IMAPS
 IPP
 KTorrent
 Kerberos Admin
 Kerberos Full
 Kerberos KDC
 Kerberos Password
 LDAP
 LDAPS
 LPD
 MSN
 MSN SSL
 Mail submission
 NFS
 OpenSSH
 POP3...

Para encontrar más información sobre un perfil específico y las reglas incluidas, use el siguiente comando:

sudo ufw app info OpenSSH
Profile: OpenSSH
 Title: Secure shell server, an rshd replacement
 Description: OpenSSH is a free implementation of the Secure Shell protocol.

 Port:
 22/tcp

A La salida anterior nos dice que el perfil OpenSSH usa el puerto 22.

Permitir conexiones SSH

Antes de habilitar el firewall UFW, primero debemos permitir las conexiones SSH entrantes.

Si se está conectando a su servidor desde una ubicación remota, si habilita el cortafuegos UFW antes de permitir explícitamente las conexiones SSH entrantes, ya no podrá conectarse a su servidor Debian.

Para configurar el firewall UFW para permitir conexiones SSH entrantes, ejecute el siguiente comando:

sudo ufw allow OpenSSH
Rules updated
 Rules updated (v6)

Si el servidor SSH está escuchando en un puerto que no sea el puerto predeterminado 22, será necesario abrir ese puerto.

Por ejemplo, el servidor ssh está escuchando en el puerto 8822, puede usar el siguiente comando para permitir conexiones en ese puerto:

sudo ufw allow 8822/tcp

Habilitar UFW

Ahora que el firewall de UFW está configurado para permitir conexiones SSH entrantes, puede habilitarlo ejecutando:

sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
 Firewall is active and enabled on system startup

Se le advertirá que habilitar el firewall puede interrumpir las conexiones ssh existentes, simplemente escriba y y presione Enter.

Permitir conexiones en otros puertos

Dependiendo de las aplicaciones que se ejecuten en su servidor y sus necesidades específicas, también deberá permitir el acceso entrante a algunos otros puertos.

A continuación, se muestran algunos ejemplos de cómo permitir conexiones entrantes a algunos de los servicios más comunes:

Puerto abierto 80 - HTTP

Las conexiones HTTP se pueden permitir con el siguiente comando:

sudo ufw allow http

En lugar del http, puede utilizar el número de puerto 80:

sudo ufw allow 80/tcp

Puerto abierto 443 - HTTPS

Las conexiones HTTP se pueden permitir con el siguiente comando:

sudo ufw allow https

Para obtener el mismo resultado en lugar de https, puede usar el número de puerto 443:

sudo ufw allow 443/tcp

Puerta abierta 8080

Si está ejecutando Tomcat o cualquier otra aplicación que esté escuchando en el puerto 8080, puede permitir conexiones entrantes con:

sudo ufw allow 8080/tcp

Permitir rangos de puertos

Con UFW también puede permitir el acceso a rangos de puertos. Al permitir rangos de puertos con UFW, debe especificar el protocolo, ya sea tcp o udp.

Por ejemplo, para habilitar los puertos 7100 a 7200 tanto en tcp como en udp, ejecute el siguiente comando:

sudo ufw allow 7100:7200/tcp

Permitir direcciones IP específicas

Si desea permitir el acceso a todos los puertos desde una dirección IP específica, use el ufw allow from seguido de la dirección IP:

sudo ufw allow from 64.63.62.61

Permitir direcciones IP específicas en un puerto específico

Para permitir el acceso a un puerto específico, supongamos que el puerto 22 de su máquina de trabajo con la dirección IP 64.64.64.64 usa el siguiente comando:

sudo ufw allow from 64.63.62.61 to any port 22

Permitir subredes

El comando para permitir la conexión a una subred de direcciones IP es el mismo que cuando se usa una sola dirección IP, la única diferencia es que debe especificar la máscara de red. Por ejemplo, si desea permitir el acceso a direcciones IP que van desde 192.168.1.1 a 192.168.1.254 en el puerto 3360 ( MySQL ), puede usar este comando:

sudo ufw allow from 192.168.1.0/24 to any port 3306

Permitir conexiones a una interfaz de red específica

Para permitir el acceso en un puerto específico, suponga que el puerto 3360 es solo para la interfaz de red eth2 allow in on y el nombre de la interfaz de red:

sudo ufw allow in on eth2 to any port 3306

Denegar 3 conexiones

La política predeterminada para todas las conexiones entrantes está configurada para deny que significa que UFW bloqueará todas las conexiones entrantes a menos que abra específicamente la conexión.

Digamos que ha abierto los puertos 80 y 443 y su servidor está siendo atacado por la red 23.24.25.0/24. Para denegar todas las conexiones de 23.24.25.0/24, use el siguiente comando:

sudo ufw deny from 23.24.25.0/24

Si solo desea denegar el acceso a los puertos 80 y 443 desde 23.24.25.0/24 use:

sudo ufw deny from 23.24.25.0/24 to any port 80

Escribir reglas de denegación es lo mismo que escribir reglas permisivas, solo necesita reemplazar allow por deny.

Eliminar reglas de UFW

Hay dos formas diferentes de eliminar las reglas de UFW, según el número de regla y especificando la regla real.

Eliminar reglas de UFW basadas en el número de regla es más fácil, especialmente si no conoce UFW.

Para eliminar una regla basada en un número de regla, primero debe encontrar el número de la regla que desea eliminar. Para hacer esto, ejecute el siguiente comando:

sudo ufw status numbered
Status: active

 To Action From
 -- ------ ----
 [ 1] 22/tcp ALLOW IN Anywhere
 [ 2] 80/tcp ALLOW IN Anywhere
 [ 3] 8080/tcp ALLOW IN Anywhere

Para eliminar la regla número 3, la regla que permite conexiones al puerto 8080, puede usar el siguiente comando:

sudo ufw delete 3

El segundo método consiste en eliminar una regla especificando la regla real. Por ejemplo, si agregó una regla para abrir el puerto 8069, puede eliminarla con:

sudo ufw delete allow 8069

Desactivar UFW

Si por alguna razón desea detener UFW y deshabilitar todas las reglas de ejecución:

sudo ufw disable

Más tarde, si desea volver a habilitar UTF y habilitar todas las reglas, escriba:

sudo ufw enable

Restaurar UFW

Restablecer UFW deshabilitará UFW y eliminará todas las reglas activas. Esto es útil si desea revertir todos los cambios y comenzar de nuevo.

Para restaurar UFW simplemente escriba el siguiente comando:

sudo ufw reset

Conclusión

Ha aprendido a instalar y configurar el cortafuegos UFW en su sistema Debian 10 Buster. Asegúrese de permitir todas las conexiones entrantes necesarias para que el sistema funcione correctamente, mientras limita todas las conexiones innecesarias.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.