Untitled
48 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

¿Qué ocurre si un paquete no cumple con la condición de una regla en una cadena de un cortafuegos?

  • Se aplica la política de la cadena al paquete.
  • Se descarta inmediatamente el paquete.
  • El paquete se reenvía a otra cadena predefinida.
  • Se evalúa el paquete con la siguiente regla en la cadena. (correct)

¿Cuál de las siguientes NO es una cadena base predefinida en un cortafuegos?

  • FORWARD
  • INPUT
  • OUTPUT
  • REJECT (correct)

Si una regla dentro de una cadena SÍ se aplica a un paquete, ¿qué sucede a continuación?

  • Se registra la información del paquete y se continúa con la siguiente regla.
  • Se ejecuta la acción definida en la regla, y el paquete abandona la comprobación del resto de las reglas. (correct)
  • Se ejecuta la acción definida en la regla, y el proceso continúa con la siguiente regla.
  • Se ejecuta la acción definida en la regla, y el paquete pasa a la siguiente cadena.

¿Qué función cumplen las cadenas PREROUTING y POSTROUTING en un cortafuegos?

<p>Aplican reglas antes y después de las decisiones de enrutamiento, tanto para paquetes locales como reenviados. (B)</p> Signup and view all the answers

¿Qué ocurre con un paquete si NO se aplica ninguna de las reglas de una cadena?

<p>Se aplica la política de la cadena al paquete, si está definida. (B)</p> Signup and view all the answers

¿Cuál es la política predefinida para todas las cadenas base predefinidas en un cortafuegos?

<p>ACCEPT (B)</p> Signup and view all the answers

¿Cuál de las siguientes describe mejor la función de la cadena FORWARD en un cortafuegos?

<p>Gestiona los paquetes que deben ser enrutados a través del router hacia otros destinos. (D)</p> Signup and view all the answers

En el contexto de las reglas de un cortafuegos, ¿qué significa que una regla contiene múltiples condiciones?

<p>La regla se aplica si todas las condiciones se cumplen simultáneamente. (A)</p> Signup and view all the answers

¿Cuál de las siguientes afirmaciones describe mejor la relación entre netfilter/iptables y otros cortafuegos como PF?

<p>Otros cortafuegos son funcionalmente similares a netfilter, pero utilizan un lenguaje diferente para definir las reglas. (D)</p> Signup and view all the answers

Si un administrador omite el parámetro -t al usar el comando iptables, ¿en qué tabla se aplicarán las reglas por defecto?

<p>Tabla <code>filter</code> (D)</p> Signup and view all the answers

¿Qué parámetro de iptables se utiliza para especificar que la acción a tomar debe ser saltar a una cadena definida por el usuario?

<p>-j (A)</p> Signup and view all the answers

¿Cuál es la diferencia clave entre los parámetros -A e -I en el comando iptables?

<p><code>-A</code> añade la regla al final de la cadena, mientras que <code>-I</code> la inserta en una posición específica. (C)</p> Signup and view all the answers

¿Qué comando se utiliza para listar las reglas existentes en una tabla específica?

<p><code>iptables -t &lt;tabla&gt; -L</code> (C)</p> Signup and view all the answers

Un administrador desea descartar los paquetes TCP entrantes al puerto 22 desde la dirección IP 192.168.1.100. ¿Cuál sería el comando iptables correcto?

<p><code>iptables -A INPUT -p tcp --dport 22 -s 192.168.1.100 -j DROP</code> (B)</p> Signup and view all the answers

Si un administrador ejecuta el comando iptables -L sin especificar una tabla, ¿qué información se muestra?

<p>Las reglas de la tabla <code>filter</code>. (D)</p> Signup and view all the answers

¿Cuál de las siguientes opciones describe correctamente el uso del parámetro --dport en un comando iptables?

<p>Especifica el puerto de destino. (D)</p> Signup and view all the answers

¿En qué tabla de iptables se define la acción NOTRACK para evitar el seguimiento de conexiones?

<p>raw (B)</p> Signup and view all the answers

Un paquete que ingresa al kernel y coincide con una regla con la acción ACCEPT en una cadena de iptables, ¿qué ocurre a continuación?

<p>El paquete continúa su camino por el kernel, pasando a la siguiente cadena disponible. (C)</p> Signup and view all the answers

¿Qué tablas en iptables contienen la cadena PREROUTING?

<p>nat, mangle y raw (B)</p> Signup and view all the answers

Si un cortafuegos es capaz de realizar un seguimiento de las conexiones, ¿cómo se le denomina?

<p>Cortafuegos con estado (stateful). (C)</p> Signup and view all the answers

