12 de noviembre de 2020

Puertos e interfaces en un switch multilayer

Cuando abordamos el estudio de los switches, y particularmente los llamados switches multilayer, es conveniente organizar claramente los conceptos para tener una comprensión adecuada de las diferentes operaciones que se realizan en el dispositivo.
Es por esto que consideré conveniente dedicar atención a las diferentes interfaces y puertos que presentan estos dispositivos.

En primer lugar debemos tener presente que cada puerto tiene su correspondiente interfaz. Estas interfaces pueden ser interfaces capa 2 o interfaces capa 3 según participen de procesos de reenvíos de tramas (capa 2) o de paquetes (capa 3).

Interfaces capa 2
Se trata de interfaces que participan del reenvío de tramas a partir de la dirección MAC de destino de cada trama y tomando en consideración la tabla de direcciones MAC del switch.
Estas interfaces, por ser capa 2, no admiten la configuración de direccionamiento capa 3.
Hay diferentes interfaces capa 2:
  • Puertos de acceso.
    Se trata de puertos asociados a una VLAN que está definida como VLAN del puerto.
    Los puertos de acceso pueden participar de una única VLAN y ocasionalmente (cuando el diseño lo requiere) de una VLAN auxiliar o VLAN de voz.
    Su encapsulación es Ethernet.
    Un ejemplo de configuración:

    Switch(config)#interface GigabitEthernet 1/0/1
    Switch(config-if)#switchport mode access
    Switch(config-if)#switchport nonegotiate
    Switch(config-if)#swtichport access vlan 10

  • Puertos troncales.
    Son puertos en capacidad de transportar tráfico de múltiples VLANs manteniendo su pertenencia a cada VLAN.
    Para mantener identificada esa pertenencia a cada VLAN de cada trama se utiliza un protocolo de etiquetado de tramas: IEEE 802.1Q.
    Todo puerto troncal que implementa 802.1Q incluye una VLAN que no es etiquetada y que recibe el nombre de VLAN nativa. En el caso de los switches Catalyst la VLAN nativa por defecto es la VLAN 1; esto puede cambiarse por configuración.

    Estos puertos, por defecto, transportan todas las VLANs definidas en el switch y es posible por configuración limitar cuáles son las VLANs transportadas.
    Un ejemplo de configuración:

    Switch(config)#interface GigabitEthernet 1/0/10
    Switch(config-if)#switchport mode trunk
    Switch(config-if)#switchport trunk encapsulation dot.1q
    Switch(config-if)#switchport trunk allowed vlan 10, 20
    Switch(config-if)#swtichport trunk native vlan 999
Una VLAN no es una interfaz.
Una VLAN es una red lógica o virtual cuyo tráfico circula de modo independiente (a nivel de capa 2) del de otras VLANs que operan sobre la misma red física.
Las VLANs no tienen necesariamente asociada una interfaz VLAN.

Interfaces capa 3
Son interfaces que participan del reenvío de paquetes IP a partir de la dirección IP de destino de cada paquete y tomando en cuenta las rutas que se encuentran definidas en la tabla de enrutamiento IP.
Estas interfaces por ser capa 3 requieren la configuración de direccionamiento IP, sea IPv4 y/o IPv6.
No admiten la configuración de VLANs de acceso o troncales ya que se trata de interfaces de capa 3, y estos features son features de capa 2.
En los switches multilayer a 2 tipos de interfaces capa 3:
  • Interfaces VLAN.
    Se trata de interfaces lógicas que operan como gateway del segmento IP que se identifica que con una VLAN determinada.
    El ID de la interfaz VLAN corresponde al mismo ID de la VLAN.
    Requieren la configuración de una dirección IP que operará como default gateway de las terminales conectadas a los puertos de la misma VLAN.
    Estas interfaces, por ser interfaces lógicas, no requieren que se las habilite administrativamente ya que se encuentran habilitadas por defecto.
    Un ejemplo de configuración:

    Switch(config)#ip routing
    Switch(config)#interface vlan 10
    Switch(config-if)#ip address 10.10.10.1 255.255.255.0


  • Interfaces o puertos ruteados.
    Se trata de puertos cuya interfaz se habilita para operar como interfaz de capa 3. Los puertos de los switches Catalyst (independientemente de que sean switches multilayer) tienen asociadas interfaces de capa 2 por defecto, por est
    Estos puertos no pueden ser parte de troncales, participar de VLANs o integrar un link aggregation de capa 2.
    No admiten la configuración de subinterfaces.
    Un ejemplo de configuración:

    Switch(config)#ip routing
    Switch(config)#interface GigabitEthernet 1/0/20
    Switch(config-if)#no switchport
    Switch(config-if)#ip address 10.10.10.1 255.255.255.0


