Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Restricción de acceso TCP para BGP

Descripción de las opciones de seguridad para el BGP con TCP

Entre los protocolos de enrutamiento, BGP es único con el uso de TCP como protocolo de transporte. BGP los elementos del mismo nivel se establecen mediante la configuración manual entre los dispositivos de enrutamiento para crear una sesión TCP en el puerto 179. Un dispositivo compatible con BGP envía periódicamente mensajes keepalive para mantener la conexión.

Con el tiempo, BGP se ha convertido en el protocolo de enrutamiento interdominio dominante en Internet. Sin embargo, tiene unas garantías limitadas de estabilidad y seguridad. La configuración de opciones de seguridad para el BGP debe equilibrar las medidas de seguridad adecuadas con costos aceptables. Ningún método ha surgido como superior a otros métodos. Cada administrador de red debe configurar medidas de seguridad que satisfagan las necesidades de la red que se utiliza.

Para obtener información detallada acerca de los problemas de seguridad asociados con el uso de TCP como protocolo de transporte por parte de BGP, consulte RFC 4272, BGP análisis de vulnerabilidades de seguridad.

Ejemplo Configuración de un filtro para bloquear el acceso TCP a un puerto excepto desde el BGP equipos del mismo nivel

En este ejemplo, se muestra cómo configurar un filtro de Firewall sin estado estándar que bloquea todos los intentos de conexión TCP al puerto 179 de todos los solicitantes excepto los especificados del BGP.

Aplicables

No es necesaria ninguna configuración especial más allá de la inicialización del dispositivo antes de configurar este ejemplo.

Descripción general

En este ejemplo, se crea un filtro de Firewall sin estado que bloquea todos los intentos de conexión TCP al puerto 179 desde todos los solicitantes excepto los BGP pares especificados.

El filtro de Firewall sin estado filter_bgp179 hace coincidir todos los paquetes de las interfaces conectadas directamente en el dispositivo A y el dispositivo B con el número de puerto de destino 179.

Topología

Figura 1muestra la topología utilizada en este ejemplo. El dispositivo C intenta establecer una conexión TCP con el dispositivo E. Device E bloquea el intento de conexión. Este ejemplo muestra la configuración en el dispositivo E.

Figura 1: Red típica con sesiones BGP del mismo nivelRed típica con sesiones BGP del mismo nivel

Automática

Configuración rápida de CLI

Para configurar rápidamente este ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, quite los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red y, a continuación, copie y [edit] pegue los comandos en la CLI en el nivel de jerarquía.

Dispositivo C

Dispositivo E

Configurar el dispositivo E

Procedimiento paso a paso

El ejemplo siguiente requiere que se exploren varios niveles en la jerarquía de configuración. Para obtener más información sobre cómo navegar por la CLI, consulte uso del editor de CLI en el modo de configuración en la Guía del usuario de CLI de Junos os.

Para configurar el dispositivo E con un filtro de Firewall sin estado que bloquee todos los intentos de conexión TCP al puerto 179 desde todos los solicitantes excepto los especificados pares de BGP:

  1. Configure las interfaces.

  2. Configure BGP.

  3. Configure el número de sistema autónomo.

  4. Defina el término de filtro que acepta los intentos de conexión TCP al puerto 179 desde los pares de BGP especificados.

  5. Defina el otro término de filtro para rechazar paquetes de otros orígenes.

  6. Aplique el filtro de Firewall a la interfaz de bucle invertido.

Resultados

Desde el modo de configuración, para confirmar la configuración show firewall, show interfacesescriba show protocolslos comandos show routing-options ,, y. Si el resultado no muestra la configuración deseada, repita las instrucciones de este ejemplo para corregir la configuración.

Si ha terminado de configurar el dispositivo, entre commit en el modo de configuración.

Comproba

Confirme que la configuración funciona correctamente.

Comprobando que el filtro está configurado

Purpose

Asegúrese de que el filtro aparece en la salida del show firewall filter comando.

Intervención

Comprobación de las conexiones TCP

Purpose

Compruebe las conexiones TCP.

Intervención

Desde el modo operativo, ejecute el show system connections extensive comando en el dispositivo C y el dispositivo E.

El resultado del dispositivo C muestra el intento de establecer una conexión TCP. El resultado del dispositivo E muestra que las conexiones se establecen con el dispositivo A y el dispositivo B únicamente.

Supervisión del tráfico en las interfaces