¿Cuál de los siguientes NO es un componente que define una conexión rastreada por un firewall con seguimiento de conexiones?

<p>Nombre de dominio del origen. (A)</p> Signup and view all the answers

En el contexto de iptables, si la política por defecto de una cadena no ha sido alterada, ¿cuál es la acción predeterminada que se aplica a los paquetes?

<p>ACCEPT (A)</p> Signup and view all the answers

¿Cuál de las siguientes describe mejor la función de la tabla raw en iptables?

<p>Gestionar el seguimiento de conexiones antes que cualquier otra tabla. (C)</p> Signup and view all the answers

Si un paquete coincide con una regla en iptables con la acción DROP, ¿qué ocurre con el paquete?

<p>Se elimina sin enviar ninguna notificación al remitente. (C)</p> Signup and view all the answers

¿Cuál de los siguientes estados de paquete indica que el paquete pertenece a una conexión ya existente?

<p>ESTABLISHED (C)</p> Signup and view all the answers

En un escenario donde un servidor web envía un mensaje ICMP de error, ¿qué estado se le asignaría típicamente a este paquete?

<p>RELATED (D)</p> Signup and view all the answers

¿Por qué es recomendable configurar las cadenas INPUT y FORWARD con la política por defecto DROP, seguida de reglas para INVALID y ESTABLISHED/RELATED?

<p>Para bloquear paquetes no válidos y permitir el tráfico ya autorizado de forma eficiente. (A)</p> Signup and view all the answers

¿Qué implicación tiene que un paquete sea clasificado con el estado 'INVALID' en un cortafuegos?

<p>El paquete se descarta (DROP) debido a que no pertenece a ninguna conexión válida y podría ser malicioso. (B)</p> Signup and view all the answers

¿Cuál es el propósito principal del seguimiento de conexiones (connection tracking) en un cortafuegos?

<p>Memorizar los atributos de los paquetes para identificar a qué conexión pertenecen. (D)</p> Signup and view all the answers

¿Cuál de las siguientes opciones describe mejor la función de netfilter en Linux?

<p>La parte del kernel que gestiona y manipula los paquetes de red. (A)</p> Signup and view all the answers

¿Cuál de las siguientes NO es una alternativa a netfilter utilizada en sistemas operativos basados en UNIX-BSD para la administración de cortafuegos?

<p>iptables (D)</p> Signup and view all the answers

¿En qué se diferencia un paquete con estado 'NEW' de uno con estado 'ESTABLISHED' en un cortafuegos con seguimiento de conexiones?

<p>El paquete 'NEW' inicia una nueva conexión, mientras que el 'ESTABLISHED' pertenece a una conexión ya existente. (C)</p> Signup and view all the answers

¿Cuál de las siguientes afirmaciones describe mejor el comportamiento predeterminado de las reglas de iptables al reiniciar el sistema?

<p>Las reglas se eliminan al apagar el sistema y deben volver a definirse en el siguiente inicio. (B)</p> Signup and view all the answers

Si accidentalmente estableces la política INPUT predeterminada en DROP mediante iptables, ¿cuál es el resultado más probable si estás conectado remotamente al sistema a través de SSH?

<p>La conexión SSH se interrumpirá inmediatamente y perderás el acceso al sistema. (D)</p> Signup and view all the answers

¿Cuál es la diferencia clave entre los comandos iptables-save e iptables-restore?

<p><code>iptables-save</code> guarda las reglas activas de <code>iptables</code> en un archivo, mientras que <code>iptables-restore</code> restaura las reglas desde un archivo. (B)</p> Signup and view all the answers

¿Cuál es el propósito principal del comando iptables-apply?

<p>Aplicar de manera segura nuevas reglas de <code>iptables</code> desde un archivo, solicitando confirmación antes de la activación. (D)</p> Signup and view all the answers

¿Cómo se puede expresar el parámetro -p tcp en su forma larga equivalente en un comando iptables?

<p>--protocol=tcp (D)</p> Signup and view all the answers

En un comando iptables, ¿bajo qué condición específica se permite el uso del parámetro --dport (puerto de destino)?

<p>Solo se permite <code>--dport</code> si previamente se ha especificado el protocolo TCP mediante el parámetro <code>-p</code>. (C)</p> Signup and view all the answers

Después de guardar las reglas de iptables en un archivo usando iptables-save, ¿qué se debe hacer para aplicar los cambios realizados al editar directamente este archivo?

<p>Ejecutar el comando <code>iptables-restore &lt; /etc/firewall.rules</code>. (A)</p> Signup and view all the answers