Estás invitado a participar de nuestro grupo en Facebook:

https://www.facebook.com/groups/librosnetworking/

O si preferís redes sociales con mayor control de tu privacidad,
podés participar de nuestro grupo en VKontakte
https://vk.com/libros.networking

o seguir las principales novedades en el grupo de Telegram:
https://t.me/LibrosNetworking


Las abreviaturas y siglas utilizadas en este post puede encontrarlas desarrolladas en
que está disponible en la Librería en Línea de EduBooks.

 

 

 

3 de noviembre de 2020

Gestión de la configuración

Contenido incluido
en el temario de
CCNA 200-301

Se da esta denominación a la práctica de definir el rendimiento, los atributos funcionales y físicos de un producto y luego garantizar la coherencia de la "configuración" del sistema a lo largo de su trayectoria. 
Con este propósito se pueden implementar herramientas de gestión de la configuración (CMT). Estas herramientas se han utilizado tradicionalmente en el ámbito de los sistemas para la implementación de servidores y aplicaciones; ahora se utilizan también como herramientas de automatización de la gestión de la configuración de los dispositivos para mejorar las operaciones de red. Estas herramientas no son nuevas. Lo novedoso es cómo su uso en redes está cambiando la forma en que se gestionan las infraestructuras.
Las herramientas de gestión de la configuración ofrecen algunos beneficios:
  • Se automatiza el aprovisionamiento y la implementación de aplicaciones e infraestructura.
  • No requieren conocimientos de programación: hay herramientas que implementan un modelo declarativo (intención). No requieren conocimientos de scripting.
  • Aprovechan las prácticas comunes en el desarrollo de software para realizar implementaciones, incluyendo las prácticas de control y las pruebas de versiones
  • Las herramientas más comunes son: Puppet, Ansible y Chef.
Desde la perspectiva de la gestión de la red es habitual implementar cambios manualmente. Estos cambios tienen diferente gravedad e impacto, puede ser tanto la creación de una nueva VLAN en un centro de datos o campus, como la implementación de cambios diarios en las políticas de firewall para cada una de las nuevas aplicaciones que se implementan. Cuando en la organización se ha definido un flujo de trabajo manual para realizar un conjunto de tareas, se deben usar las herramientas adecuadas para automatizar ese flujo de tareas. No tiene sentido pasar una hora realizando un cambio que puede ejecutarse en solo unos minutos y con menor probabilidad de errores si se utiliza una herramienta diseñada correctamente. Este proceso o flujo de tareas es donde las herramientas de código abierto como Puppet, Chef y Ansible pueden reducir drásticamente la cantidad de interacciones manuales con la red.
  • Puppet: https://puppet.com/
  • Chef: https://www.chef.io/products/chef-infra
  • Ansible: https://www.ansible.com/

