A tu propio ritmo

Explora nuestra extensa colección de cursos diseñados para ayudarte a dominar varios temas y habilidades. Ya seas un principiante o un aprendiz avanzado, aquí hay algo para todos.

Bootcamp

Aprende en vivo

Únete a nosotros en nuestros talleres gratuitos, webinars y otros eventos para aprender más sobre nuestros programas y comenzar tu camino para convertirte en desarrollador.

Próximos eventos en vivo

Catálogo de contenidos

Para los geeks autodidactas, este es nuestro extenso catálogo de contenido con todos los materiales y tutoriales que hemos desarrollado hasta el día de hoy.

Tiene sentido comenzar a aprender leyendo y viendo videos sobre los fundamentos y cómo funcionan las cosas.

Buscar en lecciones


Ingresar
← Regresar a lecciones

Entendiendo los Cortafuegos: Protección Esencial para la Seguridad de la Red

¿Cuándo necesitas un cortafuegos?
Tipos de cortafuegos

Un cortafuegos, conocido en inglés como firewall, es un sistema de seguridad de red diseñado para monitorear y controlar el tráfico entrante y saliente basado en políticas de seguridad predeterminadas. Su función principal es crear una barrera entre una red interna segura y otra red externa, como Internet, para proteger la red interna de accesos no autorizados, ataques y otros riesgos de seguridad.

¿Cuándo necesitas un cortafuegos?

Se requiere un cortafuegos para cualquier máquina que se conecte a Internet. No sólo tu PC, sino también tu servidor web, teléfono, dispositivos de IoT, o cualquier cosa que se te ocurra que tenga la capacidad de usar Internet. Un dispositivo desprotegido es una fácil elección para las intrusiones e infecciones. Esto podría dar a los hackers la posibilidad de apoderarse de tus equipos, instalar lo que quieran, vigilar mientras introduces información sensible como credenciales bancarias, o incluso mirar a través de tu webcam/cámara y escuchar a través de tu micrófono. En el caso de un servidor web, si un hacker consigue pasar, podría desconfigurar tu sitio web, incrustar un malware que infecte a tus visitantes, cambiar tu contraseña de administrador de WordPress, o derribar tu sitio por completo.

Sin un cortafuegos, tu sitio web e incluso tus dispositivos personales son vulnerables a los ataques DDoS, un vector de ataque que envía miles o millones de paquetes falsos para sobrecargar tu servidor y hacer que tu sitio web o Internet se caiga.

El cortafuegos puede proteger tus equipos, servidores o tu sitio web frente a:

  • Intrusiones: Los cortafuegos impiden a los usuarios no autorizados acceder a tu equipo o servidor de forma remota y hacer lo que quieran.
  • Malware: Los atacantes que logran infiltrarse pueden enviar malware para infectarte a ti o a tu servidor. El malware puede robar información personal, propagarse a otros usuarios o dañar de alguna manera tu computadora.
  • Ataques de fuerza bruta: Intentos de los hackers de probar cientos de combinaciones de nombres de usuario y contraseñas para descubrir las credenciales de acceso de su administrador (o de otros usuarios).
  • Ataques DDoS: Los cortafuegos (especialmente los de aplicaciones web) pueden intentar detectar la afluencia de tráfico falso que se produce durante un ataque DDoS.

Tipos de cortafuegos

Hay muchos tipos diferentes de cortafuegos, cada uno está diseñado para una situación diferente. Algunos son mejores para equipos individuales, mientras que otros están hechos para filtrar toda la red. Todos funcionan de manera diferente y bloquean mejor diferentes tipos de tráfico. Si te preguntas qué deberías buscar, vamos a analizar todos los principales tipos  de cortafuegos. A menos que tengas tu propia pila de servidores (proporcionando un sitio web con tu propia Internet), el tipo de cortafuegos del que debes preocuparte principalmente son los cortafuegos personales, los cortafuegos de software y los cortafuegos de las aplicaciones web. Estos tres son los más importantes. Sin embargo, lee más sobre el resto si quieres entender mejor cómo funciona un cortafuegos y cómo han evolucionado a lo largo de los años.

1) Cortafuegos personal