¿Qué ocurre inmediatamente después de ejecutar comandos iptables -A o iptables -I?

<p>Las reglas entran en funcionamiento al instante. (D)</p> Signup and view all the answers

¿Cuál de las siguientes afirmaciones describe mejor la utilidad de la opción --log-prefix al usar iptables?

<p>Permite añadir un prefijo a las anotaciones en el registro, facilitando el filtrado de estas anotaciones. (D)</p> Signup and view all the answers

¿En qué tabla de iptables y cadena(s) se puede utilizar la acción SNAT para cambiar la IP de origen de un paquete?

<p>Tabla <code>nat</code>, cadena <code>POSTROUTING</code> e <code>INPUT</code>. (B)</p> Signup and view all the answers

¿Cuál es la principal diferencia entre las acciones SNAT y MASQUERADE en iptables?

<p><code>SNAT</code> requiere especificar la IP de origen con <code>--to-source</code>, mientras que <code>MASQUERADE</code> usa la IP de salida del cortafuegos dinámicamente. (A)</p> Signup and view all the answers

¿En qué tabla y cadena(s) se debe utilizar la acción DNAT para cambiar la IP de destino de un paquete, y qué opción es necesaria?

<p>Tabla <code>nat</code>, cadena <code>PREROUTING</code> u <code>OUTPUT</code>, opción <code>--to-destination</code>. (D)</p> Signup and view all the answers

¿Cuál es el propósito principal de la acción REDIRECT en iptables y en qué cadenas puede utilizarse?

<p>Redirige el tráfico al propio cortafuegos, y se usa en PREROUTING u OUTPUT. (C)</p> Signup and view all the answers

¿Qué función cumple la acción MARK en la tabla mangle de iptables y qué opción se utiliza para establecer el valor de la marca?

<p>Marca la representación del paquete en el núcleo de Linux, usando la opción <code>--set-mark</code>. (B)</p> Signup and view all the answers

¿Qué permite modificar las acciones TOS y TTL en iptables?

<p><code>TOS</code> modifica el tipo de servicio del paquete y <code>TTL</code> modifica el tiempo de vida del paquete. (A)</p> Signup and view all the answers

¿Cuál es el propósito de evitar el seguimiento de la conexión en iptables, y en qué cadenas se puede aplicar?

<p>Optimiza el rendimiento al reducir la carga del rastreo de conexiones, aplicable en las cadenas PREROUTING y OUTPUT. (D)</p> Signup and view all the answers

Flashcards

¿Qué es la tabla 'raw'?

Tabla para seguimiento de conexiones. Se aplica antes que otras tablas, cuando los paquetes están sin alterar.

¿Qué cadenas incluye la tabla 'filter'?

Las cadenas son FORWARD, INPUT y OUTPUT.

¿Qué cadenas incluye la tabla 'nat'?

Las cadenas son PREROUTING, OUTPUT y POSTROUTING.

¿Qué cadenas incluye la tabla 'mangle'?

Las cadenas son PREROUTING, FORWARD, INPUT, OUTPUT y POSTROUTING.

Signup and view all the flashcards

¿Qué cadenas incluye la tabla 'raw'?

Las cadenas son PREROUTING y OUTPUT.

Signup and view all the flashcards

¿Qué significa la acción ACCEPT?

El paquete continúa su camino a la siguiente cadena disponible.

Signup and view all the flashcards

¿Qué significan las acciones DROP o REJECT?

El paquete se elimina y no continúa su camino.

Signup and view all the flashcards

¿Qué es el 'Connection Tracking'?

Es la capacidad de un firewall de identificar y recordar conexiones entre dos equipos.

Signup and view all the flashcards

Estado NEW (iptables)

El paquete está iniciando una nueva conexión.

Signup and view all the flashcards

Estado ESTABLISHED (iptables)

El paquete pertenece a una conexión ya abierta.

Signup and view all the flashcards

Estado RELATED (iptables)

Nueva conexión creada a partir de una conexión ya establecida (ej: ICMP).

Signup and view all the flashcards

Estado INVALID (iptables)

El paquete no es válido y normalmente debe ser rechazado.

Signup and view all the flashcards

Política para INVALID

Descartar paquetes con estado INVALID.

Signup and view all the flashcards

Política para ESTABLISHED/RELATED

Aceptar paquetes con estado ESTABLISHED o RELATED.

Signup and view all the flashcards

iptables

Herramienta de línea de comandos para configurar netfilter.

Signup and view all the flashcards

netfilter

La parte del kernel de Linux que manipula los paquetes de red.

Signup and view all the flashcards

¿Qué son las cadenas en un cortafuegos?