Con herramientas para la gestión de la configuración se pueden definir y aplicar configuraciones relacionadas con operaciones a nivel del sistema (por ejemplo, autenticación, registro, imagen), configuración a nivel de interfaz (por ejemplo, VLANs, QoS, seguridad), configuraciones de enrutamiento (por ejemplo, especificaciones OSPF o BGP) y más.
Estas herramientas a menudo se denominan herramientas DevOps. Son más específicamente herramientas de automatización y administración de la configuración y son utilizadas por aquellas organizaciones que han implementado alguna forma de prácticas de DevOps como el control y las pruebas de versiones. Permiten automatizar aplicaciones, infraestructura y redes en alto grado sin la necesidad de realizar programación manual utilizando un lenguaje de programación como Python. No solo reducen el tiempo necesario para realizar determinadas tareas, también ofrecen una mayor previsibilidad.
Una arquitectura habitual de los sistemas CMT consiste en un servidor central, donde se define un estado requerido o previsto del sistema, al que se asocia  una serie de dispositivos de red sobre los que se aplica ese estado y debe hacerse cumplir.

Implementaciones con o sin agente
Para la gestión automatizada de la configuración de los dispositivos hay dos modelos posibles.

1- Modelo basado en la intención

En un servidor central se define el estado requerido o deseado de los sistemas y los agentes implementados en cada sistema o dispositivo se ocupan de plasmar ese estado deseado.
Su despliegue requiere la implementación de un agente en cada dispositivo de la red.
Es el modelo implementado por Puppet y Chef.
La arquitectura es uniforme para todos los dispositivos de destino que admitan el agente:
  • Un software de control (Puppet Master o Chef Server) define el objetivo a conseguir en los dispositivos destino.
  • En cada dispositivo un agente de software monitorea el estado de la configuración real del dispositivo.
    El agente interactúa con el servidor para informar el estado real y recibir el estado deseado. Si hay diferencia entre ambos estados el agente ejecuta lo necesario para hacer cumplir el objetivo.

2-
Modelo basado en CLI y SSH.

Se basa en las técnicas tradicionales a partir de plantillas y grupos de comandos reutilizables para lograr escalabilidad.
No requiere de la instalación de ningún agente o cliente en cada dispositivo de la red.
La operación se realiza a través de un shell remoto al que accede un servidor de gestión o máster que utiliza un modelo push para entregar a través de la red la información a implementar en forma de script.
Es el modelo implementado por Ansible.
En este caso el estado de configuración objetivo se define en los playbooks de Ansible.
Los playbooks son archivos de configuración basados en texto que definen cómo se deben usar los módulos de Ansible. Ansible interpreta el contenido de los playbooks y utiliza los módulos para aprovisionar los dispositivos de destino. Para los dispositivos de Cisco estos comandos se ejecutan a través de CLI.
Su ventaja principal es que no requiere la instalación de un agente; pero es crítica la configuración de seguridad del dispositivo ya que puede limitar la posibilidad de acceder al mismo.

Ambas implementaciones coinciden en la capacidad de utilizar un único conjunto de herramientas para configurar todos los dispositivos de la infraestructura. Esto implica que todo el ciclo de vida de la implementación de una aplicación se puede definir y gestionar desde un solo punto, con una misma herramienta.
Unificar la configuración de todos los elementos de la infraestructura en un único conjunto de herramientas aumenta la eficiencia y la agilidad, al tiempo que reduce los costos.



Estás invitado a participar de nuestro grupo en Facebook:
https://www.facebook.com/groups/librosnetworking/

O si preferís redes sociales con mayor control de tu privacidad,
podés participar de nuestro grupo en VKontakte
https://vk.com/libros.networking

o seguir las principales novedades en el grupo de Telegram:
https://t.me/LibrosNetworking


Las abreviaturas y siglas utilizadas en este post puede encontrarlas desarrolladas en
que está disponible en la Librería en Línea de EduBooks.

24 de octubre de 2020

Modelos de datos


Contenido incluido
en el temario de
CCNA 200-301

