Opção de autenticação de TCP (TCP-AO)
RESUMO Saiba mais sobre a Opção de Autenticação de TCP (TCP-AO) para sessões de BGP e LDP.
TCP-AO para sessões BGP e LDP
Os protocolos BGP e LDP usam TCP para transporte. O TCP-AO é um novo método de autenticação proposto por meio do RFC5925, A Opção de Autenticação de TCP para melhorar a segurança e a autenticidade dos segmentos de TCP trocados durante as sessões BGP e LDP. Ele também oferece suporte ao tráfego IPv4 e IPv6.
Benefícios do TCP-AO
O TCP-AO fornece os seguintes benefícios sobre o TCP MD5:
-
Algoritmos mais fortes — oferece suporte a vários algoritmos de autenticação mais fortes, como HMAC-SHA-1-96 e AES-128-CMAC-96 (exigido pelo RFC5925, The TCP Authentication Option). HMAC-SHA-1-96 é um MAC baseado em hash e o AES-128-CMAC-96 é um MAC baseado em cifras, tornando a mensagem mais complexa e segura do que a digestão criada usando o algoritmo MD5.
-
Segurança two-Fold — No método TCP-AO, o algoritmo de autenticação configurado é usado em dois estágios: Uma vez para gerar uma chave de tráfego interna a partir de uma chave configurada pelo usuário e, em seguida, gerar uma digestão de mensagem usando a chave de tráfego gerada, enquanto no método TCP MD5, o algoritmo MD5 gera uma digestão de mensagem usando sua chave configurada pelo usuário.
-
Melhor gerenciamento e agilidade de chave — você pode configurar até 64 chaves para uma sessão e adicioná-las a qualquer momento durante a vida útil de uma sessão. Ele fornece um mecanismo de coordenação chave simples, dando a capacidade de alterar chaves (passar de uma chave para outra) dentro da mesma conexão sem causar nenhum fechamento de conexão TCP. Mudar as chaves TCP MD5 durante uma conexão estabelecida pode causar uma aba ou reiniciar a conexão.
-
Adequado para conexões de longa duração — mais adequado para conexões de longa duração para protocolos de roteamento, como BGP e LDP, e em instâncias repetidas de uma única conexão.
O que é TCP-AO?
O TCP-AO fornece uma estrutura para:
-
Suporte a vários algoritmos mais fortes, como HMAC-SHA1 e AES-128 para criar uma chave de tráfego interna e digestão de mensagens.
-
Adicione uma nova chave configurada pelo usuário para re-gerar chaves de tráfego internas para uma conexão estabelecida e um mecanismo para sincronizar a mudança chave entre os pares BGP ou LDP.
Em versões anteriores, os dispositivos Junos só suportavam o método de autenticação TCP MD5 para sessões BGP e LDP. O método MD5 oferece suporte apenas ao algoritmo MD5, que é menos seguro que o TCP-AO. Além disso, mudar uma chave MD5 normalmente interrompe a sessão de TCP, ao contrário do TCP-AO. O TCP MD5 é definido em RFC2385, Proteção de Sessões BGP por meio da Opção de Assinatura TCP MD5. Para obter mais informações sobre o TCP MD5, consulte o TCP.
-
Embora os dispositivos Junos ofereçam suporte aos métodos de autenticação TCP-AO e TCP MD5, você não pode usar ambos ao mesmo tempo para uma determinada conexão.
-
O TCP-AO oferece suporte ao roteamento ativo sem parar.
O diagrama a seguir explica a diferença entre a autenticação TCP-AO e TCP MD5. O primeiro fluxo mostra o fluxo de configuração e processamento para TCP-AO e o segundo fluxo mostra o fluxo de configuração e processamento para TCP-MD5.