Las reglas en un cortafuegos se agrupan en cadenas, donde cada cadena representa un conjunto de reglas aplicadas en secuencia.

Signup and view all the flashcards

¿Cuáles son las tres cadenas base predefinidas?

INPUT: Paquetes entrantes destinados al propio router. OUTPUT: Paquetes salientes originados en el router. FORWARD: Paquetes entrantes destinados a otro destino, que deben ser enrutados.

Signup and view all the flashcards

¿Qué son las cadenas PREROUTING y POSTROUTING?

PREROUTING: Se aplica a los paquetes al llegar, antes de decisiones de enrutamiento. POSTROUTING: Se aplica a los paquetes al salir, después de consultar la tabla de enrutamiento.

Signup and view all the flashcards

¿Cómo se evalúan las reglas en una cadena?

Se comprueba cada regla de la cadena en orden. Si una regla no se aplica, se pasa a la siguiente. Si se aplica, se ejecuta la acción definida.

Signup and view all the flashcards

¿Qué acciones puede tomar una regla?

ACCEPT: El paquete es aceptado y pasa a la siguiente cadena. DROP: El paquete se descarta. LOG: El paquete se registra, y continua con la siguiente regla

Signup and view all the flashcards

¿Qué es la política de cadena?

Es la acción por defecto que se aplica a un paquete si ninguna regla de la cadena coincide.

Signup and view all the flashcards

¿Cuál es la política predefinida para las cadenas base?

La política predefinida para todas las cadenas predefinidas es ACCEPT.

Signup and view all the flashcards

¿Cómo funcionan las condiciones múltiples en una regla?

Todas las condiciones de una regla deben ser verdaderas para que la regla se aplique (AND lógico).

Signup and view all the flashcards

Cortafuegos Alternativos (PF)

Diferentes métodos de configuración de firewalls que coexisten, ofreciendo flexibilidad al administrador.

Signup and view all the flashcards

Visualizar reglas (iptables -L)

Comando para listar las reglas existentes y las políticas por defecto.

Signup and view all the flashcards

Visualizar reglas por tabla (iptables -t)

Muestra las reglas y cadenas para una tabla específica (raw, nat, mangle, filter).

Signup and view all the flashcards

Añadir regla al final (-A)

Añade una regla al final de la cadena.

Signup and view all the flashcards

Insertar regla en posición específica (-I)

Inserta una regla en una posición específica dentro de la cadena.

Signup and view all the flashcards

Acción de la regla (-j)

Define la acción a realizar cuando un paquete cumple las condiciones de la regla (ACCEPT, DROP, etc.).

Signup and view all the flashcards

Ejemplo de regla (DROP)

Detecta paquetes entrantes TCP al puerto 80 de la red 90.100.21.0/24 y los descarta.

Signup and view all the flashcards

Tabla por defecto

Si se omite, iptables actúa sobre la tabla filter.

Signup and view all the flashcards

Parámetros de comandos en Linux

En Linux, los parámetros de comandos pueden escribirse de forma corta (un guión) o larga (doble guión).

Signup and view all the flashcards

Dependencia de parámetros

Algunos parámetros solo funcionan si están precedidos por otro parámetro específico.

Signup and view all the flashcards

Aplicación inmediata de reglas iptables

Las reglas de iptables entran en vigor al instante.

Signup and view all the flashcards

Política INPUT DROP

Establecer la política INPUT por defecto a DROP bloquea todas las conexiones entrantes no permitidas explícitamente.

Signup and view all the flashcards

No persistencia de reglas iptables

Las reglas de iptables se pierden al apagar el sistema.

Signup and view all the flashcards

iptables-save

Guarda las reglas actuales de iptables en un archivo de texto.

Signup and view all the flashcards

iptables-restore

Restaura las reglas de iptables desde un archivo de texto.

Signup and view all the flashcards

iptables-apply

Aplica nuevas reglas de iptables desde un fichero y pide confirmación.

Signup and view all the flashcards

--log-prefix

Añade un prefijo a las anotaciones en el registro para facilitar el filtrado.

Signup and view all the flashcards

SNAT

Cambia la IP de origen de un paquete en las cadenas POSTROUTING e INPUT de la tabla nat.

Signup and view all the flashcards

MASQUERADE

Cambia la IP de origen por la IP de salida del cortafuegos, ideal para IPs dinámicas.

Signup and view all the flashcards

DNAT

Cambia la IP de destino de un paquete en las cadenas PREROUTING u OUTPUT de la tabla nat.

Signup and view all the flashcards

REDIRECT

Cambia la IP de destino a 127.0.0.1, pudiendo modificar el puerto de destino.