Los modelos de datos describen un conjunto limitado de datos en forma de un esquema de lenguaje.
  • Utilizan parámetros bien definidos para estandarizar la representación de datos de un dispositivo de red de modo tal que la salida de plataformas diferentes sea la misma.
  • No se utiliza para enviar información a los dispositivos y depende de protocolos como NETCONF y RESTCONF para enviar documentos codificados en JSON y XML que simplemente adhieren a un modelo determinado.
  • La configuración de los dispositivos se puede validar contra un modelo de datos para verificar si los cambios son válidos para el dispositivo antes de confirmar los cambios.
Los modelos de datos se utilizan para describir la sintaxis y la semántica utilizadas para trabajar con objetos de datos específicos. Pueden definir atributos y respuestas.
El modelo de gestión basado en CLI tradicional no tiene un marco de referencia o modelo; la gestión basada en programabilidad, en cambio, genera información modelizada. Un dispositivo que tiene una representación JSON o XML de su configuración completa puede gestionarse completamente desde un modelo de datos como YANG.
Los modelos de datos proporcionan una jerarquía bien definida de los datos operativos y de configuración de un dispositivo y las acciones que se pueden realizar mediante un protocolo como NETCONF.
Consideran diferentes categorías de datos:
  • Datos de configuración: 
    Conjunto de datos que pueden guardarse y que se requieren para transformar un sistema en su estado inicial (predeterminado) a su estado actual.
    Por ejemplo, configurar las entradas de las tablas de enrutamiento IP, configurar la MTU de una interfaz, configurar una velocidad determinada en una interfaz Ethernet, etc.
  • Datos de estado operativo: 
    Conjunto de datos que obtiene el sistema en ejecución y que influyen en el comportamiento del sistema de forma similar a los datos de configuración.
    A diferencia de los datos de configuración, los datos del estado operativo son transitorios, responden a un momento específico.
    Los datos se modifican a partir de interacciones con componentes internos o con otros sistemas que utilizan protocolos especializados.
    Por ejemplo, las entradas obtenidas por protocolos de enrutamiento como, atributos de las interfaces de red, etc.
  • Acciones: 
    Conjunto de acciones que admiten transacciones de configuración robustas en la red.
    Cuando se intenta un cambio que afecta a varios dispositivos las acciones simplifican la administración de escenarios de diagnóstico de fallos, lo que resulta en la capacidad de tener transacciones sobre un grupo de dispositivos de manera confiable.

Modelo YANG
YANG se ha convertido en un lenguaje de modelado de datos de hecho. Es un lenguaje basado en estándares que se utiliza para crear solicitudes de configuración de dispositivos o solicitudes de datos operativos (como pueden ser los comandos show). Tiene un formato estructurado similar a un programa de computadora que es legible por humanos. Hay varias aplicaciones disponibles que se pueden ejecutar en una plataforma de administración centralizada para crear estas solicitudes de configuración y datos operativos.
  • Lenguaje de modelado definido en el RFC 6020.
  • Desarrollado en 2010 inicialmente para NETCONF, ahora también se lo utiliza con RESTCONF y gRPC
  • Configuración de modelos y datos de estado operativo
  • Proporciona sintaxis y semántica.
    Proporciona una sintaxis y semántica rica que ofrece restricciones y estructuras reutilizables que pueden ser aplicadas dentro y entre modelos YANG.
  • Utiliza estructuras de datos reutilizables.
  • Existen modelos de datos YANG estándar que se aplican a todos los proveedores y otros que están asociados con las características propietarias de un fabricante específico.
NOTA.
YANG es la forma dominante de modelar la configuración y la información de estado de los dispositivos de la red pero, no es el único método. 
Algunas plataformas de Cisco (por ejemplo, la familia Nexus 9000, Cisco Unified Computing System) no utilizan YANG sino que están totalmente controladas por un modelo propietario



Estás invitado a participar de nuestro grupo en Facebook:
https://www.facebook.com/groups/librosnetworking/

O si preferís redes sociales con mayor control de tu privacidad,
podés participar de nuestro grupo en VKontakte
https://vk.com/libros.networking

