Opción de autenticación TCP (TCP-AO)
RESUMEN Obtenga información sobre la opción de autenticación TCP (TCP-AO) para sesiones BGP y LDP.
TCP-AO para sesiones BGP y LDP
Los protocolos BGP y LDP utilizan TCP para el transporte. TCP-AO es un nuevo método de autenticación propuesto a través de RFC5925, la opción de autenticación TCP para mejorar la seguridad y autenticidad de los segmentos TCP intercambiados durante las sesiones BGP y LDP. También admite tráfico IPv4 e IPv6.
Beneficios de TCP-AO
TCP-AO proporciona las siguientes ventajas sobre TCP MD5:
-
Algoritmos más fuertes: admite varios algoritmos de autenticación más fuertes, como HMAC-SHA-1-96 y AES-128-CMAC-96 (obligatorios por RFC5925, la opción de autenticación TCP). HMAC-SHA-1-96 es un MAC basado en hash y AES-128-CMAC-96 es un MAC basado en cifrado, lo que hace que la síntesis del mensaje sea más compleja y segura que la síntesis creada mediante el algoritmo MD5.
-
Seguridad doble: en el método TCP-AO, el algoritmo de autenticación configurado se utiliza en dos etapas: una vez para generar una clave de tráfico interno a partir de una clave configurada por el usuario y, a continuación, para generar un resumen de mensaje utilizando la clave de tráfico generada, mientras que en el método TCP MD5, el algoritmo MD5 genera un resumen del mensaje utilizando su clave configurada por el usuario.
-
Mejor gestión de claves y agilidad: puede configurar hasta 64 claves para una sesión y agregarlas en cualquier momento durante la duración de una sesión. Proporciona un mecanismo de coordinación de claves simple al dar la capacidad de cambiar claves (mover de una clave a otra) dentro de la misma conexión sin causar ningún cierre de conexión TCP. Cambiar las claves TCP MD5 durante una conexión establecida puede provocar un flap o reinicio en la conexión.
-
Adecuado para conexiones de larga duración: más adecuado para conexiones de larga duración para protocolos de enrutamiento como BGP y LDP y en instancias repetidas de una sola conexión.
¿Qué es TCP-AO?
TCP-AO proporciona un marco para:
-
Admite varios algoritmos más fuertes, como HMAC-SHA1 y AES-128 para crear una clave de tráfico interno y un resumen del mensaje.
-
Agregue una nueva clave configurada por el usuario para volver a generar claves de tráfico interno para una conexión establecida y un mecanismo para sincronizar el cambio de clave entre pares BGP o LDP.
En versiones anteriores, los dispositivos Junos solo admitían el método de autenticación TCP MD5 para sesiones BGP y LDP. El método MD5 sólo admite el algoritmo MD5, que es menos seguro que TCP-AO. Además, cambiar una clave MD5 normalmente interrumpe la sesión TCP, a diferencia de TCP-AO. TCP MD5 se define en RFC2385, Protección de sesiones BGP a través de la opción de firma TCP MD5. Para obtener más información acerca de TCP MD5, consulte TCP.
-
Aunque los dispositivos Junos admiten los métodos de autenticación TCP-AO y TCP MD5, no puede utilizar ambos al mismo tiempo para una conexión determinada.
-
TCP-AO admite el enrutamiento activo sin parar.
En el diagrama siguiente se explica la diferencia entre la autenticación TCP-AO y TCP MD5. El primer flujo muestra la configuración y el flujo de procesamiento para TCP-AO y el segundo flujo muestra la configuración y el flujo de procesamiento para TCP-MD5.