Signup and view all the flashcards

MARK

Marca un paquete en el núcleo de Linux para que iptables u otros procesos la reconozcan.

Signup and view all the flashcards

TOS

Cambia el TOS (Type of Service) del paquete.

Signup and view all the flashcards

TTL

Cambia el TTL (Time To Live) del paquete.

Signup and view all the flashcards

Study Notes

El Firewall

  • Un firewall analiza los paquetes que entran a través de sus interfaces de red.
  • Un firewall toma decisiones basadas en un conjunto de reglas definidas por el administrador sobre qué hacer con cada paquete: aceptar (dejar pasar) o rechazar (descartar).

Routers y Firewalls

  • Todos los routers son, en esencia, firewalls.
  • La diferencia radica en si el firmware del router permite al administrador establecer reglas.
  • Los routers domésticos suelen incorporar firewalls predefinidos con opciones de configuración limitadas.

Reglas Básicas de Firewalls

  • Permitir la salida de cualquier paquete de la red interna (LAN) a la interfaz de red de internet (WAN).
  • Rechazar cualquier paquete proveniente de internet (WAN), excepto aquellos que responden a una solicitud previa (conexión saliente establecida).
  • Los firewalls básicos proporcionan buena protección para usuarios domésticos, pero no son suficientes para entornos profesionales.
  • Los firewalls profesionales a menudo son routers con 4 a 24 interfaces de red.
  • Estos firewalls tienen un firmware que permite especificar reglas detalladas para el cortafuegos.
  • Ejemplos de firewalls hardware: pfSense, Mikrotik, WatchGuard y Cisco.

Firewalls Software y Hardware

  • Cualquier equipo con dos o más interfaces de red que enrute tráfico puede funcionar como firewall con el software adecuado (firewall software). Firewalls software notables:
  • Mikrotik (con su RouterOS).
  • OPNSense.
  • pfSense (disponible tanto en versión hardware como comercial).
  • Los firewalls hardware se basan en distribuciones UNIX/Linux, cuyo kernel está diseñado para el enrutamiento y filtrado de paquetes.
  • La principal diferencia entre firewalls radica en la facilidad que ofrecen para definir reglas.

Limitaciones de los Firewalls

  • Un firewall solo sirve para impedir conexiones de red no deseadas.
  • No protege contra todas las amenazas.
  • Si un servidor web necesita ser accesible desde el exterior, el firewall debe permitir las conexiones entrantes al puerto 80, lo que puede exponerlo a ataques aprovechando vulnerabilidades del software.
  • Para protegerse contra estos ataques, se necesitan técnicas como el hardening.

Paquetes en Redes TCP/IP

  • La transmisión de datos se realiza en pequeños paquetes IP (aprox. 1,5 KB).
  • Cada paquete IP incluye una cabecera con información para enrutarlo y un payload (carga) con los datos transmitidos.
  • Los paquetes IP contienen información codificada mediante otros protocolos (HTTP, FTP, etc.).
  • Paquetes HTTP están encima de TCP en la pila.
  • Paquetes TCP contiene un paquete IP con una cabecera.
  • Este proceso se llama encapsulamiento.
  • El emisor genera el paquete HTTP, el sistema operativo lo encapsula en un paquete TCP y este en un paquete IP.
  • El equipo de destino "desempaqueta" los paquetes hasta llegar al paquete HTTP original.

Campos Importantes en la Cabecera IP

  • Protocolo: Especifica el protocolo utilizado en el payload (TCP, UDP, ICMP).
  • Dirección IP de origen y destino: Indican las direcciones IP de los equipos remitente y destinatario.
  • Los routers pueden alterar estos campos (ej: protocolo NAT).

Reglas y Acciones de un Firewall

  • Se configuran estableciendo reglas que determinan qué acción (objetivo, target) debe tomarse para cada paquete, basándose en diversos factores.
  • Acciones posibles:
    • ACCEPT: Aceptar el paquete.
    • REJECT: Rechazar el paquete, enviando un mensaje ICMP al emisor.
    • DROP: Descartar el paquete sin enviar ningún aviso al emisor.
  • La diferencia entre REJECT y DROP radica en el aviso al emisor: REJECT muestra un mensaje de error, DROP deja al emisor esperando una respuesta que nunca llegará.

Condiciones para la Decisión de una Regla

  • Campos de la cabecera del paquete (dirección, puerto, protocolo, etc.).
  • Interfaz de red por donde entra o sale el paquete.
  • Dirección MAC de origen.
  • Estado de la conexión.
  • Pertenencia de la dirección de origen o destino a una lista específica (lista negra).
  • Si se cumplen todas las condiciones de una regla, su acción se aplica y no se continúa con las siguientes reglas.