o seguir las principales novedades en el grupo de Telegram:
https://t.me/LibrosNetworking


Las abreviaturas y siglas utilizadas en este post puede encontrarlas desarrolladas en
que está disponible en la Librería en Línea de EduBooks.

18 de octubre de 2020

Modelo para programabilidad de la red

Contenido incluido
en el temario de
CCNA 200-301

Inicialmente la implementación y gestión de las redes de datos se realizó de modo completamente manual y principalmente utilizando la interfaz de línea de comandos (CLI). Se trataba de una red con una cantidad y variedad de dispositivos mucho menor y con servicios de mucho menos complejidad que las redes que operamos en la actualidad.

En la medida en que evolucionaban estas redes tanto la operación utilizando CLI como la apelación a SNMP fueron adecuadas y suficientes para los requerimientos de la gestión. De hecho, estos mecanismos siguen siendo al día de hoy en muchos casos los principales recursos.
Sin embargo, la sintaxis de la CLI y las opciones configurables de los diferentes protocolos que están asociadas a este mecanismo de gestión varían ampliamente entre diferentes fabricantes, plataformas e incluso versiones de un mismo software. Esta situación, combinada con las restricciones propias de la CLI se ha constituido en una limitación para el uso de la CLI en la gestión de redes a escala; la sola configuración y operación de una función o protocolo específicos puede requerir de muchas variantes de la CLI haciendo su uso complejo y pasible de errores. En estos casos la automatización con scripts es una opción, pero se torna cada vez más compleja.
Por su parte, SNMP ha sido desde hace tiempo la forma más utilizada para el monitoreo de las redes. Es una muy buena opción cuando las redes son medianas o pequeñas y el sondeo de cada dispositivo se realiza por intervalos de 15 a 30 minutos. Sin embargo, SNMP a menudo genera complicaciones operativas al sondear dispositivos con demasiada frecuencia debido al incremento en el uso de la capacidad de transporte de la red. Si bien SNMP ha servido a la industria razonablemente bien; desde la perspectiva de la capacidad de programación de la red SNMP carece de bibliotecas para varios lenguajes de programación.
Una de las limitaciones que presenta el modelo tradicional de gestión es la carencia de una forma adecuada de comunicación máquina a máquina con la red que permita la interacción de los dispositivos terminales con la configuración de la infraestructura de la red de modo automático. 

Este es el lugar para las redes programables. Redes en la que la automatización es posible a partir de la implementación de un conjunto de herramientas de programación adecuadas para gestionar la configuración y la operación de la red.
La programabilidad de las redes ha introducido una serie de protocolos y herramientas cuyo nombre es cada vez más familiar: NETCONF, YANG, XML, etc.
Pero, ¿cuál es el lugar o la función que cumple cada uno de estos elementos nuevos?
Para comprender mejor la operación y flexibilizar su implementación y desarrollo es necesario contar con un modelo teórico que nos permite poner cada uno de estos elementos en un lugar específico. Este es el modelo de redes programables.

Este modelo de programabilidad puede representarse así:
  • Aplicación cliente
    Gestiona las configuraciones y monitorea los dispositivos de la infraestructura.
    La aplicación cliente se puede escribir en diferentes lenguajes de programación (p.e. Python) y los SDK se utilizan a menudo para simplificar la implementación de aplicaciones para la automatización de redes
  • SDK
    Conjunto de herramientas y bibliotecas de software que permiten al usuario final crear sus propias aplicaciones personalizadas para diversos fines incluida la gestión de plataformas de hardware.
  • Protocolo
    Las APIS basadas en modelos admiten múltiples protocolos. Los más utilizados en este momento son NETCONF, RESTCONF y gPRC.
    Los modelos de datos utilizados se basan en estos protocolos.
    La elección del protocolo depende de las herramientas disponibles, la experiencia en redes, programación y automatización.
  • Codificación
    Los datos pueden ser codificados en formatos como JSON, XML o GPB.
    En algunos casos el protocolo está vinculado a codificaciones específicas (como es NETCONF con XML). Esto está relacionado con el protocolo que puede o no admitir diferentes formatos de codificación.
  • Transporte
    Cada API soporta uno o más protocolos de transporte para establecer la comunicación con el dispositivo de red.
  • Modelo de datos
    Es la base de la API.
    Definen la sintaxis y la semántica de los datos, incluidas las limitaciones de esa API.
    Se utilizan parámetros bien definidos para estandarizar la representación de los datos de modo que la salida de diferentes plataformas sea la misma.