Abaixo está uma explicação dos fluxos de processamento mostrados na Figura 1:
-
TCP-AO — O usuário configurou duas chaves no chaveiro (chave 0 e chave 1) com todos os parâmetros necessários. O chaveiro oferece suporte a dois algoritmos: HMAC SHA1 e AES-128 (obrigatório por RFC5925). O TCP busca a chave 0, que é a chave que está ativa no momento, conforme mostrado pelo tempotamp na figura. No exemplo, a chave 0 está configurada com HMAC-SHA1.
O SHA1 tira o "segredo" (da configuração da chave 0) e parâmetros específicos de conexão para criptografia e gera uma chave de tráfego interna.
O SHA1 criptografa novamente a chave de tráfego interno e o segmento TCP para gerar a digestão da mensagem. A digestão é copiada para o campo TCP-AO MAC da opção TCP-AO no segmento TCP. O segmento é então enviado para o dispositivo receptor.
-
TCP-MD5 — O usuário configurou uma única chave porque a opção TCP MD5 oferece suporte a apenas uma chave para uma conexão. Além disso, ele só oferece suporte ao algoritmo MD5. O algoritmo MD5 tira o "segredo" da chave e do segmento TCP para criptografia e gera uma digestão de mensagens. Esse digestão de mensagens é copiado para o campo de digestão MD5 no segmento TCP e é enviado para o dispositivo receptor.
Configuração
Primeiro, configure um chaveiro. Em seguida, aplique o TCP-AO na sessão BGP ou LDP.
Para configurar um chaveiro para TCP-AO (com uma chave), configure a seguinte declaração no nível de [edit security]
hierarquia.
[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 o TCP-AO a uma sessão BGP (com o chaveiro configurado), configure a seguinte declaração no nível de [edit protocols]
hierarquia.
[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 o TCP-AO a uma sessão de LDP (com o chaveiro configurado), configure a seguinte declaração no nível de [edit protocols]
hierarquia.
[edit protocols] user@router# set ldp session session authentication-algorithm ao user@router# set ldp session session authentication-key-chain key-chain
Exemplo: configure um chaveiro (TCP-AO)
RESUMO Este exemplo mostra como criar um chaveiro TCP-AO para autenticar uma sessão BGP ou LDP.
Este exemplo usa os seguintes componentes de hardware e software:
Roteadores da Série MX ou da Série PTX.
Junos OS Versão 20.3R1 ou posterior.
Este exemplo mostra como criar um chaveiro TCP-AO para autenticar uma sessão BGP ou LDP.
Neste exemplo, você pode criar um chaveiro new_auth_key
com duas chaves key 0
e key 1
nos dispositivos R1 e R2.
Você criou com sucesso um chaveiro!
Para excluir um chaveiro, use o comando do delete security authentication-key-chains key-chain key-chain-name
modo de configuração.
-
Você pode associar apenas um chaveiro TCP-AO a uma sessão BGP ou LDP durante sua vida útil. Você não pode apontar outro chaveiro para a sessão em seu tempo de vida.
-
Recomendamos um intervalo mínimo de 30 minutos entre o início de qualquer duas chaves subseqüentes dentro de um chaveiro.
-
Uma vez configurado um chaveiro e usado por uma conexão TCP, você não pode alterar os valores ou
recv-id
valoressend-id
de sua chave ativa. No entanto, você pode alterar os outros parâmetros na chave, e qualquer nova conexão associada ao chaveiro atualizado levará os parâmetros atualizados para o seu estabelecimento de conexão. -
A partir do Junos OS Release 21.2R1, você pode usar o
tcpao-auth-mismatch allow-without-tcpao
para permitir o estabelecimento de conexão sem TCP-AO se algum endpoint TCP não tiver TCP-AO configurado nele.
Para exibir informações sobre chaveiros existentes (se houver) do modo operacional, use o show security keychain
comando. Aqui está a saída da amostra:
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)
Exemplo: use o TCP-AO para autenticar uma sessão BGP
RESUMO Este exemplo mostra como autenticar uma sessão BGP usando um chaveiro TCP Authentication Option (TCP-AO).
Requisitos
Este exemplo usa os seguintes componentes de hardware e software:
-
Roteadores da Série MX ou da Série PTX.
-
Junos OS Versão 20.3R1 ou posterior.
-
Configure um chaveiro
new_auth_key
. Consulte Configurar um chaveiro (TCP-AO).
Visão geral
O BGP usa o TCP como protocolo de transporte. O TCP-AO é um método que você pode usar para autenticar sessões BGP. Você pode aplicar um chaveiro TCP-AO no vizinho BGP ou nos níveis de grupo BGP da hierarquia de configuração.
Topologia

Configuração
Neste exemplo, você associa o algoritmo new_auth_key
ao
de autenticação e autenticação TCP-AO em ambos os dispositivos para autenticar uma sessão BGP.
Configuração rápida da CLI
Para configurar rapidamente este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere todos os detalhes necessários para combinar com a configuração de sua rede e, em seguida, copie e cole os comandos na 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
Procedimento passo a passo
-
Insira o modo de configuração.
-
Configure configurações básicas, como o endereço IP da interface, a descrição da interface, um endereço de loopback, iD de roteador, número AS em ambos os 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 um EBGP entre R1 e 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 -
Associe o chaveiro de
new_auth_key
autenticação e o algoritmoao
de autenticação à sessão BGP em ambos os 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 -
Entre no
commit
modo de configuração em ambos os dispositivos.Depois de confirmar as declarações de configuração em ambos os dispositivos, a sessão BGP deve estabelecer usando o método de autenticação TCP-AO.
Resultados
Confirme suas configurações usando o show interfaces
, show routing-options
e show protocols
os comandos do modo de configuração.
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; } } }
Verificação
Verifique o BGP Session Establishment
Propósito
Confirme a saída do estabelecimento de sessão BGP após habilitar o TCP-AO.
Ação
Veja um resumo BGP do estado de sessão BGP com o comando do show bgp summary
modo operacional.
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
Os valores de saída destacados indicam que o BGP estabeleceu com sucesso uma sessão com o método de autenticação TCP-AO há 1:19 minutos.
Verifique se a sessão BGP está usando o TCP-AO
Propósito
Verifique se um vizinho BGP é autenticado com o chaveiro TCP-AO.
Ação
Use o show bgp neighbor neighbor
comando para visualizar os detalhes da configuração para os colegas BGP. Para filtrar apenas detalhes específicos de autenticação na saída, use a função pipe (|) e combine authentication
, como mostrado:
user@R1> show bgp neighbor 192.0.2.2 | match authentication Authentication key chain: new_auth_key Authentication algorithm: ao
Significado
A saída indica que o algoritmo ao
de autenticação e autenticação new_auth_key
é aplicado ao vizinho 192.0.2.2
BGP.
Exemplo: use o TCP-AO para autenticar uma sessão de LDP
RESUMO Este exemplo mostra como autenticar uma sessão de LDP usando um chaveiro TCP Authentication Option (TCP-AO).
Requisitos
Este exemplo usa os seguintes componentes de hardware e software:
-
Roteadores da Série MX ou da Série PTX.
-
Junos OS Versão 20.3R1 ou posterior.
-
Configure um chaveiro
new_auth_key
. Consulte Configurar um chaveiro (TCP-AO).
Visão geral
O protocolo de distribuição de rótulos (LDP) é um protocolo de sinalização MPLS. Ele permite que os roteadores estabeleçam caminhos comutados por rótulos (LSPs) por meio de uma rede. O TCP-AO ajuda a melhorar a segurança das sessões criadas entre os pares de LDP.