Purpose

Utilice el monitor traffic comando para comparar el tráfico de una interfaz que establece una conexión TCP con el tráfico de una interfaz que no establece una conexión TCP.

Intervención

Desde el modo operativo, ejecute el monitor traffic comando en la interfaz del dispositivo e para Device B y en la interfaz del dispositivo e al dispositivo C. La siguiente salida de ejemplo verifica que, en el primer ejemplo, ack se reciban mensajes de confirmación (). En el segundo ejemplo, ack no se reciben los mensajes.

Ejemplo Configuración de un filtro para limitar el acceso TCP a un puerto basado en una lista de prefijos

En este ejemplo se muestra cómo configurar un filtro estándar de Firewall sin estado que limita el tráfico de TCP y el protocolo de mensajes de control de Internet (ICMP) destinado a la motor de enrutamiento especificando una lista de orígenes de prefijos que contengan BGP homólogos permitidos.

Aplicables

No es necesaria ninguna configuración especial más allá de la inicialización del dispositivo antes de configurar este ejemplo.

Descripción general

En este ejemplo, se crea un filtro de Firewall sin estado que bloquea todos los intentos de conexión TCP al puerto 179 de todos los solicitantes excepto BGP par que tengan un prefijo especificado.

Topología

Se crea una lista de prefijos de origen, en plist_bgp179 la que se especifica la lista de los prefijos de origen permitidos que contienen BGP pares.

El filtro de Firewall sin estado filter_bgp179 hace coincidir todos los paquetes de la lista de prefijos de origen plist_bgp179 con el número de puerto de destino 179.

Automática

Configuración rápida de CLI

Para configurar rápidamente este ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, quite los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red y, a continuación, copie y [edit] pegue los comandos en la CLI en el nivel de jerarquía.

Configure el filtro

Procedimiento paso a paso

El ejemplo siguiente requiere que se exploren varios niveles en la jerarquía de configuración. Para obtener más información sobre cómo navegar por la CLI, consulte uso del editor de CLI en el modo de configuración en la Guía del usuario de CLI de Junos os.

Para configurar el filtro:

  1. Expanda la lista de prefijos bgp179 para incluir todos los prefijos a los que apunta el grupo de par BGP definido por protocols bgp group <*> neighbor <*> .

  2. Defina el término de filtro que rechaza los intentos de conexión TCP al puerto 179 de todos los solicitantes excepto los BGP pares especificados.

  3. Defina el otro término de filtro para aceptar todos los paquetes.

  4. Aplique el filtro de Firewall a la interfaz de bucle invertido.

Resultados

Desde el modo de configuración, escriba los show firewallcomandos, show interfacesy y show policy-options para confirmar la configuración. Si el resultado no muestra la configuración deseada, repita las instrucciones de este ejemplo para corregir la configuración.

Si ha terminado de configurar el dispositivo, entre commit en el modo de configuración.

Comproba

Confirme que la configuración funciona correctamente.

Mostrar el filtro de Firewall aplicado a la interfaz de bucle invertido

Purpose

Compruebe que el filtro filter_bgp179 de Firewall se aplica al tráfico de entrada IPv4 de la lo0.0interfaz lógica.

Intervención

Utilice el show interfaces statistics operational mode comando para la interfaz lógica lo0.0 e incluya la detail opción. En la Protocol inet sección de la sección de salida del comando, el Input Filters campo muestra el nombre del filtro de Firewall sin estado aplicado a la interfaz lógica en la dirección de entrada.

Ejemplo Limitar el tamaño del segmento TCP para BGP

Este ejemplo muestra cómo evitar los problemas de vulnerabilidades del Protocolo de mensajes de control de Internet (ICMP) mediante la limitación del tamaño del segmento TCP cuando se utiliza el descubrimiento de unidad máxima de transmisión (MTU). El uso del descubrimiento de MTU en las rutas de TCP es uno de los métodos para evitar la fragmentación de paquetes BGP.

Aplicables

No es necesaria ninguna configuración especial más allá de la inicialización del dispositivo antes de configurar este ejemplo.

Descripción general

TCP negocia un valor de tamaño máximo de segmento (MSS) durante el establecimiento de una conexión de sesión entre dos equipos del mismo nivel. El valor de MSS negociado se basa principalmente en la unidad máxima de transmisión (MTU) de las interfaces a las que se conectan directamente los interlocutores de la comunicación. Sin embargo, debido a las variantes del UMT del vínculo en la ruta que toman los paquetes TCP, algunos paquetes de la red que están muy dentro del valor MSS pueden fragmentarse cuando el tamaño del paquete supera los límites de UMT.