Estás invitado a participar de nuestro grupo en Facebook:

https://www.facebook.com/groups/librosnetworking/

O si preferís redes sociales con mayor control de tu privacidad,
podés participar de nuestro grupo en VKontakte
https://vk.com/libros.networking

o seguir las principales novedades en el grupo de Telegram:
https://t.me/LibrosNetworking


Las abreviaturas y siglas utilizadas en este post puede encontrarlas desarrolladas en
que está disponible en la Librería en Línea de EduBooks.

 

 

3 de octubre de 2020

Los estratos en NTP

Network Time Protocol es un protocolo creado para sincronizar el reloj de los diferentes sistemas que se integran en una redes de datos de latencia variable. Desarrollado inicialmente antes de 1985 es uno de los protocolos de Internet más antiguos que se utilizan actualmente. Fue diseñado por David L. Mills de la Universidad de Delaware .

Está diseñado para sincronizar todos los sistemas dentro de unos pocos milisegundos con la hora universal coordinada (UTC -  Coordinated Universal Time). 

Utiliza una versión modificada del algoritmo de Marzullo  para seleccionar servidores de tiempo precisos y está diseñado para mitigar los efectos de la latencia de red variable . Generalmente puede mantener el tiempo dentro de decenas de milisegundos en Internet y puede lograr una precisión superior a un milisegundo en redes LAN en condiciones ideales. La presencia de rutas asimétricas y la posible congestión de la red pueden provocar errores del orden de los 100 ms o más.

El protocolo se describe en términos del modelo cliente-servidor pero puede usarse fácilmente implementando relaciones entre pares donde ambos miembros del par consideran al otro como una fuente de tiempo potencial. Utiliza UDP como protocolo de transporte en el puerto número 123. 

No incluye en su contenido información sobre las zonas horarias locales o el horario de verano . 

El protocolo actualmente en uso es la versión 4 (NTPv4) propuesto en el RFC  5905  y es compatible con la versión 3, especificada en el RFC 1305.

El sistema de estratos

NTP utiliza un sistema jerárquico de fuentes de tiempo semi-estratificado. Cada nivel de esta jerarquía recibe la denominación de estrato y se le asigna un identificador de nivel que utiliza el cero para identificar el reloj de referencia que da la información de hora de referencia. 

El concepto de estrato describe a cuántos saltos se encuentra un sistema de un fuente autoritativa de registro de tiempo o dispositivo de estato 0. El nivel del estrato define la distancia, en saltos, que hay entre un sistema y el reloj de referencia o estrato 0.

Un servidor sincronizado con un servidor de estrato n pertenece al estrato n + 1. Por ejemplo, un servidor sincronizado con un servidor de estrato 2 (n) pertenece al estrato 3 (n + 1).