A continuación se muestra una explicación de los flujos de procesamiento que se muestran en la Figura 1:
-
TCP-AO: el usuario ha configurado dos claves en el llavero (clave 0 y clave 1) con todos los parámetros necesarios. El llavero admite dos algoritmos: HMAC SHA1 y AES-128 (obligatorio por RFC5925). TCP recupera la clave 0, que es la clave que está activa actualmente, como se muestra en la marca de tiempo en la figura. En el ejemplo, la clave 0 se configura con HMAC-SHA1.
SHA1 toma el "secreto" (de la configuración de la clave 0) y los parámetros específicos de conexión para el cifrado y genera una clave de tráfico interna.
SHA1 vuelve a cifrar la clave de tráfico interno y el segmento TCP para generar el resumen del mensaje. El resumen se copia en el campo MAC TCP-AO de la opción TCP-AO en el segmento TCP. A continuación, el segmento se envía al dispositivo receptor.
-
TCP-MD5: el usuario ha configurado una sola clave porque la opción TCP MD5 sólo admite una clave para una conexión. Además, solo admite el algoritmo MD5. El algoritmo MD5 toma el "secreto" de la clave y el segmento TCP para el cifrado y genera un resumen del mensaje. Este resumen del mensaje se copia al campo de síntesis MD5 en el segmento TCP y se envía al dispositivo receptor.
Configuración
Primero, configure un llavero. A continuación, aplique TCP-AO a la sesión BGP o LDP.
Para configurar un llavero para TCP-AO (con una clave), configure la instrucción siguiente en el nivel de [edit security]
jerarquía.
[edit security] user@router# set authentication-key-chains key-chain key-chain key id secret secretpassword start-time YYYY-MM-DD.HH:MM algorithm ao ao-attribute send-id send-id recv-id recv-id cryptographic-algorithm cryptographic-algorithm tcp-ao-option enabled
Para aplicar TCP-AO a una sesión BGP (con el llavero configurado), configure la instrucción siguiente en el nivel de [edit protocols]
jerarquía.
[edit protocols] user@router# set bgp group group neighbor neighbor authentication-algorithm ao user@router# set bgp group group neighbor neighbor authentication-key-chain key-chain
Para aplicar TCP-AO a una sesión LDP (con el llavero configurado), configure la instrucción siguiente en el nivel de [edit protocols]
jerarquía.
[edit protocols] user@router# set ldp session session authentication-algorithm ao user@router# set ldp session session authentication-key-chain key-chain
Ejemplo: configurar un llavero (TCP-AO)
RESUMEN En este ejemplo se muestra cómo crear un llavero TCP-AO para autenticar una sesión BGP o LDP.
En este ejemplo se utilizan los siguientes componentes de hardware y software:
Enrutadores serie MX o PTX.
Junos OS versión 20.3R1 o posterior.
En este ejemplo se muestra cómo crear un llavero TCP-AO para autenticar una sesión BGP o LDP.
En este ejemplo, puede crear un llavero new_auth_key
con dos llaves key 0
y en los dispositivos R1 y key 1
R2.
¡Has creado con éxito un llavero!
Para eliminar un llavero, utilice el delete security authentication-key-chains key-chain key-chain-name
comando del modo de configuración.
-
Sólo puede asociar un llavero TCP-AO con una sesión BGP o LDP durante su ciclo de vida. No puede apuntar otro llavero a la sesión en su vida.
-
Recomendamos un intervalo mínimo de 30 minutos entre la hora de inicio de dos llaves posteriores dentro de un llavero.
-
Una vez que un llavero está configurado y en uso por una conexión TCP, no puede cambiar los
send-id
valores orecv-id
de su clave activa. Sin embargo, puede cambiar los demás parámetros de la clave, y cualquier conexión nueva asociada con el llavero actualizado tomará los parámetros actualizados para su establecimiento de conexión. -
A partir de Junos OS versión 21.2R1, puede utilizar el para permitir el
tcpao-auth-mismatch allow-without-tcpao
establecimiento de la conexión sin TCP-AO si algún extremo TCP no tiene TCP-AO configurado en él.
Para mostrar información sobre llaveros existentes (si los hay) desde el modo operativo, utilice el show security keychain
comando. Aquí hay una salida de ejemplo:
user@R1> show security keychain
Keychain Active-ID Next-ID Transition Tolerance Send Receive Send Receive new_auth_key 1 1 None None None 3600 (secs)
Ejemplo: Usar TCP-AO para autenticar una sesión BGP
RESUMEN En este ejemplo se muestra cómo autenticar una sesión BGP mediante un llavero de opción de autenticación TCP (TCP-AO).
Requisitos
En este ejemplo se utilizan los siguientes componentes de hardware y software:
-
Enrutadores serie MX o PTX.
-
Junos OS versión 20.3R1 o posterior.
-
Configure un llavero
new_auth_key
. Consulte Configurar un llavero (TCP-AO).
Visión general
BGP utiliza TCP como protocolo de transporte. TCP-AO es un método que puede utilizar para autenticar sesiones BGP. Puede aplicar un llavero TCP-AO en el vecino BGP o en los niveles de grupo BGP de la jerarquía de configuración.
Topología

