LinuxParty
Ubuntu 24.04 LTS viene con UFW (cortafuegos sencillo) que protege el escritorio o servidor contra accesos no autorizados. UFW es una aplicación de interfaz fácil de usar para un sistema de filtrado de paquetes Linux llamado Netfilter o nftables. Tradicionalmente, las reglas de Netfilter/nftables se configuran mediante el comando iptables o el comando nft por parte de desarrolladores y administradores de sistemas. Sin embargo, los nuevos usuarios y desarrolladores de Ubuntu Linux que no están familiarizados con los conceptos de cortafuegos encuentran confusa la sintaxis de Netfilter/nft. Por lo tanto, el proyecto ufw proporciona una interfaz fácil de usar para servidores y escritorios Linux Ubuntu 24.04 LTS. Esta guía rápida hace que la configuración de UFW en Ubuntu 24.04 LTS sea extremadamente sencilla. Proporciona instrucciones paso a paso para que los desarrolladores y administradores de sistemas aseguren sus servidores de manera eficiente.
Esta página explica cómo configurar un cortafuegos con UFW en servidores o escritorios Ubuntu 24.04 LTS.
Los pasos para configurar UFW son los siguientes:
Paso 1: Configurar políticas UFW predeterminadas
Mirar el acttual estad
sudo ufw status
De forma predeterminada, el firewall no está habilitado. Por lo tanto, verá algo como esto en un sistema recién instalado:
Status: inactive
La política predeterminada del firewall funciona de maravillas para servidores y computadoras de escritorio. Siempre es una buena política cerrar todos los puertos del servidor y abrir solo los puertos TCP o UDP necesarios. Bloqueemos todas las conexiones entrantes y solo permitamos las conexiones salientes desde el servidor en la nube Ubuntu 24.04 LTS:
sudo ufw default allow outgoing
sudo ufw default deny incoming
# Asegúrese de que la compatibilidad con IPv6 también esté habilitada. Ejecute el comando grep de la siguiente manera:
grep IPV6 /etc/default/ufw
De lo contrario, edite el archivo /etc/default/ufw usando un editor de texto (siéntase libre de elegir su editor de texto preferido):
sudo nano /etc/default/ufw
Configúrelo de la siguiente manera:IPV6=yes
Aquí se explica cómo verificar todo nuevamente usando el comando egrep:
sudo grep -E 'POLICY|IPV6' /etc/default/ufw
That is all.
Paso 2 – Abra el puerto TCP 22 de SSH usando ufw
El siguiente paso racional es permitir conexiones SSH entrantes en el puerto TCP predeterminado 22 de la siguiente manera:
sudo ufw allow ssh
Digamos que está ejecutando el servidor OpenSSH en el puerto TCP 1222, entonces:
sudo ufw allow 1222/tcp
También puedes limitar el acceso al puerto ssh a los bots de combate de la siguiente manera:
sudo ufw limit ssh
Paso 3 – Activar el firewall
Eso es todo lo que necesitas. A continuación, debes activar la protección del firewall para tu máquina Ubuntu Linux 24.04 LTS. Por ejemplo:
sudo ufw enable
Es posible que deba confirmar la operación si se le solicita. Para ver el estado actual del firewall, escriba el comando systemctl de la siguiente manera:
sudo ufw status
Tenga en cuenta que una vez que se habilita UFW, se ejecuta incluso después de reiniciar el sistema. Puede comprobarlo fácilmente con el comando systemctl:
sudo systemctl status ufw.service
Salida::
● ufw.service - Uncomplicated firewall Loaded: loaded (/usr/lib/systemd/system/ufw.service; enabled; preset: enabled) Active: active (exited) since Wed 2024-05-15 09:22:12 UTC; 10min ago Docs: man:ufw(8) Main PID: 503 (code=exited, status=0/SUCCESS) CPU: 6ms May 15 09:22:12 ubuntu systemd[1]: Starting ufw.service - Uncomplicated firewall... May 15 09:22:12 ubuntu-24-04 systemd[1]: Finished ufw.service - Uncomplicated firewall. root@ubuntu-24-04:~#
Paso 4 – Abrir (permitir) puertos TCP o UDP
Después de configurar una política de firewall y abrir el puerto TCP 22 para SSH, el siguiente paso es abrir puertos de servicio adicionales según los requisitos de su aplicación. Por ejemplo, es posible que necesite abrir los puertos TCP 80 y 443 para servidores web Nginx, Apache o Lighttpd:
sudo ufw allow 80/tcp comment 'Allow Apache HTTP'
sudo ufw allow 443/tcp comment 'Allow Apache HTTPS'
Aquí se explica cómo abrir el puerto UDP 1194 de OpenVPN: escriba:
sudo ufw allow 1194/udp comment 'Allow OpenVPN'
Las palabras clave de comentario ufw agregan comentarios, que actúan como un instrumento para comprender las reglas del firewall.
Apertura de rangos de puertos TCP y UDP
sudo ufw allow 3000:3200/tcp
sudo ufw allow 7000:8000/udp
Permitir la conexión desde una única IP o CIDR
En este ejemplo, si desea permitir TODAS las conexiones desde una dirección IP llamada 8.8.8.8, ingrese:
sudo ufw allow from 8.8.8.8
Permitamos conexiones desde una dirección IP llamada 123.1.2.3 a nuestro puerto 25, ingrese:
sudo ufw allow from 123.1.2.3 to any port 25 proto tcp
También puedes configurar la IP de destino 111.1.2.3 para el puerto 25:
sudo ufw allow from 123.2.3.4 to 111.1.2.3 port 25 proto tcp
Cómo permitir la conexión en una interfaz específica
Abra el puerto TCP 22 solo para la interfaz wg1:
sudo ufw allow in on wg1 to any port 22
Digamos que desea permitir la conexión para el puerto TCP 3306 en la interfaz incusbr0 desde 10.105.28.22, luego agregue:
sudo ufw allow in on incusbr0 from 10.105.28.22 to any port 3306 proto tcp
Paso 5 – Bloqueo de puertos y conexiones TCP o UDP
¿Quieres cerrar puertos y bloquear determinadas direcciones IP? La sintaxis para denegar el acceso es la siguiente. En otras palabras, simplemente se ignora el acceso al puerto 23:
sudo ufw deny 23/tcp comment 'Block telnet'
Aquí se explica cómo denegar todas las conexiones desde una dirección IP llamada 1.1.1.1, ingrese:
sudo ufw deny from 1.1.1.1
¿Qué tal si la IP/subred de reloj (CIDR) se llama 1.42.42.32/27, ingresa:
sudo ufw deny from 1.42.42.32/27
Por último, ¿quieres denegar el acceso a 1.1.1.4 (por ejemplo, a la dirección IP de los malhechores o de los piratas informáticos) en el puerto 22? Prueba:
sudo ufw deny from 1.1.1.4 to any port 22 proto tcp
Prueba de reglas ufw para detectar errores de sintaxis
Pase la opción --dry-run para probar una regla ufw. Esto significa no modificar nada, solo mostrar los cambios del firewall. Esto es ideal para probar reglas antes de insertarlas o eliminarlas. La sintaxis:
sudo ufw --dry-run rule
sudo ufw --dry-run allow from 192.168.1.0/24 to any port 3128 proto tcp
# make some error and see what it doesudo ufw --dry-run allow from 192.168.1.1000/24 to any port 3128 proto tcp
Outputs:
ERROR: Bad source address
sudo ufw --dry-run allow from 192.168.1.1/24 to any port 3128 proto tcp_fake_proto
Outputs:
ERROR: Unsupported protocol 'tcp_fake_proto'
Paso 6 – Visualización de las reglas del firewall
Puede ver el estado del firewall como una lista numerada de REGLAS:
sudo ufw status numbered
Paso 7 – Eliminar las reglas del firewall de ufw
Obtenga una lista de todas las reglas actuales en formato de lista numerada:
sudo ufw status numbered
Salida::
Status: active To Action From -- ------ ---- [ 1] 22/tcp ALLOW IN Anywhere [ 2] 80/tcp ALLOW IN Anywhere # Allow Apache HTTP [ 3] 443/tcp ALLOW IN Anywhere # Allow Apache HTTPS [ 4] 1194/udp ALLOW IN Anywhere # Allow OpenVPN [ 5] 3000:3200/tcp ALLOW IN Anywhere [ 6] 7000:8000/udp ALLOW IN Anywhere [ 7] Anywhere ALLOW IN 8.8.8.8 [ 8] 25/tcp ALLOW IN 123.1.2.3 [ 9] 111.1.2.3 25/tcp ALLOW IN 123.2.3.4 [10] 22 on wg1 ALLOW IN Anywhere [11] 3306/tcp on incusbr0 ALLOW IN 10.105.28.22 [12] 23/tcp DENY IN Anywhere # Block telnet [13] Anywhere DENY IN 1.1.1.1 [14] Anywhere DENY IN 1.42.42.32/27 [15] 22/tcp DENY IN 1.1.1.4 [16] 22/tcp (v6) ALLOW IN Anywhere (v6) [17] 80/tcp (v6) ALLOW IN Anywhere (v6) # Allow Apache HTTP [18] 443/tcp (v6) ALLOW IN Anywhere (v6) # Allow Apache HTTPS [19] 1194/udp (v6) ALLOW IN Anywhere (v6) # Allow OpenVPN [20] 3000:3200/tcp (v6) ALLOW IN Anywhere (v6) [21] 7000:8000/udp (v6) ALLOW IN Anywhere (v6) [22] 22 (v6) on wg1 ALLOW IN Anywhere (v6) [23] 23/tcp (v6) DENY IN Anywhere (v6) # Block telnet
Para eliminar la regla de firewall n.° 22, escriba el comando:
sudo ufw delete 22
sudo ufw status numbered
Consulte el tutorial sobre cómo eliminar una regla de firewall UFW en Ubuntu/Debian Linux para obtener más información.
Paso 8 – Detención y eliminación de UFW
Si ya no necesita ufw, aquí le mostramos cómo deshabilitarlo:
sudo ufw disable
sudo ufw reset
Paso 9 – Ver los registros del firewall
De manera predeterminada, todas las entradas de UFW se registran en el archivo /var/log/ufw.log. Utilice grep/less/more y otros comandos para ver los registros de UFW. Por ejemplo:
sudo journalctl -u ufw.service
Imprimamos una lista de todas las direcciones IP que intentan iniciar sesión a través del puerto SSH pero que el UFW descarta:
journalctl -u ufw.service -g 'DPT=22' |\
grep -E -o 'SRC=([0-9]{1,3}[\.]){3}[0-9]{1,3}' |\
awk -F'=' '{ print $2 }' | sort -u
Finalmente, aquí se explica cómo mostrar la lista de reglas:
sudo ufw show listening
Salida::
tcp: tcp6: 22 * (systemd) [16] allow 22/tcp udp: 68 10.83.200.36 (systemd-networkd) [ 7] allow from 8.8.8.8 [13] deny from 1.1.1.1 [14] deny from 1.42.42.32/27
También:
sudo ufw show added
Resumiendo
¿No fue fácil? Ya aprendió a proteger su servidor Linux Ubuntu 24.04 LTS. Para obtener más instrucciones, consulte la documentación en línea o acceda a ella mediante el comando man (comando ufw help).
man ufw
ufw help
-
Artículos
- Cómo crear un túnel SSH en Linux
- Cómo configurar el firewall UFW en Ubuntu en 5 minutos
- Linux Lite acaba de incorporar una útil función de inteligencia artificial para el escritorio, y es más sutil de lo que cree
- Cómo instalar Linux en una unidad USB y ejecutarlo en cualquier PC
- Phoca Desktop System Plugin 4.0.5 publicado
- Herramientas de IA para Traducciones Precisas y Naturales: Cómo Optimizar el Proceso
- 6 características que desearía que MacOS copiara de Linux
- Malware en Android: VPN y Apps Peligrosas en Play Store
- Probar el micrófono en Linux usando terminal o shell
- ¿Qué es peor que atrasar el reloj una hora? El horario de verano permanente
- Nueva definición de IA de código abierto criticada por no abrir datos de entrenamiento
- Cómo monitorizar MySQL / MariaDB con Netdata
- Disponible ONLYOFFICE Docs 8.2 con edición colaborativa de PDF, interfaz renovada, rendimiento optimizado y más
- Por qué Microsoft Excel no morirá
- El futuro de Halo se está construyendo con Unreal Engine 5