Cadenas (Chains)

  • Las reglas de un firewall se agrupan en cadenas.
  • Las cadenas son listas de reglas encadenadas.
  • Tres cadenas base predefinidas:
    • INPUT: Para paquetes entrantes cuyo destino es el router.
    • OUTPUT: Para paquetes salientes originados en el router.
  • FORWARD: Para paquetes entrantes que deben ser enrutados a otro destino.
  • Dos cadenas adicionales
    • PREROUTING: Para paquetes que llegan a la máquina, antes de decidir si son para ella o deben ser reenviados.
    • POSTROUTING: Para paquetes que salen de la máquina, después de consultar la tabla de enrutamiento.

Funcionamiento de las Cadenas

  • Para cada paquete, se comprueba si se aplica cada regla de la cadena (si cumple la condición).
  • Si una regla no se aplica, se pasa a la siguiente regla.
  • Si una regla se aplica, se ejecuta la acción definida:
    • El paquete puede abandonar la comprobación y pasar a la siguiente cadena (ACCEPT, DROP).
    • El paquete puede continuar con la siguiente regla de la cadena (LOG).
  • Una cadena puede tener una política (acción por defecto) que se aplica si ninguna regla coincide con el paquete.
  • La política predefinida suele ser ACCEPT.

Tablas (Tables)

  • Las cadenas se agrupan en tablas según el uso que el kernel hace de ellas.
  • Las tres cadenas mencionadas (INPUT, OUTPUT y FORWARD) forman parte de la tabla filter para filtrar paquetes (aceptar o rechazar).
  • Tablas existentes:
    • filter: Filtrado de paquetes.
    • nat: Traducción de direcciones de red (NAT).
    • mangle: Modificación de las cabeceras de los paquetes.
    • raw: Seguimiento de conexiones.
  • La tabla filter incluye las cadenas: FORWARD - INPUT - OUTPUT
  • La tabla nat incluye las cadenas: PREROUTING - OUTPUT - POSTROUTING
  • La tabla mangle incluye las cadenas: PREROUTING - FORWARD - INPUT - OUTPUT - POSTROUTING
  • La tabla raw incluye las cadenas: PREROUTING - OUTPUT
  • Un paquete, al entrar al kernel, sigue un itinerario por las diferentes tablas y cadenas hasta que una regla decide qué hacer con él.
  • Si la acción es ACCEPT, el paquete continúa su camino; si es DROP o REJECT, se elimina.

Seguimiento de Conexiones (Connection Tracking)

  • Capacidad de los firewalls para identificar y memorizar las conexiones entre dos equipos.
  • Clasifica los paquetes según la conexión a la que pertenecen.
  • Los firewalls que realizan seguimiento de conexiones se llaman stateful firewalls; los que no, stateless firewalls.
  • Una conexión se define por el protocolo utilizado y las direcciones IP y puertos de origen y destino.
  • Todos los paquetes con los mismos valores en estos campos pertenecen a la misma conexión.
  • El kernel asigna un estado (state) a cada paquete:
    • NEW: El paquete está iniciando una nueva conexión.
    • ESTABLISHED: El paquete pertenece a una conexión ya abierta.
    • RELATED: Se ha creado una nueva conexión a partir de una ya establecida.
    • INVALID: El paquete no es válido y debe ser rechazado (DROP).

Reglas Comunes

  • Las cadenas INPUT y FORWARD deben tener DROP como política por defecto.
  • Reglas iniciales:
    • Si el estado del paquete es INVALID, DROP.
    • Si el estado del paquete es ESTABLISHED o RELATED, ACCEPT.
  • Después, se agregan las reglas necesarias para permitir los accesos deseados.
  • Cuando un usuario se conecta a un servidor web, el primer paquete se etiqueta como NEW.
  • La respuesta del servidor y las peticiones posteriores se clasifican como ESTABLISHED.
  • Si el servidor envía un paquete ICMP para notificar un error, este se clasifica como RELATED.
  • Si el servidor recibe un paquete ICMP sin referencia a una conexión conocida, se marca como INVALID.

iptables

  • Parte del kernel de Linux encargada de la manipulación de paquetes de red.
  • Se configura mediante el comando iptables, que necesita permisos de root.
  • En sistemas UNIX-BSD se utilizan PF, ipfirewall (ipfw) e ipfilter (ipf).
  • La comprensión de netfilter/iptables facilita el manejo de otros firewalls.

