Nota: para este tutorial, la interfaz de red enp2s0 y la dirección IP 192.168.0.2/7 se usaron como ejemplo, reemplácelos por los correctos.
Instalación de ufw:
Para instalar ufw en Debian, ejecute:
apto instalar ufw
Para habilitar la ejecución de UFW:
habilitar ufw
Para deshabilitar la ejecución de UFW:
deshabilitar ufw
Si desea realizar una verificación rápida del estado de su firewall, ejecute:
estado de ufw
Dónde:
Estado: informa si el firewall está activo.
A: muestra el puerto o servicio
Acción: muestra la política
De: muestra las posibles fuentes de tráfico.
También podemos verificar el estado del firewall con verbosidad ejecutando:
ufw estado detallado
Este segundo comando para ver el estado del firewall también mostrará las políticas predeterminadas y la dirección del tráfico.
Además de las pantallas informativas con "estado ufw" o "estado ufw detallado", podemos imprimir todas las reglas numeradas si ayuda a administrarlas, como verá más adelante. Para obtener una lista numerada de las reglas de su firewall, ejecute:
estado de ufw numerado
En cualquier etapa, podemos restablecer la configuración de UFW a la configuración predeterminada ejecutando:
restablecimiento de ufw
Al restablecer las reglas de ufw, solicitará confirmación. prensa Y para confirmar.
Breve introducción a las políticas de firewalls:
Con cada firewall podemos determinar una política predeterminada, las redes sensibles pueden aplicar una política restrictiva que significa denegar o bloquear todo el tráfico excepto el específicamente permitido. A diferencia de una política restrictiva, un firewall permisivo aceptará todo el tráfico excepto el específicamente bloqueado.
Por ejemplo, si tenemos un servidor web y no queremos que ese servidor sirva más que un simple sitio web, podemos aplicar una política restrictiva que bloquee todos los puertos excepto los puertos 80 (http) y 443 (https), esa sería una política restrictiva. porque por defecto todos los puertos están bloqueados a menos que desbloquee uno específico. Un ejemplo de firewall permisivo sería un servidor desprotegido en el que solo bloqueamos el puerto de inicio de sesión, por ejemplo, 443 y 22 para servidores Plesk como solo puertos bloqueados. Además, podemos usar ufw para permitir o denegar el reenvío.
Aplicar políticas restrictivas y permisivas con ufw:
Para restringir todo el tráfico entrante por defecto usando ufw run:
ufw predeterminado denegar entrante
Para hacer lo contrario permitiendo que se ejecute todo el tráfico entrante:
ufw por defecto permitir entrantes
Para bloquear todo el tráfico saliente de nuestra red la sintaxis es similar, para hacerlo ejecutar:
Para permitir todo el tráfico saliente, simplemente reemplazamos "negar" por "permitir”, Para permitir que el tráfico saliente se ejecute incondicionalmente:
También podemos permitir o denegar el tráfico para interfaces de red específicas, manteniendo diferentes reglas para cada interfaz, para bloquear todo el tráfico entrante de mi tarjeta ethernet que ejecutaría:
ufw niega en enp2s0
Dónde:
ufw= llama al programa
negar= define la política
en= tráfico entrante
enp2s0= mi interfaz ethernet
Ahora, aplicaré una política restrictiva predeterminada para el tráfico entrante y luego permitiré solo los puertos 80 y 22:
ufw predeterminado denegar entranteufw permitir 22
ufw permitir http
Dónde:
El primer comando bloquea todo el tráfico entrante, mientras que el segundo permite conexiones entrantes al puerto 22 y el tercer comando permite conexiones entrantes al puerto 80. Tenga en cuenta que ufw nos permite llamar al servicio por su puerto o nombre de servicio predeterminado. Podemos aceptar o denegar conexiones al puerto 22 o ssh, puerto 80 o http.
El comando "estado de ufw verboso”Mostrará el resultado:
Se deniega todo el tráfico entrante mientras los dos servicios (22 y http) que permitimos estén disponibles.
Si queremos eliminar una regla concreta, podemos hacerlo con el parámetro "Eliminar". Para eliminar nuestra última regla que permite que el tráfico entrante se ejecute en el puerto http:
ufw eliminar permitir http
Comprobemos si los servicios http continúan disponibles o bloqueados ejecutando ufw estado detallado:
El puerto 80 ya no aparece como excepción, siendo el puerto 22 el único.
También puede eliminar una regla simplemente invocando su ID numérico proporcionado por el comando "estado de ufw numerado”Mencionado antes, en este caso eliminaré el NEGAR política sobre el tráfico entrante a la tarjeta ethernet enp2s0:
ufw eliminar 1
Pedirá confirmación y procederá si se confirma.
Además de NEGAR podemos usar el parámetro RECHAZAR que informará al otro lado que la conexión fue rechazada, para RECHAZAR conexiones a ssh podemos ejecutar:
ufw rechazar 22
Luego, si alguien intenta acceder a nuestro puerto 22, se le notificará que la conexión fue rechazada como en la imagen de abajo.
En cualquier etapa, podemos verificar las reglas agregadas sobre la configuración predeterminada ejecutando:
ufw show agregado
Podemos denegar todas las conexiones mientras permitimos direcciones IP específicas, en el siguiente ejemplo rechazaré todas las conexiones al puerto 22 excepto la IP 192.168.0.2 que será el único capaz de conectarse:
ufw negar 22ufw permitir desde 192.168.0.2
Ahora, si verificamos el estado de ufw, verá que todo el tráfico entrante al puerto 22 está denegado (regla 1) mientras está permitido para la IP especificada (regla 2)
Podemos limitar los intentos de inicio de sesión para evitar ataques de fuerza bruta estableciendo un límite de ejecución:
límite de ufw ssh
Para finalizar este tutorial y aprender a apreciar la generosidad de ufw, recordemos la forma en que podríamos denegar todo el tráfico excepto una única IP usando iptables:
iptables -A SALIDA -d 192.168.0.2 -j ACEPTAR
iptables -P CAIDA DE ENTRADA
iptables -P CAIDA DE SALIDA
Lo mismo se puede hacer con solo 3 líneas más cortas y simples usando ufw:
ufw predeterminado denegar entranteufw predeterminado denegar saliente
ufw permitir desde 192.168.0.2
Espero que haya encontrado útil esta introducción a ufw. Antes de cualquier consulta sobre UFW o cualquier pregunta relacionada con Linux, no dude en contactarnos a través de nuestro canal de soporte en https: // support.linuxhint.com.
Artículos relacionados
Iptables para principiantes
Configurar Snort IDS y crear reglas