Configuración
En este ejemplo, asocia el llavero new_auth_key
de autenticación TCP-AO y el algoritmo ao
de autenticación en ambos dispositivos para autenticar una sesión BGP.
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 pegue los comandos en la CLI.
R1
[edit] set interfaces ge-0/0/1 description R1-to-R2-Link set interfaces ge-0/0/1 unit 0 family inet address 192.0.2.1/30 set interfaces lo0 unit 0 family inet address 192.168.0.11/32 set routing-options router-id 192.168.0.11 set routing-options autonomous-system 65500 set protocols bgp group ebgp_grp type external set protocols bgp group ebgp_grp peer-as 65501 set protocols bgp group ebgp_grp neighbor 192.0.2.2 set protocols bgp group ebgp_grp neighbor 192.0.2.2 authentication-key-chain new_auth_key set protocols bgp group ebgp_grp neighbor 192.0.2.2 authentication-algorithm ao
R2
[edit] set interfaces ge-0/0/1 description R2-to-R1-Link set interfaces ge-0/0/1 unit 0 family inet address 192.0.2.2/30 set interfaces lo0 unit 0 family inet address 192.168.0.12/32 set routing-options router-id 192.168.0.12 set routing-options autonomous-system 65501 set protocols bgp group ebgp_grp type external set protocols bgp group ebgp_grp peer-as 65500 set protocols bgp group ebgp_grp neighbor 192.0.2.1 set protocols bgp group ebgp_grp neighbor 192.0.2.1 authentication-key-chain new_auth_key set protocols bgp group ebgp_grp neighbor 192.0.2.1 authentication-algorithm ao
Procedimiento paso a paso
-
Ingrese al modo de configuración.
-
Configure opciones básicas como la dirección IP de la interfaz, la descripción de la interfaz, una dirección de circuito cerrado, el ID del enrutador y el número de AS en ambos dispositivos.
R1
[edit]
user@R1# set interfaces ge-0/0/1 description R1-to-R2-Link user@R1# set interfaces ge-0/0/1 unit 0 family inet address 192.0.2.1/30 user@R1# set interfaces lo0 unit 0 family inet address 192.168.0.11/32 user@R1# set routing-options router-id 192.168.0.11 user@R1# set routing-options autonomous-system 65500R2
[edit]
user@R2# set interfaces ge-0/0/1 description R2-to-R1-Link user@R2# set interfaces ge-0/0/1 unit 0 family inet address 192.0.2.2/30 user@R2# set interfaces lo0 unit 0 family inet address 192.168.0.12/32 user@R2# set routing-options router-id 192.168.0.12 user@R2# set routing-options autonomous-system 65501 -
Configure un EBGP entre R1 y R2.
R1
[edit]
user@R1# set protocols bgp group ebgp_grp type external user@R1# set protocols bgp group ebgp_grp peer-as 65501 user@R1# set protocols bgp group ebgp_grp neighbor 192.0.2.2R2
[edit]
user@R2# set protocols bgp group ebgp_grp type external user@R2# set protocols bgp group ebgp_grp peer-as 65500 user@R2# set protocols bgp group ebgp_grp neighbor 192.0.2.1 -
Asocie el llavero
new_auth_key
de autenticación y el algoritmoao
de autenticación a la sesión BGP en ambos dispositivos.R1
[edit]
user@R1# set protocols bgp group ebgp_grp neighbor 192.0.2.2 authentication-key-chain new_auth_key user@R1# set protocols bgp group ebgp_grp neighbor 192.0.2.2 authentication-algorithm aoR2
[edit]
user@R2# set protocols bgp group ebgp_grp neighbor 192.0.2.1 authentication-key-chain new_auth_key user@R2# set protocols bgp group ebgp_grp neighbor 192.0.2.1 authentication-algorithm ao -
Ingrese
commit
desde el modo de configuración en ambos dispositivos.Una vez confirmadas las instrucciones de configuración en ambos dispositivos, la sesión BGP debe establecerse mediante el método de autenticación TCP-AO.
Resultados
Confirme las configuraciones mediante los comandos , show routing-options
y show protocols
del show interfaces
modo de configuración.
user@R1# show interfaces
ge-0/0/1 { description R1-to-R2-Link; unit 0 { family inet { address 192.0.2.1/30; } } } lo0 { unit 0 { family inet { address 192.168.0.11/32; } } }
user@R1# show routing-options
autonomous-system 65500;
user@R1# show protocols
bgp { group ebgp_grp { type external; peer-as 65500; neighbor 192.0.2.1 { authentication-algorithm ao; authentication-key-chain new_auth_key; { { {
bgp { group ebgp_grp { type external; peer-as 65551; neighbor 192.0.2.2 { authentication-algorithm ao; authentication-key-chain new_auth_key; } } }
Verificación
Verificar el establecimiento de la sesión BGP
Propósito
Confirme la salida del establecimiento de la sesión BGP después de habilitar TCP-AO.
Acción
Vea un resumen de BGP del estado de sesión de BGP con el comando de show bgp summary
modo operativo.
user@R1> show bgp summary Threading mode: BGP I/O Default eBGP mode: advertise - accept, receive - accept Groups: 1 Peers: 1 Down peers: 0 Table Tot Paths Act Paths Suppressed History Damp State Pending inet.0 0 0 0 0 0 0 Peer AS InPkt OutPkt OutQ Flaps Last Up/Dwn State|#Active/Received/Accepted/Damped... 192.0.2.2 65501 6 4 0 0 1:19 Establ inet.0: 0/0/0/0
Significado
Los valores de salida resaltados indican que BGP ha establecido correctamente una sesión con el método de autenticación TCP-AO hace 1:19 minutos.
Comprobar que la sesión BGP está utilizando TCP-AO
Propósito
Compruebe que un vecino BGP esté autenticado con el llavero TCP-AO.
Acción
Utilice el comando para ver los detalles de show bgp neighbor neighbor
configuración de los pares BGP. Para filtrar solo los detalles específicos de autenticación en la salida, utilice la función de barra vertical (|) y haga coincidir en authentication
, como se muestra:
user@R1> show bgp neighbor 192.0.2.2 | match authentication Authentication key chain: new_auth_key Authentication algorithm: ao
Significado
El resultado indica que el llavero new_auth_key
de autenticación y el algoritmo ao
de autenticación se aplican al vecino 192.0.2.2
BGP.
Ejemplo: Usar TCP-AO para autenticar una sesión LDP
RESUMEN En este ejemplo se muestra cómo autenticar una sesión LDP mediante un llavero de opción de autenticación TCP (TCP-AO).
Requisitos
En este ejemplo se utilizan los siguientes componentes de hardware y software:
-
Enrutadores serie MX o PTX.
-
Junos OS versión 20.3R1 o posterior.
-
Configure un llavero
new_auth_key
. Consulte Configurar un llavero (TCP-AO).
Visión general
El protocolo de distribución de etiquetas (LDP) es un protocolo de señalización MPLS. Permite a los enrutadores establecer rutas de conmutación de etiquetas (LSP) a través de una red. TCP-AO ayuda a mejorar la seguridad de las sesiones creadas entre pares de LDP.

Configuración
En este ejemplo, asocia el llavero new_auth_key
de autenticación TCP-AO y el algoritmo ao
de autenticación a ambos dispositivos para autenticar su sesión LDP.
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 pegue los comandos en la CLI.
R1
[edit]
set interfaces ge-0/0/1 description R1-to-R2-Link
set interfaces ge-0/0/1 unit 0 family inet address 192.0.2.1/30
set interfaces ge-0/0/1 unit 0 family mpls
set interfaces lo0 unit 0 family inet address 192.168.0.11/32
set routing-options router-id 192.168.0.11
set protocols ldp interface ge-0/0/1.0
set protocols ldp interface lo0.0
set protocols ldp session 192.168.0.12 authentication-algorithm ao
set protocols ldp session 192.168.0.12 authentication-key-chain new_auth_key
set protocols ospf area 0.0.0.0 interface ge-0/0/1.0
set protocols ospf area 0.0.0.0 interface lo0.0
R2
[edit]
set interfaces ge-0/0/1 description R2-to-R1-Link
set interfaces ge-0/0/1 unit 0 family inet address 192.0.2.2/30
set interfaces ge-0/0/1 unit 0 family mpls
set interfaces lo0 unit 0 family inet address 192.168.0.12/32
set routing-options router-id 192.168.0.12
set protocols ldp interface ge-0/0/1.0
set protocols ldp interface lo0.0
set protocols ldp session 192.168.0.11 authentication-algorithm ao
set protocols ldp session 192.168.0.11 authentication-key-chain new_auth_key
set protocols ospf area 0.0.0.0 interface ge-0/0/1.0
set protocols ospf area 0.0.0.0 interface lo0.0
Procedimiento paso a paso
-
Ingrese al modo de configuración.
-
Configure la configuración básica, como la interfaz del dispositivo, el circuito cerrado, la descripción de la interfaz, el ID del enrutador y el número de AS en R1 y R2.
R1
[edit]
user@R1# set interfaces ge-0/0/1 description R1-to-R2-Link user@R1# set interfaces ge-0/0/1 unit 0 family inet address 192.0.2.1/30 user@R1# set interfaces lo0 unit 0 family inet address 192.168.0.11/32 user@R1# set routing-options router-id 192.168.0.11R2
[edit]
user@R2# set interfaces ge-0/0/1 description R2-to-R1-Link user@R2# set interfaces ge-0/0/1 unit 0 family inet address 192.0.2.2/30 user@R2# set interfaces lo0 unit 0 family inet address 192.168.0.12/32 user@R2# set routing-options router-id 192.168.0.12 -
Configure MPLS y LDP en ambos dispositivos.
R1
[edit]
user@R1# set interfaces ge-0/0/1 unit 0 family mpls user@R1# set protocols ldp interface ge-0/0/1.0 user@R1# set protocols ldp interface lo0.0R2
[edit]
user@R2# set interfaces ge-0/0/1 unit 0 family mpls user@R2# set protocols ldp interface ge-0/0/1.0 user@R2# set protocols ldp interface lo0.0 -
Configure un protocolo de puerta de enlace interior (IGP) para anunciar la accesibilidad de direcciones de circuito cerrado. En este ejemplo, configuramos OSPF.
R1
[edit protocols]
user@R1# set ospf area 0.0.0.0 interface ge-0/0/1.0 user@R1# set ospf area 0.0.0.0 interface lo0.0 passiveR2
[edit protocols]
user@R2# set ospf area 0.0.0.0 interface ge-0/0/1.0 user@R2# set ospf area 0.0.0.0 interface lo0.0 passive -
Asocie
authentication-key-chain new_auth_key
y con el ID de espacio de etiqueta de R1 yauthentication-algorithm ao
R2.R1
[edit protocols]
user@R1# set ldp session 192.168.0.12 authentication-algorithm ao user@R1# set ldp session 192.168.0.12 authentication-key-chain new_auth_keyR2
[edit protocols]
user@R2# set ldp session 192.168.0.11 authentication-algorithm ao user@R2# set ldp session 192.168.0.11 authentication-key-chain new_auth_key -
Ingrese
commit
desde el modo de configuración en ambos dispositivos.
Resultados
Confirme la configuración mediante los show interfaces
comandos y y show protocols
show routing-options
.
user@R1# show interfaces
ge-0/0/1 { description R1-to-R2-Link; unit 0 { family inet { address 192.0.2.1/30; } } } lo0 { unit 0 { family inet { address 192.168.0.11/32; } } }
user@R1# show routing-options
router-id 192.168.0.11;
user@R1# show protocols
ldp { interface ge-0/0/1.0; interface lo0.0 passive; authentication-algorithm ao; authentication-key-chain new_auth_key; { { ospf { area 0.0.0.0 { interface ge-0/0/1.0; interface lo0.0; { {
Verificación
Verificar sesión de LDP
Propósito
Compruebe el establecimiento de la sesión LDP con TCP-AO.
Acción
Utilice el comando del show ldp session detail
modo operativo para comprobar que la sesión LDP se ha establecido correctamente.
user@R1> show ldp session detail Address: 192.168.0.12, State: Operational, Connection: Open, Hold time: 22 Session ID: 192.168.0.11:0--192.168.0.12:0 Next keepalive in 2 seconds Passive, Maximum PDU: 4096, Hold time: 30, Neighbor count: 1 Neighbor types: discovered Keepalive interval: 10, Connect retry interval: 1 Local address: 192.168.0.11, Remote address: 192.168.0.12 Up for 01:11:59 Last down 01:13:12 ago; Reason: authentication key was changed Number of session flaps: 2 Capabilities advertised: none Capabilities received: none Protection: disabled Session flags: none Authentication type: new_auth_key(ao key-chain, 192.168.0.12/32) Local - Restart: disabled, Helper mode: enabled Remote - Restart: disabled, Helper mode: enabled Local maximum neighbor reconnect time: 120000 msec Local maximum neighbor recovery time: 240000 msec Local Label Advertisement mode: Downstream unsolicited Remote Label Advertisement mode: Downstream unsolicited Negotiated Label Advertisement mode: Downstream unsolicited MTU discovery: disabled Nonstop routing state: Not in sync Next-hop addresses received: 192.0.2.2 192.168.0.12 128.49.110.110
Significado
El resultado indica que se ha establecido la sesión LDP.
Ejemplo: Usar TCP-AO para autenticar sesiones de validación RPKI
Visión general
La infraestructura de clave pública de recursos (RPKI) es un marco de infraestructura de clave pública diseñado para proteger la infraestructura de enrutamiento de Internet, específicamente el BGP. RPKI proporciona una manera de conectar la información de recursos de números de Internet, como direcciones IP, a un ancla de confianza. Mediante el uso de RPKI, los titulares legítimos de recursos numéricos pueden controlar el funcionamiento de los protocolos de enrutamiento de Internet para evitar el secuestro de rutas y otros ataques.
A partir de Junos OS versión 22.2R1, puede autenticar sesiones RPKI mediante la opción de autenticación TCP (TCP-AO) y el llavero.
En este ejemplo se muestra cómo autenticar una sesión de validación RPKI mediante un llavero TCP-AO. Estableceremos una sesión RPKI autenticada entre un dispositivo cliente (R1) y un servidor (R2).
Requisitos
En este ejemplo se utilizan los siguientes componentes de hardware y software:
- 2 enrutadores serie MX
- Junos OS versión 22.2R1 o posterior.
Topología

Configuración
En este ejemplo, debe asociar el llavero new_auth_key
de autenticación TCP-AO y el algoritmo ao
de autenticación en ambos dispositivos para autenticar una conexión RPKI.
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 pegue los comandos en la CLI.
R1
[edit] set system host-name R1 set interfaces ge-0/0/0 description R1-to-R2-Link set interfaces ge-0/0/0 unit 0 family inet address 192.168.12.1/24 set interfaces lo0 unit 0 family inet address 172.16.255.1/32 set routing-options router-id 172.16.255.1 set routing-options autonomous-system 65500 set security authentication-key-chains key-chain new_auth_key key 0 secret "$ABC123" set security authentication-key-chains key-chain new_auth_key key 0 start-time "2022-5-18.04:00:00 -0700" set security authentication-key-chains key-chain new_auth_key key 0 algorithm ao set security authentication-key-chains key-chain new_auth_key key 0 ao-attribute send-id 3 set security authentication-key-chains key-chain new_auth_key key 0 ao-attribute recv-id 8 set security authentication-key-chains key-chain new_auth_key key 1 secret "$ABC123" set security authentication-key-chains key-chain new_auth_key key 1 start-time "2022-6-18.04:00:00 -0700" set security authentication-key-chains key-chain new_auth_key key 1 algorithm ao set security authentication-key-chains key-chain new_auth_key key 1 ao-attribute send-id 1 set security authentication-key-chains key-chain new_auth_key key 1 ao-attribute recv-id 2 set routing-options validation group to_servers session 192.168.12.2 port 8282 set routing-options validation group to_servers session 192.168.12.2 authentication-algorithm ao set routing-options validation group to_servers session 192.168.12.2 authentication-key-chain new_auth_key
R2
[edit] set system host-name R2 set logical-systems rv_server_1 interfaces ge-0/0/0 unit 0 family inet address 192.168.12.2/24 set interfaces lo0 unit 0 family inet address 172.16.255.2/32 set routing-options router-id 172.16.255.2 set routing-options autonomous-system 65501 set logical-systems rv_server_1 routing-options validation local-cache listen-port 8282 set logical-systems rv_server_1 routing-options validation group to_dut session 192.168.12.1 local-cache set logical-systems rv_server_1 routing-options validation group to_dut session 192.168.12.1 local-address 192.168.12.2 set security authentication-key-chains key-chain new_auth_key key 0 secret "$ABC123" set security authentication-key-chains key-chain new_auth_key key 0 start-time "2022-5-18.04:00:00 -0700" set security authentication-key-chains key-chain new_auth_key key 0 algorithm ao set security authentication-key-chains key-chain new_auth_key key 0 ao-attribute send-id 8 set security authentication-key-chains key-chain new_auth_key key 0 ao-attribute recv-id 3 set security authentication-key-chains key-chain new_auth_key key 1 secret "$ABC123" set security authentication-key-chains key-chain new_auth_key key 1 start-time "2022-6-18.04:00:00 -0700" set security authentication-key-chains key-chain new_auth_key key 1 algorithm ao set security authentication-key-chains key-chain new_auth_key key 1 ao-attribute send-id 2 set security authentication-key-chains key-chain new_auth_key key 1 ao-attribute recv-id 1 set logical-systems rv_server_1 routing-options validation group to_dut session 192.168.12.1 authentication-algorithm ao set logical-systems rv_server_1 routing-options validation group to_dut session 192.168.12.1 authentication-key-chain new_auth_key
Procedimiento paso a paso
-
Configure opciones básicas como interfaces, una dirección de circuito cerrado, ID de enrutador y número de AS en ambos dispositivos. En R2, configuramos la interfaz de sistemas lógicos para el servidor.
R1
[edit] user@R1# set system host-name R1 user@R1# set interfaces ge-0/0/0 description R1-to-R2-Link user@R1# set interfaces ge-0/0/0 unit 0 family inet address 192.168.12.1/24 user@R1# set interfaces lo0 unit 0 family inet address 172.16.255.1/32 user@R1# set routing-options router-id 172.16.255.1 user@R1# set routing-options autonomous-system 65500
R2
[edit] user@R2# set system host-name R2 user@R2# set logical-systems rv_server_1 interfaces ge-0/0/0 unit 0 family inet address 192.168.12.2/24 user@R2# set interfaces lo0 unit 0 family inet address 172.16.255.2/32 user@R2# set routing-options router-id 172.16.255.2 user@R2# set routing-options autonomous-system 65501
-
Configure una sesión TCP en el dispositivo cliente (R1) con el servidor RPKI (R2) con un número de puerto TCP alternativo.
R1
[edit] user@R1# set routing-options validation group to_servers session 192.168.12.2 port 8282
-
En el servidor R2, configure una sesión de RPKI con el cliente R1 para la validación de origen.
[edit] user@R2# set logical-systems rv_server_1 routing-options validation group to_dut session 192.168.12.1 local-cache user@R2# set logical-systems rv_server_1 routing-options validation group to_dut session 192.168.12.1 local-address 192.168.12.2
-
Cree un llavero
new_auth_key
con la primera llave (clave 0):R1
[edit security] user@R1# set authentication-key-chains key-chain new_auth_key key 0 secret secretpassword start-time 2022-5-18.04:00 algorithm ao ao-attribute send-id 3 recv-id 8
R2 (con los valores send-id y recv-id invertidos)
[edit security] user@R2# set authentication-key-chains key-chain new_auth_key key 0 secret secretpassword start-time 2022-5-18.04:00 algorithm ao ao-attribute send-id 8 recv-id 3
-
Para agregar otra clave (clave 1), después de crear la clave 0:
R1
[edit security authentication-key-chains key-chain new_auth_key] user@R1# set key 1 secret secretpassword start-time 2022-6-18.04:00 algorithm ao ao-attribute send-id 1 recv-id 2
R2 (con los valores send-id y recv-id invertidos)
[edit security authentication-key-chains key-chain new_auth_key] user@R2# set key 1 secret secretpassword start-time 2022-6-18.04:00 algorithm ao ao-attribute send-id 2 recv-id 1
-
Aplique el llavero
new_auth_key
configurado y el algoritmoao
de autenticación tanto en R1 como en R2.R1
[edit] user@R1# set routing-options validation group to_servers session 192.168.12.2 authentication-algorithm ao user@R1# set routing-options validation group to_servers session 192.168.12.2 authentication-key-chain new_auth_key
R2
[edit] user@R2# set logical-systems rv_server_1 routing-options validation group to_dut session 192.168.12.1 authentication-algorithm ao user@R2# set logical-systems rv_server_1 routing-options validation group to_dut session 192.168.12.1 authentication-key-chain new_auth_key
-
Ingrese
commit
desde el modo de configuración en ambos dispositivos para activar los cambios. -
Para verificar el llavero
new_auth_key
con las dos claves configuradas, utilice el comando desde elshow security authentication-key-chains
modo de configuración.
Resultados
Compruebe los resultados de la configuración del llavero en R1:
user@R1# show security authentication-key-chains
key-chain new_auth_key { key 0 { secret "$ABC123"; ## SECRET-DATA start-time "2022-5-18.04:00:00 -0700"; algorithm ao; ao-attribute { send-id 3; recv-id 8; } } key 1 { secret "$ABC123"; ## SECRET-DATA start-time "2022-6-18.04:00:00 -0700"; algorithm ao; ao-attribute { send-id 1; recv-id 2; } } }
Confirme las configuraciones restantes aplicadas en R1 mediante los siguientes comandos:
user@R1# show interfaces
ge-0/0/0 { description R1-to-R2-Link; unit 0 { family inet { address 192.168.12.1/24; } } } lo0 { unit 0 { family inet { address 172.16.255.1/32; } } }
user@R1# show routing-options
router-id 172.16.255.1; autonomous-system 65500; validation { group to_servers { session 192.168.12.2 { authentication-algorithm ao; authentication-key-chain new_auth_key; port 8282; } } }
Verificación
Propósito
Verifique que la sesión se haya establecido con el llavero TCP-AO y el algoritmo configurados en ambos pares.
Acción
Ver una sesión validada mediante el comando del show validation session 192.168.12.2 detail
modo operativo.
user@R1> show validation session 192.168.12.2 detail Session 192.168.12.2, State: up, Session index: 2 Group: to_servers, Preference: 100 Port: 8282 Refresh time: 300s Hold time: 600s Record Life time: 3600s Serial (Full Update): 6 Serial (Incremental Update): 6 Authentication key-chain: new_auth_key Session flaps: 1 Session uptime: 2d 01:40:05 Last PDU received: 00:04:59 IPv4 prefix count: 0 IPv6 prefix count: 0
Significado
El resultado indica que la sesión ha terminado con el llavero new_auth_key
configurado.