Los cortafuegos funcionan de forma muy diferente dependiendo de si son utilizados por dispositivos individuales, redes enteras (como dentro de una oficina comercial) o servidores web. Un cortafuegos personal está pensado para ser usado en un solo dispositivo. Este es el firewall que viene preinstalado en las máquinas de Windows y Mac o con tu software antivirus. Aunque funciona de manera similar a un cortafuegos de servidor – permitiendo o rechazando conexiones de otros dispositivos, aplicaciones e IPs basadas en un conjunto de reglas predefinidas – actúa de una manera un poco diferente.

Los cortafuegos personales pueden proteger los puertos que utilizas para conectarte a sitios web y aplicaciones en línea (ocultándolos para que los atacantes no puedan ver que están abiertos), defenderse contra los ataques que se deslizan por la red, evitar que las personas accedan y se apoderen de tu equipo y analizar todo el tráfico entrante y saliente. También actúan como aplicaciones de cortafuegos, monitoreando la actividad de las aplicaciones en tu dispositivo y negándose a permitir que se establezca una conexión con software inseguro o desconocido. Hoy en día, obtener un cortafuegos personal es bastante fácil. Si usas cualquier versión moderna de Windows, ya debería haber uno por defecto.

Windows Defender Firewall

firewall2

Aplicación de cortafuegos en macOS

Los dispositivos Mac también vienen con uno, aunque tienes que encenderlo tú mismo. Para ello, navega a Preferencias del Sistema, haz clic en Seguridad y Privacidad y luego en Firewall:

firewall3

El software antivirus a menudo viene con el suyo propio también. Un ejemplo es el antivirus Avast: su software de cortafuegos es compatible con Windows y sirve como una segunda capa de defensa. También existen cortafuegos personales de terceros, pero pueden causar un conflicto con la configuración predeterminada.

2) Hardware vs. Software Cortafuegos

Los cortafuegos tienen dos formas distintas: cortafuegos de hardware y de software. Los cortafuegos de software son programas descargables para tu dispositivo, monitoreando todo desde un panel de control central. Los cortafuegos de hardware proporcionan una funcionalidad similar, pero están físicamente instalados en el edificio. Puede que no lo sepas, pero probablemente tengas una forma de cortafuegos de hardware en tu casa: tu router, el dispositivo que te permite conectarte a Internet. Si bien no es exactamente lo mismo que un dispositivo de cortafuegos de hardware dedicado, proporciona funciones similares de monitoreo y de permitir o negar conexiones.

Tanto el software como el hardware de los cortafuegos se sitúan entre el dispositivo y el mundo exterior, analizando cuidadosamente cualquier conexión que intente colarse. Puedes tener uno o ambos funcionando en tu red. Sin embargo, los cortafuegos de hardware tienen algunas desventajas. Son difíciles de instalar y requieren un mantenimiento continuo, por lo que no suelen ser adecuados para dispositivos individuales o empresas muy pequeñas sin un departamento de informática. Pueden causar problemas de rendimiento, especialmente cuando se aplican junto con un cortafuegos de software. Y no son adecuados para bloquear aplicaciones en un dispositivo, o restricciones basadas en el usuario.

Por otro lado, un cortafuegos de hardware protegerá toda su red de dispositivos fácilmente, mientras que la configuración del software para ello es una tarea más difícil. Y aunque un atacante puede deshabilitar el software si logra entrar, no puede manipular el dispositivo físico. Los cortafuegos de software son, como su nombre indica, mejores para trabajar con programas en un dispositivo. Bloquear aplicaciones, administrar usuarios, generar registros y monitorear usuarios en tu red son su especialidad. No son tan fáciles de configurar en toda la red, pero cuando se instalan en múltiples dispositivos, permiten un control más fino.

3) Cortafuegos de filtrado de paquetes

El cortafuegos de filtrado de paquetes es el tipo más simple de cortafuegos, y está entre los primeros desarrollados. Un paquete es la información que se intercambia entre tu dispositivo y un servidor. Cuando haces clic en un enlace, subes un archivo o envías un correo electrónico, envías un paquete al servidor. Y cuando cargas una página web, te envía paquetes a ti. Un cortafuegos con filtro de paquetes analiza estos paquetes y los bloquea basándose en un conjunto de reglas predefinidas. Por ejemplo, podría bloquear los paquetes que se originan en un determinado servidor o dirección IP, o los que intentan llegar a un determinado destino en tu servidor.