Visualizar y Añadir Reglas con iptables

  • comando $ iptables -L te permite visualizar las reglas existentes en el sistema.
  • Las reglas se agrupan en cadenas.
  • Si no se especifica una tabla, se muestran las reglas de la tabla filter.
  • $ iptables -t -L te permite visualizar las reglas de una tabla específica (raw, nat, mangle o filter).
  • La sintaxis para añadir una regla es: $ iptables -t -A <parámetros que definen el filtro> -j <acción>
  • Si se omite -t, iptables actúa sobre la tabla filter.

Opciones para Añadir Reglas

  • -A: Añade la regla al final de la cadena especificada.
  • -I : Inserta la regla en una posición concreta (en lugar de -A).
  • El resto de los parámetros definen las condiciones que debe cumplir el paquete para que se le aplique la acción.
  • La acción puede ser: ACCEPT, DROP o el nombre de una cadena definida por el usuario.

Ejemplo de Regla iptables

  • Añadir una regla para descartar paquetes entrantes (al router) de protocolo TCP, dirigidos al puerto 80 y provenientes de la red 90.100.21.0/24:
$ iptables -A INPUT -p tcp --dport 80 -s 90.100.21.0/24 -j DROP

Notas Finales

  • Es común usar doble guión para los parámetros (--jump).
  • Ciertos parámetros solo se permiten si se preceden de otro específico (--dport solo si se especifica -p tcp).
  • Las reglas se aplican al instante, por lo que es necesario tener cuidado al escribirlas.
  • Las reglas de iptables no son persistentes y se pierden al apagar el sistema.

Persistencia de las Reglas

  • Para guardar las reglas de iptables en un fichero de texto, se utilizan los comandos iptables-save e iptables-restore.
  • iptables-save vuelca la totalidad de las reglas en un formato legible por iptables-restore.
  • Ejemplo:
$ iptables-save > /etc/firewall.rules

Aplicación Segura de Reglas

  • El comando iptables-apply aplica las reglas y pide confirmación.
  • Si no se confirma en 30 segundos, las reglas se revierten.

Persistencia Automática

  • Para que las reglas se restauren automáticamente al inicio del sistema:
    1. Crear el fichero /etc/firewall.rules con las reglas actuales: iptables-save > /etc/firewall.rules
    2. Crear un script de inicio /etc/network/if-pre-up.d/firewall:
#!/bin/sh
/sbin/iptables-restore < /etc/firewall.rules

2- Crear el scrpit de cierre /etc/network/if.down.d/firewall:

#!/bin/sh
/sbin/iptables-save > /etc/firewall.rules
3. Hacer ejecutables ambos scripts: chmod +x <fichero>
4. Después de modificar /etc/firewall.rules: nano /etc/firewall.rules
```bash
$ iptables-apply /etc/firewall.rules
- Los scripts se ejecutan al habilitar o deshabilitar el servicio de red del kernel.

### Aspecto de un Fichero de Reglas (iptables-save)
- Encabezado que indica que se describen las cadenas de la tabla filter.
- Políticas por defecto de cada cadena.
- Comando iptables-restore para aplicar las nuevas reglas.
- Ejemplo:
```bash
- filter
:INPUT ACCEPT
:FORWARD ACCEPT
:OUTPUT ACCEPT
COMMIT

Sintaxis de las Reglas en el Fichero

  • Equivalente al comando iptables, pero sin anteponer iptables ni los parámetros -t (tabla) y -A (cadena).
  • Ejemplo (detección de paquetes entrantes de protocolo TCP al puerto 80 desde la red 90.100.21.0/24):
- filter
:INPUT ACCEPT
- A INPUT -p tcp --dport 80 -s 90.100.21.0/24 -j DROP
:FORWARD ACCEPT
:OUTPUT ACCEPT
COMMIT

Listado Verbose de Reglas

  • Se obtiene con los parámetros -L (list) y -v (verbose):
$ iptables -L -v

Otras Opciones

  • La opción -v añade información interesante a las reglas. Tambien la opcion --line-numbers.

Parámetros de iptables más Utilizados

  • [!]-p Protocolo (--protocol) de nivel de transporte del paquete. Puede ser TCP, UDP, UDPLITE, ICMP, ESP, AH O SCTP.
  • [!]-s Dirección IP de origen (--source). Puede expresarse como una dirección de equipo o como dirección de red en formato CIDR.
  • [!]-d Dirección IP de destino (--destination). Igual que la anterior.
  • -j Especifica la acción de la regla (el target). Puede escribirse como --jump. Si se omite,
  • [!]-i Interfaz de red de entrada (--in-interface). Solo se puede utilizar en las cadenas INPUT, FORWARD y PREROUTING.
  • [!]-0 Interfaz de red de salida (--out-interface), es decir, por donde se supone que el paquete va a salir del router.
  • [!]-state Estado de la conexión a la que pertenece el paquete, pudiendo ser, como ya sabemos, NEW, ESTABLISHED, RELATED 0 INVALID.