El número representa la distancia con el reloj de referencia (estrato 0) y se utiliza para evitar dependencias cíclicas en la jerarquía. El estrato no es una indicación de calidad o confiabilidad; es común encontrar servidores del estrato 3 que son de mayor calidad que otros servidores del estrato 2.

  • Estrato 0
    Se trata de dispositivos de cronometraje de alta precisión como pueden ser relojes atómicos , clientes GPS u otros relojes de precisión y que por lo tanto se asume que pueden proporcionar una hora precisa. Generan una señal de pulso muy precisa por segundo que activa una interrupción y marca de tiempo en una computadora conectada.
    Los dispositivos de estrato 0 también se conocen como relojes de referencia. Un dispositivo de estrato 0 no puede ser utilizado directamente en la red sino que debe conectarse directamente a un dispositivo que se asume como un servidor de estrato 1.
    Los servidores NTP no pueden anunciarse a sí mismos como estrato 0.
    Un campo de estrato establecido en 0 en el paquete NTP indica un estrato no especificado.

  • Estrato 1
    Sistemas cuyo reloj se encuentra sincronizado a unos pocos microsegundos de un dispositivo de estrato 0 al que se encuentra directamente conectado.
    Los servidores de un estrato puede también intercambiar información NTP con otros servidores del mismo estrato o nivel que reciben entonces la denominación de “peer”. Esto permite lograr una referencia de tiempo más estable y robusta para los sistemas de ese mismo nivel.
    Los servidores de estrato 1 pueden emparejarse con otros servidores de estrato 1 (peers) para comprobar el estado.
    También se les conoce como servidores de tiempo primarios.

  • Estrato 2
     sincronizados a través de una red de datos con servidores de estrato 1 utilizando paquetes NTP.
    A menudo, un sistema de estrato 2 consulta varios servidores del estrato 1. Los sistemas de estrato 2 también pueden emparejarse con otros sistemas del mismo estrato 2 (peers) para proporcionar un tiempo más estable y robusto para todo el sistema.

  • Estrato 3
    Son sistemas que están sincronizados con servidores de estrato 2. Emplean los mismos algoritmos para el emparejamiento y el muestreo de datos que los sistemas de estrato 2 y pueden actuar ellos mismos como servidores para los sistemas de estrato 4, y así sucesivamente.

El protocolo prevé un límite de 15 estratos; el estrato 16 se utiliza para indicar que un dispositivo no está sincronizado.



Estás invitado a participar de nuestro grupo en Facebook:
https://www.facebook.com/groups/librosnetworking/

O si preferís redes sociales con mayor control de tu privacidad,
podés participar de nuestro grupo en VKontakte
https://vk.com/libros.networking

o seguir las principales novedades en el grupo de Telegram:
https://t.me/LibrosNetworking


Las abreviaturas y siglas utilizadas en este post puede encontrarlas desarrolladas en
que está disponible en la Librería en Línea de EduBooks.

 

26 de septiembre de 2020

Proceso de selección de herramientas en Firepower

Los procesos de actualización tecnológica hacen que en nuestro medio progresivamente se realicen cada vez más implementaciones de firewalls de última generación (NGFW).

Muchas de estas implementaciones son sencillamente el reemplazo de los firewalls statefull ya presentes, que al momento de ser actualizados se reemplazan por NGFW. Esta actualización genera un punto que requiere una consideración especial.
Los NGFW son herramientas mucho más potentes que sus predecesores. No solo hablamos de potencia de hardware sino de capacidades y granularidad. Ahora podemos inspeccionar aplicaciones, inspeccionar tráfico, incorporar información de security intelligence, etc. Todas capacidades que no estaban presentes en los firewalls statefull y que por lo tanto no podían ser consideradas al momento de implementar aquellos dispositivos.

Esto hace que una simple migración de configuraciones sea una estrategia pobre.
Ahora contamos con nuevas herramientas, podemos hacer evaluaciones que antes no eran posibles, y por lo tanto tenemos que evaluar cuál es la mejor forma de lograr los objetivos que se plantean con las nuevas herramientas con que contamos.

Pero también es cierto que estos NGFW son herramientas complejas, con múltiples opciones diferentes para lograr un mismo objetivo y una gran granularidad.
Esto ha hecho que muchas veces me encuentre con el requerimiento de un procedimiento de toma de decisiones que nos pemita seleccionar la mejor herramienta para cada objetivo propuesto.
A este requerimiento pretendo dar respuesta en este post, tomando como base las herramientas y características de los sistemas Firepower de Cisco System.

