Esta guía es parte de un curso mucho más grande en donde te enseñamos a convertirte en hacker de 0 a 100. Desde los conocimientos más básicos hasta conseguir empleo.

Para saber más comente a continuación, respondemos todos y cada uno de los comentarios.

Índice

¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Bienvenidos a esta Guía: Los 10 Mejores Firewall para Linux. Comparte este articulo y síguenos para recibir más capítulos, guías y cursos.

Cuando se trata de seguridad en sistemas Linux, los firewalls son una de las primeras líneas de defensa. Al ser un sistema operativo ampliamente utilizado en entornos de servidores, Linux necesita herramientas robustas para filtrar y bloquear el tráfico no deseado. Un buen firewall no solo protege el sistema, sino que también permite personalizar las reglas de tráfico, ofreciendo un control total sobre las conexiones entrantes y salientes.

IPtables: El Clásico Infalible

IPtables es prácticamente sinónimo de firewall en Linux. Viene preinstalado en casi todas las distribuciones y ofrece un control preciso sobre el tráfico de red. Su poder radica en su flexibilidad, ya que permite definir reglas a nivel de paquetes, creando filtros personalizados para bloquear o permitir tráfico basado en direcciones IP, puertos o protocolos. Aunque IPtables puede parecer complicado al principio, su versatilidad lo convierte en una herramienta esencial para cualquier administrador de sistemas.

La estructura de IPtables permite crear reglas en diferentes cadenas (INPUT, OUTPUT, FORWARD), lo que proporciona una gran granularidad al momento de gestionar el tráfico. Una de sus mayores ventajas es que está respaldado por una amplia documentación y comunidad, lo que facilita resolver cualquier duda o implementar configuraciones avanzadas.

Conceptos básicos de IPTables

IPTables trabaja en capas de red, permitiendo o bloqueando paquetes según reglas definidas por el administrador. Estas reglas se aplican a través de diferentes tablas y cadenas.

  • Tablas:
    • filter – La tabla principal, utilizada para filtrar tráfico (permitir o denegar).
    • nat – Maneja la traducción de direcciones de red (NAT).
    • mangle – Modifica paquetes enrutados.
    • raw – Permite modificar paquetes antes de que el kernel aplique otras reglas.
  • Cadenas (chains):
    • INPUT – Maneja el tráfico entrante al servidor.
    • OUTPUT – Controla el tráfico saliente desde el servidor.
    • FORWARD – Gestiona el tráfico que pasa a través del servidor hacia otro destino.
    • PREROUTING – Modifica paquetes entrantes antes de ser enrutados.
    • POSTROUTING – Modifica paquetes que salen después del enrutamiento.

Paso 1: Verificar y habilitar IPTables

Para verificar si IPTables está instalado y funcionando:

sudo iptables -L

Si el comando no existe, instala IPTables:

  • Ubuntu/Debian:
sudo apt update  
sudo apt install iptables
  • CentOS/RHEL:
sudo yum install iptables-services

Paso 2: Configuración básica de IPTables

  1. Política predeterminada (Bloqueo por defecto)
    Antes de definir reglas, establece políticas predeterminadas:
sudo iptables -P INPUT DROP  
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT

Esto significa:

  • Bloquear todo el tráfico entrante (INPUT DROP).
  • Bloquear el tráfico que pasa a través del servidor (FORWARD DROP).
  • Permitir tráfico saliente (OUTPUT ACCEPT).

Paso 3: Permitir tráfico esencial (SSH, HTTP, HTTPS)

  1. Permitir SSH (Puerto 22)
    Esto es crucial si te conectas remotamente al servidor:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  1. Permitir HTTP y HTTPS (Puertos 80 y 443)
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT  
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
  1. Permitir tráfico de loopback (localhost)
    Esto es necesario para evitar problemas con servicios locales:
sudo iptables -A INPUT -i lo -j ACCEPT
  1. Permitir respuestas de tráfico saliente (estado ESTABLISHED)
    Para que las respuestas a tus solicitudes salientes sean aceptadas:
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

Paso 4: Reglas adicionales