Para configurar el valor de MSS de TCP, tcp-mss incluya la instrucción con un tamaño de segmento entre 1 y 4096.

Si el enrutador recibe un paquete TCP con el bit SYN y la opción MSS, y la opción MSS especificada en el paquete es mayor que el valor de MSS especificado tcp-mss por la instrucción, el enrutador sustituye el valor de MSS del paquete por el valor menor especificado por el < c 2 instrucción > .tcp-mss

El valor de MSS configurado se utiliza como tamaño de segmento máximo para el remitente. Suponiendo que el valor de TCP MSS que utiliza el remitente para comunicarse con el BGP vecino es el mismo que el valor de TCP MSS que el remitente puede aceptar del BGP vecino. Si el valor de MSS del BGP vecino es menor que el valor de MSS configurado, se utilizará el valor de MSS del vecino BGP como tamaño de segmento máximo para el remitente.

Esta característica es compatible con TCP sobre IPv4 y TCP sobre IPv6.

Diagrama de topología

Figura 2muestra la topología utilizada en este ejemplo.

Figura 2: Tamaño de segmento máximo de TCP para el BGPTamaño de segmento máximo de TCP para el BGP

Automática

Configuración rápida de CLI

Para configurar rápidamente este ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, quite los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red y, a continuación, copie y [edit] pegue los comandos en la CLI en el nivel de jerarquía.

R0

Modalidades

Procedimiento paso a paso

El ejemplo siguiente requiere que se exploren varios niveles en la jerarquía de configuración. Para obtener más información sobre cómo navegar por la CLI, consulte uso del editor de CLI en el modo de configuración en la Guía del usuario de CLI de Junos os.

Para configurar R0 de enrutador:

  1. Configure las interfaces.

  2. Configure un protocolo de puerta de enlace interior (IGP) OSPF en este ejemplo.

  3. Configure uno o varios grupos de BGP.

  4. Configure el descubrimiento MTU para evitar la fragmentación de paquetes.

  5. Configure el BGP vecinos, con el MSS de TCP establecido globalmente para el grupo o específicamente para los diversos vecinos.

    Nota:

    La configuración del vecino TCP de MS tiene prioridad sobre la configuración del grupo.

  6. Configure el sistema autónomo local.

Resultados

Desde el modo de configuración, escriba los show interfacescomandos, show protocolsy y show routing-options para confirmar la configuración. Si el resultado no muestra la configuración deseada, repita las instrucciones de este ejemplo para corregir la configuración.

Si ha terminado de configurar el dispositivo, entre commit en el modo de configuración.

Comproba

Para confirmar que la configuración funciona correctamente, ejecute los siguientes comandos:

  • show system connections extensive | find <neighbor-address>, para comprobar el valor de MSS de TCP negociado.

  • monitor traffic interface, para supervisar el tráfico de BGP y asegurarse de que el valor TCP MSS configurado se utiliza como opción de MSS en el paquete TCP SYN.

Solución de problemas

Cálculo de MSS con descubrimiento de MTU

Relacionado

Considere un ejemplo en el que dos dispositivos de enrutamiento (R1 y R2) tienen una conexión BGP (IBGP) interna. En ambos enrutadores, las interfaces conectadas tienen el 4034 como MTU de IPv4.

En la siguiente captura de paquetes en el dispositivo R1, el MSS negociado es el 3994. En la show system connections extensive información para MSS, se establece en 2048.

Solución

Este es el comportamiento esperado con Junos OS. El valor MSS es igual al valor MTU menos los encabezados IP o IPv6 y TCP. Esto significa que el valor de MSS es generalmente de 40 bytes menos que el MTU (para IPv4) y el 60 bytes menos el MTU (para IPv6). Este valor se negocia entre los elementos del mismo nivel. En este ejemplo, es 4034-40 = 3994. Junos OS, a continuación, redondea este valor a un múltiplo de 2 KB. El valor es 3994/2048 * 2048 = 2048. Por lo tanto, no es necesario ver el mismo valor de MSS show system connections con el resultado.

3994 / 2048 = 1.95

1,95 se redondea a 1.

1 * 2048 = 2048