Configuração
Neste exemplo, você associa o algoritmo new_auth_key
ao
de autenticação e autenticação TCP-AO a ambos os dispositivos para autenticar sua sessão de LDP.
Configuração rápida da CLI
Para configurar rapidamente este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere todos os detalhes necessários para combinar com a configuração de sua rede e, em seguida, copie e cole os comandos na 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
Procedimento passo a passo
-
Insira o modo de configuração.
-
Configure a configuração básica, como interface de dispositivo, loopback, descrição da interface, ID do roteador, número AS em R1 e 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 e LDP em ambos os 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 um protocolo de gateway interior (IGP) para anunciar a acessibilidade do endereço de loopback. Neste exemplo, configuramos o 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 -
Associado
authentication-key-chain new_auth_key
eauthentication-algorithm ao
com o ID de espaço de rótulo de R1 e 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 -
Entre no
commit
modo de configuração em ambos os dispositivos.
Resultados
Confirme sua configuração usando os comandos show routing-options
e show protocols
os show interfaces
comandos.
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; { {
Verificação
Verificar a sessão de LDP
Propósito
Verifique o estabelecimento de sessão de LDP com o TCP-AO.
Ação
Use o comando de show ldp session detail
modo operacional para verificar se a sessão de LDP está corretamente estabelecida.
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
A saída indica que a sessão de LDP está estabelecida.
Exemplo: use o TCP-AO para autenticar sessões de validação de RPKI
Visão geral
A infraestrutura de chave pública de recursos (RPKI) é uma estrutura de infraestrutura de chave pública projetada para proteger a infraestrutura de roteamento da Internet, especificamente o BGP. A RPKI fornece uma maneira de conectar informações de recursos de número de Internet, como endereços IP, a uma âncora de confiança. Ao usar o RPKI, os titulares legítimos de recursos numéricas são capazes de controlar a operação de protocolos de roteamento da Internet para evitar o sequestro de rotas e outros ataques.
A partir do Junos OS Release 22.2R1, você pode autenticar sessões de RPKI usando TCP Authentication Option (TCP-AO) e chaveiro.
Este exemplo mostra como autenticar uma sessão de validação RPKI usando um chaveiro TCP-AO. Estabeleceremos uma sessão RPKI autenticada entre um dispositivo cliente (R1) e um servidor (R2).
Requisitos
Este exemplo usa os seguintes componentes de hardware e software:
- 2 roteadores da Série MX
- Versão 22.2R1 do Junos OS ou posterior.
Topologia

Configuração
Neste exemplo, você deve associar o algoritmo ao
de autenticação e autenticação new_auth_key
TCP-AO em ambos os dispositivos para autenticar uma conexão RPKI.
Configuração rápida da CLI
Para configurar rapidamente este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere todos os detalhes necessários para combinar com a configuração de sua rede e, em seguida, copie e cole os comandos na 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
Procedimento passo a passo
-
Configure configurações básicas, como interfaces, um endereço de loopback, iD de roteador e número de AS em ambos os dispositivos. No R2, configuramos a interface de sistemas lógicos para o 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 uma sessão de TCP no dispositivo cliente (R1) com o servidor RPKI (R2) com um número de porta TCP alternativo.
R1
[edit] user@R1# set routing-options validation group to_servers session 192.168.12.2 port 8282
-
No servidor R2, configure uma sessão RPKI com o cliente R1 para validação de origem.
[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
-
Crie um chaveiro
new_auth_key
com a primeira chave, (chave 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 (com valores de send-id e rev-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 adicionar outra chave (chave 1), depois de criar a chave 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 (com valores de send-id e rev-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 o algoritmo
ao
de chaveamentonew_auth_key
e autenticação configurado em R1 e 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
-
Entre no
commit
modo de configuração em ambos os dispositivos para ativar suas mudanças. -
Para verificar o chaveiro
new_auth_key
com as duas chaves configuradas, use o comando doshow security authentication-key-chains
modo de configuração.
Resultados
Confira os resultados da configuração do chaveiro no 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 as configurações restantes aplicadas em R1 usando os seguintes 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; } } }
Verificação
Propósito
Verifique se a sessão está estabelecida com chaveiro e algoritmo TCP-AO configurados em ambos os pares.
Ação
Veja uma sessão validada usando o comando do show validation session 192.168.12.2 detail
modo operacional.
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
A saída indica que a sessão está ativada com o chaveiro new_auth_key
configurado.