Permitir ICMP (Ping):

sudo iptables -A INPUT -p icmp -j ACCEPT

Permitir conexiones DNS (Puerto 53):

sudo iptables -A INPUT -p udp --dport 53 -j ACCEPT

Bloquear una IP específica:

sudo iptables -A INPUT -s 192.168.1.100 -j DROP

Permitir acceso desde una IP específica (ej. para SSH):

sudo iptables -A INPUT -p tcp -s 192.168.1.50 --dport 22 -j ACCEPT

Paso 5: Guardar y restaurar reglas

IPTables no guarda las reglas de forma persistente. Para que sobrevivan al reinicio, debes guardarlas manualmente:

  • Guardar reglas (Ubuntu/Debian):
sudo iptables-save > /etc/iptables/rules.v4
  • Guardar en CentOS/RHEL:
sudo service iptables save

Para restaurar las reglas:

sudo iptables-restore < /etc/iptables/rules.v4

Paso 6: Eliminar reglas (si es necesario)

Para ver las reglas con números:

sudo iptables -L --line-numbers

Eliminar una regla específica (ejemplo, regla 3):

sudo iptables -D INPUT 3

Eliminar todas las reglas (reset):

sudo iptables -F

Paso 7: Reglas avanzadas

Redireccionar tráfico a otro puerto (Port Forwarding):

sudo iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port 80

Limitar conexiones simultáneas (Ej: 3 conexiones por IP):

sudo iptables -A INPUT -p tcp --dport 22 -m connlimit --connlimit-above 3 -j DROP

Prevenir ataques DDoS con límite de conexiones:

sudo iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT

Verificar y probar el firewall

Para comprobar el estado del firewall y las reglas activas:

sudo iptables -L -v

IPTables es una herramienta extremadamente poderosa para la gestión de tráfico y la seguridad en Linux. Aunque su curva de aprendizaje puede ser pronunciada, dominar IPTables proporciona un control total sobre el flujo de datos, permitiéndote crear una red altamente segura y optimizada.

Si buscas simplicidad, puedes combinar IPTables con herramientas como UFW o Firewalld, pero conocer las reglas base te permitirá gestionar situaciones avanzadas con mayor precisión y confianza.

UFW: Simplicidad con Poder

UFW (Uncomplicated Firewall) es una interfaz simplificada para IPtables, diseñada para facilitar la configuración de reglas de firewall. Es particularmente popular en distribuciones basadas en Debian y Ubuntu, ya que permite crear reglas con comandos sencillos. UFW es ideal para aquellos que buscan proteger sus sistemas rápidamente sin tener que sumergirse en la complejidad de IPtables.

Una de las características más apreciadas de UFW es su capacidad para habilitar o deshabilitar reglas con comandos intuitivos como ufw allow 22/tcp para permitir SSH o ufw deny 80/tcp para bloquear HTTP. Además, permite gestionar perfiles de aplicaciones, lo que facilita aún más la configuración de reglas específicas.

Firewalld: Dinamismo y Flexibilidad

Firewalld es el firewall predeterminado en distribuciones como Fedora y CentOS. A diferencia de IPtables, Firewalld trabaja con zonas, lo que permite definir diferentes niveles de confianza para interfaces de red. Esta característica lo hace ideal para entornos dinámicos donde se necesita adaptar rápidamente las reglas de seguridad.

El diseño de Firewalld permite aplicar cambios sin necesidad de interrumpir conexiones activas, lo que lo convierte en una opción excelente para servidores que requieren alta disponibilidad. Además, su integración con herramientas gráficas facilita la gestión de reglas para aquellos que prefieren interfaces visuales en lugar de líneas de comando.

NFTables: El Reemplazo Moderno

NFTables es el sucesor de IPtables, diseñado para simplificar la gestión de reglas de firewall y mejorar el rendimiento. Introducido en el kernel de Linux 3.13, NFTables ofrece una sintaxis más sencilla y unificada, reduciendo la redundancia y la complejidad de las configuraciones tradicionales.