La desventaja: Estos tipos de cortafuegos son simples y fáciles de engañar. No hay forma de aplicar reglas avanzadas. Si permites que el tráfico fluya a través de un determinado puerto, el cortafuegos de filtrado de paquetes dejará pasar cualquier cosa, incluso el tráfico que los cortafuegos modernos obviamente no dejarían pasar. La única ventaja de estos es que son tan simples que casi no tienen impacto en el rendimiento. No inspeccionan el tráfico, no guardan registros ni ejecutan ninguna función avanzada. Hoy en día, los cortafuegos de filtrado de paquetes deberían evitarse o al menos usarse junto con algo más avanzado, ya que hay soluciones mucho mejores.

4) Cortafuegos de estado (stateful)

Después de los «sin estado», los filtros de paquetes simples llegó la tecnología de los cortafuegos de estado. Esto fue revolucionario porque en lugar de analizar los paquetes a medida que pasan y rechazarlos basándose en parámetros simples, los cortafuegos de estado manejan información dinámica y continúan monitoreando los paquetes a medida que pasan por la red. Un simple cortafuegos de filtrado de paquetes solo puede bloquear basado en información estática como la dirección IP o el puerto. Los cortafuegos de estado son mejores para detectar y bloquear el tráfico ilegítimo porque reconocen patrones y otros conceptos avanzados.

Comparado con los cortafuegos sin estado, la desventaja es que son más intensivos debido a que almacenan paquetes de datos en la memoria y los analizan más rigurosamente, además de mantener registros de lo que se bloquea y lo que pasa a través de ellos. Pero son una solución mucho mejor.

5) Cortafuegos de nueva generación

Por último, los cortafuegos de nueva generación (NGFW), son uno de los inventos más recientes de esta generación de tecnología de seguridad. Estas herramientas de grado empresarial son como todas las anteriores combinadas en una sola. El filtrado profundo de paquetes, la prevención de intrusos y el monitoreo de aplicaciones son solo algunas de sus enormes características de red. Los cortafuegos de última generación en la nube  existen como un servicio en línea, pero los WAF son mucho más comunes y proporcionan una funcionalidad similar. Pero si quieres la tecnología de cortafuegos más avanzada disponible, con un paquete completo de protección de seguridad en un programa, busca un NGFW.

¿Cómo conseguir un cortafuegos?

Para protegerse a sí mismo y a tu sitio web, necesitas un cortafuegos de alta calidad que mantenga alejado a los intrusos. En lo que respecta a los cortafuegos personales, no suele ser necesario hacer un esfuerzo para conseguir uno. El cortafuegos incorporado de Windows funciona muy bien sin ninguna configuración. Y entre el cortafuegos de aplicaciones que suele venir con el software antivirus y el filtro de paquetes del router, el equipo suele estar más que protegido. Solo asegúrate de que tu cortafuegos esté activado, que tengas un buen antivirus instalado y que tu router esté configurado correctamente. Lo mismo puede decirse de los usuarios de MacOS.

¿Cómo configurar un firewall en Windows?

  • Accede a la configuración del Firewall: Para comenzar, ve al Panel de Control selecciona «Firewall de Windows Defender«, entra en configuración avanzada para realizar más ajustes

firewall4

  • Habilita el Firewall de Windows: Asegúrate de que el Firewall de Windows esté activado. Si no lo está, selecciona la opción «Activar o desactivar el Firewall de Windows».
  • Configura las reglas de entrada y salida: Decide qué aplicaciones y servicios deben tener acceso a tu red. Puedes configurar reglas específicas para permitir o bloquear el acceso de ciertas aplicaciones o puertos.
  • Personaliza la configuración avanzada: Haz clic en «Configuración avanzada» para acceder a opciones más detalladas. Aquí, puedes establecer reglas más específicas para el tráfico de red entrante y saliente.