Cortafuegos Mínimo (Práctica Guiada)

Conjunto mínimo de reglas para un equipo de escritorio Linux:

  • Antes de comenzar es mejor loguearse con el usuario root.

Pasos a seguir:

  1. Verificación de reglas actuales te permite enumerar todas lass regras de iptables activas pro especificaciones con el comando iptables-S
  2. Eliminación de reglas:
$ iptables -F (para eliminar reglas en cadena) y
$ iptables -F  (para eliminar reglas de todas las cadenas)
$ iptables -S permite ver un listado de politicas predeterminadas: -P INPUT ACCEPT -P OUTPUT ACCEPT-P FORWARD ACCEPT
 $ iptables -P INPUT DROP (permite descartar por defecto
( para el caso de que el listado anterior no muestre nada, establecemos las politicas por defecto para cada una de las cadenas integradas en DROP).
$ iptables -P FORWARD DROP
$ iptables -P OUTPUT DROP
  1. El firewall no permitirar trafico en la red.
  2. Adicion de Reglas minimas. Adicion basica de reglas. En ese entorno: a la interface lo (localhost) se le perimte todo, se evitan paquetes tcp que llegan como conecciones nuevas, todo lo que es icmpe (ping) y lo ultimo es que ls siguientes reglas permiten salir del equipo Podemos comprobarlo y ver las reglas aniadidas satisfactoriamente con: $ iptables -S

Para eliminar reglas es mediante el numeros y cadena. Para listar las reglas por cadena y número seria con el siguiente comando: $ iptables -L --line-numbers

Usando el parametro -D seguido de numero y cadena , elimiriamos la recla correspondiente. Por ejmeplo, la 1 de INPUT : $ iptables -D INPUT 1

Tener en cuanta que al introducir reglas medainte comandos iptales, las reglas pasan a evaluarse inmediantamente

Ahora se guarda todas las regras que se halfan en memoria , a u archivo.

$ iptables-save > firewall.rules
Veras que todas reglas añidadidas  aparecen bajo la tabla *filter, puesto que en los commandos  no hemos especificado otra tablas pero ya sabes  que el firewall considera varaia tablas , cada una de ellas  con sus cadenas

 Podemos , si so deseasmmos, editar, añadir o modifica las reglas obre e propio achivo , lyego apricarlas.
 Prueba ahcer un carmbio en alsguna dla reglas, unilizano el exemplo de editor nano:
$ nano firewall.rules
Cuando guardes los cam bios , lanza este comando  ara aplicarlos:/
$iptables-apply firewall.rules
 Vereas  el stiseme te pide cionfrmacion a queno has perdido ni inguna coneccio (es el momento de hacer alsguna ruega). Sin o ulsas  'Y" o no ulsas nada en3  segundos, los cambios se revertitran Es u modo  d eañadir aqeellas reglas cuyos efectis no estmaos seguros sise ran los correctos.

Resúmen de Acciones

La siguiente tabla te muestra resúmenes de acciones en caso de seguir la regla: Tabla->Accion->Descripción

  • ACCEPT->Se acepta el paquete y no se alanizan mas reglas
  • DROP->Desecha el paqute se eliminar sin informar al emisor.
  • REJECT-> Rechaza un paqt enviar un mensaje icmp se puede especificar el tipo de ICMP.
  • LOG-> Regsitra en un archivo el paqte que cumple las condicionnes
  • SNAT->Cambia laIP de origen.
  • MASQUERADE->Cambia la IP del origen por la IP de salida del cortafuegos. util cuando la IP es dinamica
  • DNAT->CAmbailaIp de destina y necesta la opcion --to -Destination
  • REDIRECT->Cambia la IP de destino
  • MARK->Sirve para marcar la representaciiondel paqte
  • TOS->Cambia el Tos del paqte.

Tambien podemos agregar las opciones de : TTL, NOTRACK, DROP.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

More Like This

Untitled
110 questions

Untitled

ComfortingAquamarine avatar
ComfortingAquamarine
Untitled Quiz
6 questions

Untitled Quiz

AdoredHealing avatar
AdoredHealing
Untitled
44 questions

Untitled

ExaltingAndradite avatar
ExaltingAndradite
Untitled Quiz
50 questions

Untitled Quiz

JoyousSulfur avatar
JoyousSulfur
Use Quizgecko on...
Browser
Browser