Una de las ventajas de NFTables es su capacidad para manejar múltiples protocolos en una sola regla, lo que optimiza la gestión del tráfico. Además, permite crear conjuntos de reglas reutilizables, lo que facilita la administración de grandes infraestructuras de red. Si bien NFTables aún no ha reemplazado completamente a IPtables, cada vez más distribuciones lo adoptan como opción predeterminada.

CSF: ConfigServer Security & Firewall

CSF es una opción poderosa diseñada especialmente para servidores web y sistemas de alojamiento. Ofrece una interfaz sencilla para gestionar reglas de firewall, pero también integra funciones adicionales como detección de intrusiones y escaneo de seguridad.

CSF permite automatizar muchas tareas de seguridad, como el bloqueo de direcciones IP sospechosas o la limitación de conexiones fallidas en servicios críticos como SSH. Su integración con herramientas como cPanel lo convierte en una opción popular en entornos de hosting compartido y dedicado.

Shorewall: Potencia para Redes Complejas

Shorewall (Shoreline Firewall) es una herramienta que extiende las capacidades de IPtables, ofreciendo una forma más estructurada de definir reglas. Es ideal para configuraciones avanzadas donde se requiere un control detallado del tráfico en redes complejas.

Shorewall permite segmentar redes, configurar VPNs y crear reglas basadas en zonas, lo que lo convierte en una solución ideal para grandes empresas. A pesar de su potencia, Shorewall sigue siendo accesible para administradores de sistemas con conocimientos intermedios, gracias a su documentación clara y ejemplos de configuración.

PfSense: Seguridad Open Source con Estilo

Aunque técnicamente no es una solución nativa de Linux, pfSense merece mención debido a su robustez como firewall basado en FreeBSD. Es una de las soluciones de firewall open source más completas, utilizada en redes empresariales y centros de datos.

pfSense ofrece una interfaz web intuitiva para gestionar reglas de firewall, VPNs y filtrado de contenido. Su flexibilidad lo hace ideal para entornos donde se necesita un control granular sobre el tráfico, con soporte para módulos adicionales que amplían sus capacidades de seguridad.

IPFire: Rendimiento y Seguridad

IPFire es una distribución de Linux diseñada específicamente para actuar como firewall y router. Su arquitectura modular permite añadir funciones como IDS (Intrusion Detection System), proxy web y filtrado de contenido.

IPFire destaca por su rendimiento optimizado, lo que lo convierte en una opción popular para redes empresariales que necesitan proteger grandes volúmenes de tráfico. Además, ofrece actualizaciones frecuentes para garantizar que el sistema esté protegido contra las últimas amenazas.

Vuurmuur: Control Total con Facilidad

Vuurmuur es un firewall para Linux que proporciona una interfaz amigable para administrar reglas de IPtables. Aunque menos conocido, Vuurmuur se centra en ofrecer simplicidad sin sacrificar el control.

Con Vuurmuur, los administradores pueden definir reglas, supervisar el tráfico en tiempo real y gestionar conexiones activas desde una interfaz de texto clara. Su facilidad de uso lo convierte en una excelente opción para quienes buscan un firewall funcional sin demasiadas complicaciones.

OpenSnitch: Firewall de Aplicación

OpenSnitch es una herramienta diferente del resto, ya que se centra en el control de aplicaciones. Inspirado en Little Snitch de macOS, OpenSnitch permite monitorear y controlar el tráfico generado por aplicaciones específicas, ofreciendo una capa adicional de seguridad.

Este tipo de firewall es ideal para escritorios Linux donde se desea prevenir que aplicaciones maliciosas o no autorizadas se conecten a Internet. Su interfaz gráfica facilita la creación de reglas, permitiendo al usuario aceptar o bloquear conexiones en tiempo real.

Guía paso a paso para configurar UFW (Uncomplicated Firewall) en Linux

UFW (Uncomplicated Firewall) es una herramienta diseñada para simplificar la gestión de IPTables en Linux. Es fácil de usar y proporciona una forma eficaz de proteger tu sistema. Esta guía cubre la instalación, configuración básica y algunos ajustes avanzados para que tengas tu firewall operativo en pocos minutos.