firewall5

  • Restringe el acceso a la red pública: Si estás conectado a una red pública, considera establecer el perfil de red como «Pública«. Esto restringirá ciertas conexiones y ayudará a proteger tu dispositivo cuando estés en redes Wifi no seguras.
  • Actualiza regularmente: Mantén actualizado el Firewall de Windows y el sistema operativo para asegurarte de tener las últimas protecciones y parches de seguridad.

Si tienes algun antivirus instalado con firewall, este se antepondrá el Firewall de Windows.

¿Qué reglas puedo crear con el Firewall de Windows?

Con el Firewall de Windows, puedes crear diversas reglas para controlar el tráfico de red entrante y saliente. Algunas de las reglas que puedes configurar incluyen:

  • Reglas de entrada para aplicaciones: Puedes permitir o bloquear el acceso de aplicaciones específicas a tu red. Esto te permite controlar qué programas pueden recibir datos desde Internet.
  • Reglas de salida para aplicaciones: Similar a las reglas de entrada, puedes permitir o bloquear el acceso de aplicaciones a Internet. Esto controla qué programas pueden enviar datos hacia Internet.
  • Reglas de puerto: Puedes configurar reglas para permitir o bloquear el acceso a puertos específicos. Esto es útil para restringir ciertos servicios o conexiones a través de puertos específicos.
  • Reglas de dirección IP: Puedes permitir o bloquear el acceso de direcciones IP específicas. Esto te permite controlar qué direcciones IP pueden acceder a tu red.
  • Reglas de perfil de red: Puedes establecer reglas diferentes para perfiles de red específicos, como redes privadas o públicas. Esto te permite ajustar la seguridad según el tipo de red en la que te encuentres.
  • Reglas de seguridad personalizadas: El Firewall de Windows te permite crear reglas personalizadas basadas en diversos criterios, como protocolos, interfaces de red y usuarios.

firewall6

¿Cómo configurar un firewall en servidores Linux?

Para una correcta y segura instalación de un servidor de Internet necesitamos disponer y configurar un firewall. El firewall se encarga de regular el tráfico de entrada y de salida con nuestra máquina, de modo que podamos comprobar que está relacionado con alguno de los servicios que el servidor ofrece, permitiendo o denegando las conexiones de manera selectiva.

Con nuestro firewall podremos decidir por ejemplo que se acepten conexiones para la consulta de una web por HTTP o para las conexiones por SSH, pero que deniegue todos los otros intentos de conexión a servicios distintos, que no se desean ofrecer. Generalmente, el tráfico que nos interesará controlar es el entrante, ya que será desde donde nos lleguen posibles ataques al servidor. El tráfico desde el servidor hacia afuera generalmente no nos debe de preocupar, por lo que generalmente no se suele limitar.

Firewall UFW para Linux

El firewall UFW (Uncomplicated Firewall) es uno de los más populares de los sistemas Linux, debido a su sencillez de configuración. Está disponible de manera predeterminada en muchas de las distribuciones de Linux. Si no fuera el caso, podríamos instalarlo por medio de los repositorios del sistema, con el comando típico para cada distribución. Por ejemplo en sistemas basados en Debian se haría con el comando siguiente:

1$ sudo apt install ufw

Una vez instalado tenemos una suite de comandos para gestionar el propio firewall y las conexiones del servidor. UFW viene desactivado por defecto, para evitar posibles problemas de acceso al servidor antes de su configuración, por lo que el primer paso consistirá en definir qué tipos de conexión deseamos habilitar, para posteriormente activar el firewall. Podemos comprobar el estado del firewall con el comando «ufw status». En un principio deberíamos ver que está inactivo.

1$ sudo ufw status

firewall7

Es importante que, antes de activar el firewall, configuremos las conexiones permitidas, habilitando al menos el acceso por SSH, para que no perdamos el acceso al servidor. Para saber qué tipo de conexiones podemos activar o desactivar en el servidor, ejecutamos el comando.

1$ sudo ufw app list

La salida de ese comando nos indicará qué aplicaciones localiza el firewall susceptibles de configurar en nuestro sistema.

  • Habilitar SSH