Al momento de seleccionar la mejor manera de responder a un requerimiento de seguridad específico con las herramientas que nos proporcionan los sistemas Firepower, el proceso de toma de decisiones a considerar puede ser el siguiente:
  1. Si el requerimiento es el filtrado de tráfico tomando como base direccionamiento IP de origen y/o destino, y/o puertos de capa de transporte de origen y/o destino la herramienta a considerar es la implementación de una regla de prefiltrado en una política de prefiltrado.
    Esta herramienta nos permite implementar acciones de alguna forma semejantes a las de las ACLs tradicionales pero con ventajas significativas: se ejecutan en la interfaz de ingreso del tráfico antes de que los paquetes accedan al motor de inspección Snort y por lo tanto con menor requerimiento de recursos de procesamiento con la consecuente reducción del delay.
  2. Si en cambio el requerimiento es más específico y requiere del filtrado de tráfico en función de protocolos de capa  de aplicación, y/o de aplicaciones y/o de usuarios, entonces la herramienta a considerar es la implementación de una regla de control de acceso en una política de control de acceso.
    Esta herramienta requiere más procesamiento que la anterior pero a la vez permite un control más granular del tráfico que atraviesa el firewall en función de la potencia del motor de inspección Snort.

  3. Si el requerimiento especifica la necesidad de realizar filtrado de archivos transportados por diferentes protocolos de aplicación según el tipo de archivo (documentos Word, archivos pdf o ejecutables, etc.) o la presencia de malware o código malicioso, en este caso la herramienta a implementar es una política de filtrado de archivos y malware asociada a una regla de control de acceso que especifique el tráfico que debe ser sometido a esta inspección.
  4. Finalmente, si se requiere de la implementación de inspección avanzada de tráfico para controlar los posibles intentos de explotar vulnerabilidades de alguno de los sistemas alojados en la red corporativa, la herramienta a aplicar es una política de prevención de intrusiones (IPS) ajustada a los requerimientos de seguridad y asociada a una regla de control de acceso que especifique el tráfico que se espera sea inspeccionado por esta política.
    Para que la política se pueda adaptar a los sistemas alojados en la red corporativa es necesario verificar además que la política de descubrimiento de la red aplicada al FTD incluya a aquellos dispositivos que se desea proteger con esta política de prevención de intrusiones.

Un NGFW es una herramienta aún más variada y con muchas otras opciones disponibles. En este proceso he intentado incluir solamente las principales consideraciones y posibilidades a implementar.

Espero que resulte de utilidad.



Estás invitado a participar de nuestro grupo en Facebook:
https://www.facebook.com/groups/librosnetworking/

O si preferís redes sociales con mayor control de tu privacidad,
podés participar de nuestro grupo en VKontakte
https://vk.com/libros.networking

o seguir las principales novedades en el grupo de Telegram:
https://t.me/LibrosNetworking


Las abreviaturas y siglas utilizadas en este post puede encontrarlas desarrolladas en
que está disponible en la Librería en Línea de EduBooks.

 

20 de septiembre de 2020

Introducción a Cisco Umbrella - Gráficos

Umbrella es una importante herramienta de seguridad en redes de cualquier tamaño.

Esta intenta ser una introducción sencilla, en modo gráfico, a la operación de esta herramienta de seguridad. Espero sea de utilidad.









Estás invitado a participar de nuestro grupo en Facebook:
https://www.facebook.com/groups/librosnetworking/

O si preferís redes sociales con mayor control de tu privacidad,
podés participar de nuestro grupo en VKontakte
https://vk.com/libros.networking

o seguir las principales novedades en el grupo de Telegram:
https://t.me/LibrosNetworking


Las abreviaturas y siglas utilizadas en este post puede encontrarlas desarrolladas en
que está disponible en la Librería en Línea de EduBooks.