Paso 1: Verificar si UFW está instalado

La mayoría de las distribuciones basadas en Ubuntu y Debian incluyen UFW por defecto. Para verificar si está instalado, abre una terminal y ejecuta:

sudo ufw status

Si ves un mensaje que dice «ufw: command not found», significa que no está instalado.

Paso 2: Instalar UFW (si no está presente)

Para instalar UFW, utiliza el siguiente comando:

sudo apt update  
sudo apt install ufw

En distribuciones basadas en Arch Linux:

sudo pacman -S ufw

Para CentOS o RHEL, primero instala EPEL:

sudo yum install epel-release  
sudo yum install ufw

Paso 3: Habilitar UFW

Antes de habilitar UFW, es importante definir algunas reglas básicas para evitar que te bloquees a ti mismo, especialmente si te estás conectando de forma remota.

Habilita SSH para evitar perder la conexión:

sudo ufw allow ssh

Luego, activa el firewall:

sudo ufw enable

Si ves un mensaje que dice «Firewall is active and enabled on system startup», significa que todo está funcionando correctamente.

Paso 4: Ver el estado del firewall

Para verificar si el firewall está activo y qué reglas están aplicadas, usa:

sudo ufw status verbose

Si el firewall está inactivo, aparecerá el mensaje:

Status: inactive

Paso 5: Permitir y bloquear tráfico (reglas básicas)

Puedes permitir o bloquear tráfico específico usando comandos simples.

  • Permitir tráfico en un puerto específico (HTTP – puerto 80):
sudo ufw allow 80
  • Permitir tráfico HTTPS (puerto 443):
sudo ufw allow 443
  • Permitir acceso a una aplicación (Apache o Nginx):
sudo ufw allow 'Apache Full'
  • Permitir tráfico en un rango de puertos:
sudo ufw allow 2000:3000/tcp
  • Bloquear tráfico (por ejemplo, SSH):
sudo ufw deny ssh

Paso 6: Reglas específicas por IP

Si deseas permitir acceso solo a una IP específica:

sudo ufw allow from 192.168.1.100

Para bloquear una IP concreta:

sudo ufw deny from 45.33.22.50

Permitir acceso desde una IP a un puerto específico:

sudo ufw allow from 192.168.1.100 to any port 22

Paso 7: Eliminar reglas

Para eliminar una regla, primero necesitas listarlas con números:

sudo ufw status numbered

Verás algo como esto:

[ 1] 22                       ALLOW       Anywhere
[ 2] 80 ALLOW Anywhere

Si deseas eliminar la regla 2 (HTTP), usa:

sudo ufw delete 2

Paso 8: Restablecer UFW (volver a configuración inicial)

Si necesitas empezar desde cero:

sudo ufw reset

Esto eliminará todas las reglas y desactivará el firewall.

Paso 9: Registrar actividad (opcional pero recomendado)

Puedes habilitar el registro de actividad para rastrear los intentos de conexión:

sudo ufw logging on

Para ver los registros:

sudo less /var/log/ufw.log

Paso 10: Desactivar UFW (si es necesario)

Si necesitas desactivar temporalmente el firewall:

sudo ufw disable

Para reactivarlo:

sudo ufw enable

Configuración Avanzada: Perfiles de Aplicaciones

UFW viene con perfiles preconfigurados para aplicaciones comunes, lo que facilita la configuración. Para listar estos perfiles:

sudo ufw app list

Verás algo así:

Available applications:
Apache
Apache Full
Nginx Full
OpenSSH

Permitir tráfico para Apache Full (HTTP y HTTPS):

sudo ufw allow 'Apache Full'

Conclusión

UFW es una herramienta simple pero poderosa que ofrece una forma accesible de administrar un firewall en Linux. Ya sea que estés configurando un servidor o simplemente protegiendo tu máquina personal, UFW te permitirá tener control total sobre el tráfico de red. Si bien es sencillo de usar, detrás de su simplicidad está la robustez de IPTables, lo que garantiza que tu sistema esté protegido de forma efectiva.