Para permitir el acceso al servidor por SSH debemos habilitar las conexiones con la aplicación «OpenSSH«. Esto lo conseguimos con el comando siguiente:

1$ sudo ufw allow "OpenSSH"

De manera predeterminada se permiten conexiones tanto para IPV4 como para IPV6. Los puertos de conexión habilitados serán los predeterminados para estos tipos de conexión (en SSH el puerto 22).

  • Habilitar tráfico HTTP al servidor web

De manera similar, podemos habilitar el tráfico de HTTP para el acceso al servidor web instalado. En nuestro caso, que tenemos Apache en el servidor, realizaríamos la configuración habilitando la mencionada aplicación.

1sudo ufw allow "Apache Full"

La aplicación «Apache Full» nos permite el acceso por HTTP por los puertos comunes de HTTP (80) y HTTPS (443).

  • Activar el firewall

Una vez realizada la configuración, podemos activar ya el firewall, con el comando ufw enable.

1$ sudo ufw enable

Nos advertirá que las conexiones por SSH pueden ser interrumpidas, pero podemos estar tranquilos porque las acabamos de habilitar con los comandos anteriores. Por último, podemos comprobar la configuración de UFW con el comando «ufw status». Ahora deberíamos ver que el firewall se encuentra activo y además podremos obtener un listado de aplicaciones habilitadas.

1$ sudo ufw status

firewall8

🤓 Eso es todo. La configuración del firewall se ha realizado correctamente y ya se encuentra activo en nuestro servidor para incrementar la seguridad.

Configuración de pfSense en VMWare Workstation

pfSense es un firewall de código abierto y su distribución FreeBSD. Es más popular que otros firewalls y también podemos instalarlo como máquina virtual. pfSense también dispone de dispositivos físicos, y también podemos instalar pfSense en la nube (AWS y Azure).

Instalación de pfSense

Primero, necesitaba tener un software de virtualización como VMWare o Virtual Box, y ahora estoy usando VMWare para instalar pfSense. En segundo lugar, debe tener una máquina virtual Linux o Windows para la configuración del servidor Ngnix; Estoy usando Ubuntu por ahora.

Abre tu navegador favorito y busque "descarga de pfSense" o abre https://www.pfsense.org/download/

pfSense1

Serás redirigido a la página de descarga de pfSense.

pfSense2

  • Después de la descarga, descomprima este archivo. Ahora abra VMWare, luego haz clic en Crear una nueva máquina virtual.

pfSense3

Ahora haz clic en típico, luego haz clic en Siguiente.

pfSense4

Selecciona la ubicación del archivo haciendo clic en Examinar . Aquí, VMWare detectó automáticamente que era FreeBSD. Luego haz clic en Siguiente .

pfSense5

Puedes editar el nombre de la VM y elegir la ruta donde deseas almacenar la VM o mantener todo por defecto. Luego, haz clic en Siguiente.

pfSense6

Proporciona el espacio máximo en disco que desea asignar para pfSense y haz clic en Siguiente.

pfSense7

Estás en el paso final, que es el paso clave que muchas personas enfrentan con este problema.

pfSense8

Haz clic en Adaptador de red y configure este adaptador para WAN para comunicarse con Internet. Luego haz clic en Agregar. Luego verás una pantalla como la de la imagen de abajo.

pfSense9

Elije Adaptador de red, haz clic en Finalizar.

pfSense10

Ahora utiliza este adaptador para la comunicación LAN. Ahora Crate es una red de área local haciendo clic en el segmento LAN.

pfSense11

Haz clic en Agregar. y luego nombrarlo como desees.

pfSense12

pfSense13

Haz clic en Encender la máquina. pfSense tardará un poco en iniciarse y luego aceptarás sus términos y condiciones haciendo clic en Entrar. Verás tres opciones. Elija la primera opción, Instalar, luego presione Enter.

pfSense14

Ve por defecto en este paso.

pfSense15

Haz clic en todo lo predeterminado, presione Enter.

pfSense16

pfSense17

pfSense18

Pulsa el espacio aquí.

pfSense19

Entonces elige

pfSense20

Tomará un tiempo.