No te detengas, sigue avanzando

Aquí tienes un propósito para este 2025 que debes considerar seriamente: si has querido mejorar tus habilidades en hacking, Ciberseguridad y programación ahora es definitivamente el momento de dar el siguiente paso. ¡Desarrolla tus habilidades aprovechando nuestros cursos a un precio increíble y avanza en tu carrera! El mundo necesita más hackers…

¿Quieres iniciarte en hacking y ciberseguridad pero no sabes por dónde empezar? Inicia leyendo nuestra guia gratuita: Cómo Iniciarse en Hacking y Ciberseguridad en 2025 que te lleva de 0 a 100. Desde los fundamentos más básicos, pasando por cursos, recursos y certificaciones hasta cómo obtener tu primer empleo.

Hemos creado una ruta de 0 a 100. Un plan de desarrollo que va desde las bases: cómo aprender hacking, qué aprender, en qué orden; pasando por las areas técnicas necesarias como Linux, Redes, Programación y los conocimientos necesarios en ciber seguridad, hacking, pentesting hasta la práctica y el inicio laboral: Crear tu propio laboratorio, certificaciones, adquirir experiencia e iniciarse laboralmente.

Hacker de 0 a 100 desde las bases hasta conseguir empleo

Este es un mega post. Una guía con más de 400 artículos que te llevaran por el camino del hacker. Esta guía es gratuita y esta creada gracias al esfuerzo y al trabajo combinado de Alvaro Chirou y mío (Laprovittera Carlos).

Creamos esta guía: Cómo Iniciarse en Hacking y Ciberseguridad en 2025 y curso: Cómo iniciarse en Hacking y Ciberseguridad para que puedas iniciarte en este mundo. Puedes arrancar ahora, GRATIS, solo necesitas un PC, conexión a internet y paciencia (Ser hacker NO ES un camino de la noche a la mañana).

El Hacking y la ciberseguridad es una carrera divertida, emocionante y gratificante que te recompensará y desafiará por igual. Sin embargo, para quienes buscan adentrarse en este campo en auge y en constante evolución, puede resultar difícil saber por dónde empezar. ¡Ahí es donde entra en juego nuestra guía en ciberseguridad!

Esta es la hoja de ruta hacia el trabajo de ciberseguridad de tus sueños. Te ayudará a entender qué conocimientos, habilidades y certificados son necesarios para alcanzar tus metas profesionales y tener una carrera próspera. Si quieres ser consultor de ciberseguridad, analista de malware, evaluador de penetración, analista de SOC o cualquier otro puesto de ciberseguridad, esta guía es lo que necesitas.

Esta guía va a tener una actualización constante durante todo el año. Para no hacer de esta guía un post maratónicamente largo voy a dividirlo en varios capítulos que van desde como iniciar en hacking y ciberseguridad, pasando por conocimientos básicos como Redes, Linux, Programación, Hasta como obtener certificaciones y trabajo. Cada capítulo contiene links a otros posts en donde desarrollo mejor cada tema y a webs externas que complementan este material.

Lo que vas a aprender en esta guía de Hacking y Ciberseguridad

Esta es la guía completa de Cómo Iniciarse en Hacking y Ciberseguridad en 2025:

Aprende con nuestros más de 100 cursos que tenemos disponibles para vos

¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Sobre los autores

Álvaro Chirou

Yo soy Álvaro Chirou, tengo más de 20 Años de experiencia trabajando en Tecnología, eh dado disertaciones en eventos internacionales como OWASP, tengo más de 2.000.000 estudiantes en Udemy y 100 formaciones profesionales impartidas en la misma. Puedes seguirme en mis redes:

Laprovittera Carlos

Soy Laprovittera Carlos. Con más de 20 años de experiencia en IT brindo Educación y Consultoría en Seguridad de la Información para profesionales, bancos y empresas. Puedes seguirme en mis redes:

Compartimos estos recursos para ayudar a la comunidad de hacking y ciberseguridad. COMPARTE y Siéntete libre de agregar más sugerencias en los comentarios a continuación, respondemos todos y cada uno de los comentarios.