pfSense21

pfSense22

pfSense23

😁 Hemos instalado pfSense con éxito.

Configuración de pfSense en Ubuntu

Encienda la máquina virtual Ubuntu.

Ubuntu1

Luego el adaptador LAN que elijas en pfSense.

Ubuntu2

En pfSense también se utilizó el mismo adaptador de red.

Ubuntu3

Ahora enciende la máquina Ubuntu. Abre la terminal y actualice los repositorios escribiendo el comando sudo apt update. Instala el servidor Nginx mediante sudo apt install nginx .

Ubuntu4

Ubuntu5

Abre Firefox o su navegador favorito en Ubuntu y verifica el host local si el servidor se está ejecutando o no.

Ubuntu6

Configura el firewall de ubuntu. De forma predeterminada, el firewall ufw está instalado en ubuntu. Primero, verifica las aplicaciones escribiendo el comando sudo ufw app list y el comando restante para permitir y denegar las reglas que se muestran en la siguiente imagen.

Ubuntu7

Hemos agregado con éxito la regla de denegación en el firewall ufw de Ubuntu.

Configuración de pfSense

Después de iniciar pfSense, verá la pantalla de bienvenida.

Ubuntu8

De forma predeterminada, DHCP está habilitado y IPV6 también está habilitado para algunas personas, no te preocupes, lo solucionaremos. DHCP asignará automáticamente la dirección IP; Podemos configurarlo usando IP estática. Necesita tener una IP estática para pfSense. En pfSense, seleccione la opción 2 , luego elija la opción 1 (WAN). Si desea continuar con DHCP, presione Y , pero enfrentará muchos problemas en el futuro. Dependiendo del rango de sus subredes, seleccione subred. Para fines domésticos, utilice una máscara de 24 subredes.

pfSense24

pfSense25

pfSense26

Ahora abra ubuntu, luego abra el navegador y escriba la dirección IP de LAN. En mi caso es 192.168.1.1. De forma predeterminada, el usuario y la contraseña son admin y pfsense, respectivamente.

pfSense27

pfSense28

pfSense29

Si tiene un nombre de host y un servidor DNS, complete esos detalles. Aquí, voy todo por defecto.

pfSense30

pfSense31

pfSense32

Baje y desmarque, bloquee la red privada y la red sin ruta de Internet.

pfSense33

pfSense34

pfSense35

En este paso, cambie la contraseña de administrador. Si se está configurando el firewall en la oficina o en casa, no se recomienda utilizar una cuenta de administrador ni contraseñas seguras tanto para los usuarios como para el administrador. Aquí lo estoy usando solo para fines de laboratorio, por lo que mantengo todo por defecto.

pfSense36

pfSense37

pfSense38

También se realiza la configuración de pfSense. Necesitamos agregar una regla NAT al firewall. Abra la página de inicio de pfSense y haga clic en Firewall y luego haga clic en NAT.

pfSense39

Haz clic en Agregar. Esta es la primera regla, por lo que no debemos preocuparnos por esas flechas al agregar. Si tiene muchas reglas antes o en el futuro, desea agregar esa regla en la parte superior, luego haga clic en la flecha hacia arriba Agregar o agregue eso en la parte inferior y luego haga clic en la flecha inferior agregar.

pfSense40

Aquí, mantenga todos los valores predeterminados excepto la dirección IP de destino, la IP de origen y los puertos. En el destino, ingrese la dirección IP de pfSense seleccionando Host único o alias. En mi caso, es 192.168.0.100.

pfSense41

pfSense42

En el rango de puerto de destino, ingrese el puerto al que desea redirigir el tráfico. En mi caso son 9000.

pfSense43

En la fuente, dirección IP, de donde proviene el tráfico, en nuestro caso, proviene de Ubuntu, así que ingrese la IP de Ubuntu (192.168.1.100).

pfSense44

pfSense45

Haz clic en guardar. Ahora haga clic en aplicar cambios.

pfSense46

Ahora en su máquina host, abra el navegador y busque pfSense IP y el puerto que ha configurado.

pfSense47

Eso es todo. Ha realizado correctamente el reenvío de puertos con pfSense.