Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

TCP 인증 옵션(TCP-AO)

요약 BGP 및 LDP 세션에 대한 TCP-AO(TCP 인증 옵션)에 대해 알아보십시오.

BGP 및 LDP 세션을 위한 TCP-AO

BGP 및 LDP 프로토콜은 전송에 TCP를 사용합니다. TCP-AO는 BGP 및 LDP 세션 중에 교환되는 TCP 세그먼트의 보안 및 신뢰성을 향상시키기 위해 RFC5925, TCP 인증 옵션을 통해 제안된 새로운 인증 방법입니다. 또한 IPv4 및 IPv6 트래픽도 지원합니다.

TCP-AO의 이점

TCP-AO는 TCP MD5에 대해 다음과 같은 이점을 제공합니다.

  • 더 강력한 알고리즘 - HMAC-SHA-1-96 및 AES-128-CMAC-96( RFC5925, TCP 인증 옵션에서 위임)과 같은 여러 개의 강력한 인증 알고리즘을 지원합니다. HMAC-SHA-1-96은 해시 기반 MAC이며 AES-128-CMAC-96은 암호 기반 MAC이므로 MD5 알고리즘을 사용하여 생성된 다이제스트보다 메시지 다이제스트가 더 복잡하고 안전합니다.

  • 두 가지 보안 — TCP-AO 방법에서 구성된 인증 알고리즘은 두 단계로 사용됩니다. 일단 사용자 구성 키에서 내부 트래픽 키를 생성한 다음 생성된 트래픽 키를 사용하여 메시지 다이제스트를 생성하기 위해, TCP MD5 방법에서 MD5 알고리즘은 사용자 구성 키를 사용하여 메시지 다이제스트를 생성합니다.

  • 더 나은 키 관리 및 민첩성 - 세션에 대해 최대 64개 키를 구성할 수 있으며 세션 수명 동안 언제든지 추가할 수 있습니다. TCP 연결이 닫히는 일 없이 동일한 연결 내에서 키를 변경하는 기능(한 키에서 다른 키로 이동)을 제공하여 간단한 키 조정 메커니즘을 제공합니다. 설정된 연결 중에 TCP MD5 키를 변경하면 연결에서 플랩 또는 재시작이 발생할 수 있습니다.

  • 수명이 긴 연결에 적합 - BGP 및 LDP와 같은 라우팅 프로토콜과 단일 연결의 반복 인스턴스에 걸쳐 수명이 긴 연결에 더 적합합니다.

TCP-AO란?

TCP-AO는 다음과 같은 프레임워크를 제공합니다.

  • HMAC-SHA1 및 AES-128과 같은 여러 강력한 알고리즘을 지원하여 내부 트래픽 키 및 메시지 다이제스트를 생성합니다.

  • 새 사용자 구성 키를 추가하여 설정된 연결에 대한 내부 트래픽 키를 다시 생성하고 BGP 또는 LDP 피어 간의 키 변경을 동기화하는 메커니즘을 추가합니다.

이전 릴리스에서 Junos 디바이스는 BGP 및 LDP 세션에 대한 TCP MD5 인증 방법만 지원했습니다. MD5 방법은 TCP-AO보다 덜 안전한 MD5 알고리즘만 지원합니다. 또한 MD5 키를 변경하면 일반적으로 TCP-AO와 달리 TCP 세션이 중단됩니다. TCP MD5는 TCP MD5 서명 옵션을 통한 BGP 세션 보호 RFC2385에 정의되어 있습니다. TCP MD5에 대한 자세한 내용은 TCP를 참조하십시오.

참고:

다음 다이어그램에서는 TCP-AO와 TCP MD5 인증의 차이점을 설명합니다. 첫 번째 플로우는 TCP-AO의 구성 및 처리 플로우를 보여주며, 두 번째 플로우는 TCP-MD5의 구성 및 처리 플로우를 보여줍니다.

그림 1: TCP MD5와 비교한 TCP-AO TCP-AO in comparison with TCP MD5

아래는 그림 1에 표시된 처리 흐름에 대한 설명입니다.

  • TCP-AO - 사용자는 필요한 모든 매개 변수를 사용하여 키체인(키 0 및 키 1)에서 두 개의 키를 구성했습니다. 키체인은 두 가지 알고리즘인 HMAC SHA1과 AES-128(RFC5925에 따라 의무화)을 지원합니다. TCP는 그림의 타임스탬프에 의해 표시된 대로 현재 활성 키인 키 0을 가져옵니다. 이 예에서 키 0은 HMAC-SHA1로 구성됩니다.

    SHA1은 키 0 구성에서 "암호"를 취하고 암호화에 대한 특정 매개 변수를 연결하고 내부 트래픽 키를 생성합니다.

    SHA1은 내부 트래픽 키와 TCP 세그먼트를 다시 암호화하여 메시지 다이제스트를 생성합니다. 다이제스트는 TCP 세그먼트의 TCP-AO 옵션의 TCP-AO MAC 필드에 복사됩니다. 그런 다음 세그먼트가 수신 디바이스로 전송됩니다.

  • TCP-MD5 - TCP MD5 옵션은 연결에 대해 하나의 키만 지원하기 때문에 사용자가 단일 키를 구성했습니다. 또한 MD5 알고리즘만 지원합니다. MD5 알고리즘은 암호화를 위해 키 및 TCP 세그먼트에서 "암호"를 가져와 메시지 다이제스트를 생성합니다. 그런 다음 이 메시지 다이제스트는 TCP 세그먼트의 MD5 다이제스트 필드로 복사되어 수신 디바이스로 전송됩니다.

구성

먼저 키체인을 구성합니다. 그런 다음 TCP-AO를 BGP 또는 LDP 세션에 적용합니다.

TCP-AO(하나의 키 포함)에 대한 키체인을 구성하려면 계층 수준에서 다음 문을 [edit security] 구성합니다.

TCP-AO를 BGP 세션(구성된 키체인 포함)에 적용하려면 계층 수준에서 다음 문을 [edit protocols] 구성합니다.

TCP-AO를 LDP 세션(구성된 키체인 포함)에 적용하려면 계층 수준에서 다음 문을 [edit protocols] 구성합니다.

예: 키체인 구성(TCP-AO)

요약 이 예에서는 BGP 또는 LDP 세션을 인증하기 위해 TCP-AO 키체인을 만드는 방법을 보여줍니다.

이 예는 다음과 같은 하드웨어 및 소프트웨어 구성 요소를 사용합니다.

  • MX 시리즈 또는 PTX 시리즈 라우터.

  • 릴리스 20.3R1 이상 버전 Junos OS.

이 예에서는 BGP 또는 LDP 세션을 인증하기 위해 TCP-AO 키체인을 만드는 방법을 보여줍니다.

이 예에서는 디바이스 R1과 R2에서 두 개의 키 key 0 key 1 로 키체인 new_auth_key 을 생성할 수 있습니다.

  1. 첫 번째 키로 키체인 new_auth_key 을 생성하려면(key 0):
    참고:

    다음 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레인을 제거하고 네트워크 구성과 일치하기 위해 필요한 세부 사항을 변경하고 명령을 복사하여 CLI에 붙여 넣습니다.

    R1

    R2 (및 send-id recv-id 값이 역으로)

    키체인을 구성하는 동안 다음 매개 변수를 고려하십시오.

    표 1: 키체인 매개 변수

    매개 변수

    설명

    key-chain

    고유한 이름을 입력합니다.

    key

    고유한 키 ID를 입력합니다.

    secret

    고유한 암호를 입력합니다.

    start-time

    키의 시작 시간을 지정하려면 형식으로 고유한 시간을 YYYY-MM-DD.HH:MM 입력합니다.

    algorithm

    알고리즘 ao을 입력합니다.

    send-idrecv-id

    0에서 255 사이의 두 숫자를 입력합니다. 이 수치는 키체인 내의 다른 키에 사용할 수 없습니다.

    cryptographic-algorithm

    또는 aes-128-cmac-96을(를) hmac-sha-1-96 선택합니다.

    tcp-ao-옵션

    TCP-AO 옵션을 사용하도록 설정합니다 enabled .

  2. 생성 후 key 0다른 키(key 1)를 추가하려면:

    R1

    R2 (및 send-id recv-id 값이 역으로)

  3. 두 디바이스의 구성 모드에서 을(를) 입력 commit 하여 변경 사항을 활성화합니다.
  4. 구성된 2개 키로 키체인 new_auth_key 을 확인하려면 구성 모드에서 명령을 사용합니다show security authentication-key-chains.

    다음은 이 예제를 기반으로 한 샘플 출력입니다.

성공적으로 키체인을 만들었습니다!

키체인을 삭제하려면 구성 모드에서 명령을 사용합니다 delete security authentication-key-chains key-chain key-chain-name .

참고:
  • 단 하나의 TCP-AO 키체인을 수명 동안 BGP 또는 LDP 세션과 연결할 수 있습니다. 수명 동안 또 다른 키체인을 세션에 가리킬 수 없습니다.

  • 키체인 내의 두 후속 키의 시작 시간 사이에 최소 30분 간격을 권장합니다.

  • 키체인이 구성되고 TCP 연결에서 사용되면 활성 키의 또는 recv-id 값을 변경할 send-id 수 없습니다. 그러나 키의 다른 매개 변수를 변경할 수 있으며 업데이트된 키체인과 관련된 새로운 연결은 연결 설정에 대한 업데이트된 매개 변수를 가합니다.

  • 릴리스 21.2R1 Junos OS TCP-AO가 하나라도 TCP-AO를 구성하지 않은 경우, TCP-AO 없이 연결을 설정할 수 있도록 하려면 을(를) 사용할 tcpao-auth-mismatch allow-without-tcpao 수 있습니다.

운영 모드에서 기존 키체인(있는 경우)에 대한 정보를 표시하려면 명령을 사용합니다 show security keychain . 다음은 샘플 출력입니다.

예: TCP-AO를 사용하여 BGP 세션 인증

요약 이 예에서는 TCP 인증 옵션(TCP-AO) 키체인을 사용하여 BGP 세션을 인증하는 방법을 보여줍니다.

요구 사항

이 예는 다음과 같은 하드웨어 및 소프트웨어 구성 요소를 사용합니다.

  • MX 시리즈 또는 PTX 시리즈 라우터.

  • 릴리스 20.3R1 이상 버전 Junos OS.

  • 키체인 new_auth_key을 구성합니다. 키체인 구성(TCP-AO)을 참조하십시오.

개요

BGP는 TCP를 전송 프로토콜로 사용합니다. TCP-AO는 BGP 세션을 인증하는 데 사용할 수 있는 방법입니다. TCP-AO 키체인은 BGP neighbor 또는 구성 계층의 BGP 그룹 수준에서 적용할 수 있습니다.

토폴로지

그림 2: BGP 인증 Topology for BGP Authentication 을 위한 토폴로지

구성

이 예에서는 BGP 세션을 인증하기 위해 두 디바이스 모두에서 TCP-AO 인증 키체인 new_auth_key 및 인증 알고리즘 ao 을 연결합니다.

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레인을 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경한 다음 명령을 복사하여 CLI에 붙여 넣습니다.

R1

R2

단계별 절차

  1. 구성 모드를 입력합니다.

  2. 두 디바이스에서 인터페이스 IP 주소, 인터페이스 설명, 루프백 주소, 라우터 ID, AS 번호와 같은 기본 설정을 구성합니다.

    R1

    R2

  3. R1과 R2 사이에 EBGP를 구성합니다.

    R1

    R2

  4. 인증 키체인 new_auth_key 과 인증 알고리즘 ao 을 두 디바이스의 BGP 세션에 연결합니다.

    R1

    R2

  5. 두 디바이스의 구성 모드에서 을(를) 입력 commit 합니다.

    두 디바이스 모두에서 구성 문을 커밋하면 BGP 세션이 TCP-AO 인증 방법을 사용하여 설정해야 합니다.

결과

구성 모드에서 , show routing-optionsshow protocols 명령을 사용하여 show interfaces구성을 확인합니다.

user@R1# show interfaces

user@R1# show routing-options

user@R1# show protocols

확인

BGP 세션 설정 확인
목적

TCP-AO를 활성화한 후 BGP 세션 설정 출력을 확인합니다.

작업

운영 모드 명령을 사용하여 BGP 세션 상태의 BGP 요약을 show bgp summary 봅니다.

의미

강조 표시된 출력 값은 BGP가 1:19분 전에 TCP-AO 인증 방법과 세션을 성공적으로 설정했음을 나타냅니다.

BGP 세션이 TCP-AO를 사용하는지 확인
목적

BGP neighbor가 TCP-AO 키체인으로 인증되었는지 확인합니다.

작업

show bgp neighbor neighbor 명령을 사용하여 BGP 피어의 구성 세부 정보를 볼 수 있습니다. 출력에서 인증 관련 세부 정보만 필터링하려면 파이프(|) 기능을 사용하고 와(과) 을(를) 일치authentication합니다.

의미

출력은 인증 키체인 new_auth_key 및 인증 알고리즘 ao 이 BGP 인접 192.0.2.2라우터에 적용되었음을 나타냅니다.

예: TCP-AO를 사용하여 LDP 세션 인증

요약 이 예에서는 TCP 인증 옵션(TCP-AO) 키체인을 사용하여 LDP 세션을 인증하는 방법을 보여줍니다.

요구 사항

이 예는 다음과 같은 하드웨어 및 소프트웨어 구성 요소를 사용합니다.

  • MX 시리즈 또는 PTX 시리즈 라우터.

  • 릴리스 20.3R1 이상 버전 Junos OS.

  • 키체인 new_auth_key을 구성합니다. 키체인 구성(TCP-AO)을 참조하십시오.

개요

LDP(Label Distribution Protocol)는 MPLS 신호 전송 프로토콜입니다. 이를 통해 라우터는 네트워크를 통해 레이블 스위칭 경로(LSP)를 설정할 수 있습니다. TCP-AO는 LDP 피어 간에 생성된 세션의 보안을 강화하는 데 도움이 됩니다.

그림 3: LDP 구성 Topology for LDP Configuration 을 위한 토폴로지

구성

이 예에서는 TCP-AO 인증 키체인 new_auth_key 및 인증 알고리즘 ao 을 두 디바이스에 연결하여 LDP 세션을 인증합니다.

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레인을 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경한 다음 명령을 복사하여 CLI에 붙여 넣습니다.

R1

R2

단계별 절차

  1. 구성 모드를 입력합니다.

  2. R1 및 R2의 디바이스 인터페이스, 루프백, 인터페이스 설명, 라우터 ID, AS 번호와 같은 기본 설정을 구성합니다.

    R1

    R2

  3. 두 디바이스 모두에서 MPLS 및 LDP를 구성합니다.

    R1

    R2

  4. 루프백 주소 도달 가능성을 광고하는 내부 게이트웨이 프로토콜(IGP)을 구성합니다. 이 예에서 OSPF를 구성합니다.

    R1

    R2

  5. authentication-algorithm ao 을 R1 및 R2의 레이블 공간 ID와 연결 authentication-key-chain new_auth_key 합니다.

    R1

    R2

  6. 두 디바이스의 구성 모드에서 을(를) 입력 commit 합니다.

결과

, show routing-optionsshow protocols 명령을 사용하여 구성을 show interfaces확인합니다.

user@R1# show interfaces

user@R1# show routing-options

user@R1# show protocols

확인

LDP 세션 확인

목적

TCP-AO를 통한 LDP 세션 설정 확인.

작업

show ldp session detail 작동 모드 명령을 사용하여 LDP 세션이 올바르게 설정되었는지 확인합니다.

의미

출력은 LDP 세션이 설정되었음을 나타냅니다.

예: TCP-AO를 사용하여 RPKI 검증 세션 인증

개요

RPKI(Resource Public Key Infrastructure)는 인터넷의 라우팅 인프라, 특히 BGP를 보호하도록 설계된 공용 키 인프라 프레임워크입니다. RPKI는 IP 주소와 같은 인터넷 번호 리소스 정보를 신뢰 앵커에 연결하는 방법을 제공합니다. RPKI를 사용하여 적법한 수의 리소스 보유자는 인터넷 라우팅 프로토콜의 작동을 제어하여 경로 하이재킹 및 기타 공격을 방지할 수 있습니다.

릴리스 22.2R1 Junos OS TCP 인증 옵션(TCP-AO) 및 키체인을 사용하여 RPKI 세션을 인증할 수 있습니다.

이 예에서는 TCP-AO 키체인을 사용하여 RPKI 검증 세션을 인증하는 방법을 보여줍니다. 클라이언트 디바이스(R1)와 서버(R2) 사이에 인증된 RPKI 세션을 설정합니다.

요구 사항

이 예는 다음과 같은 하드웨어 및 소프트웨어 구성 요소를 사용합니다.

  • MX 시리즈 라우터 2개
  • 릴리스 22.2R1 이상 버전 Junos OS.

토폴로지

그림 4: 인증 RPKI 세션을 Topology for Authenticated RPKI Session 위한 토폴로지

구성

이 예에서는 RPKI 연결을 인증하려면 두 디바이스 모두에서 TCP-AO 인증 키체인 new_auth_key 및 인증 알고리즘 ao 을 연결해야 합니다.

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레인을 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경한 다음 명령을 복사하여 CLI에 붙여 넣습니다.

R1

R2

단계별 절차

  1. 두 디바이스에서 인터페이스, 루프백 주소, 라우터 ID 및 AS 번호와 같은 기본 설정을 구성합니다. R2에서 서버의 논리적 시스템 인터페이스를 구성합니다.

    R1

    R2

  2. 대체 TCP 포트 번호가 있는 RPKI 서버(R2)가 있는 클라이언트 디바이스(R1)에서 TCP 세션을 구성합니다.

    R1

  3. 서버 R2에서 원본 검증을 위해 클라이언트 R1과의 RPKI 세션을 구성합니다.

  4. 첫 번째 키(키 0)로 키체인 new_auth_key 을 생성합니다.

    R1

    R2 (send-id 및 recv-id 값이 역으로)

  5. 키 0을 생성한 후 다른 키(키 1)를 추가하려면 다음을 수행합니다.

    R1

    R2 (send-id 및 recv-id 값이 역으로)

  6. R1과 R2 모두에 구성된 키체인 new_auth_key 및 인증 알고리즘 ao 을 적용합니다.

    R1

    R2

  7. 두 디바이스의 구성 모드에서 을(를) 입력 commit 하여 변경 사항을 활성화합니다.

  8. 구성된 두 키로 키체인 new_auth_key 을 확인하려면 구성 모드에서 명령을 사용합니다 show security authentication-key-chains .

결과

R1에서 키체인 구성 결과를 확인합니다.

user@R1# show security authentication-key-chains

다음 명령을 사용하여 R1에 적용된 나머지 구성을 확인합니다.

user@R1# show interfaces

user@R1# show routing-options

확인

목적

두 피어에 구성된 TCP-AO 키체인 및 알고리즘으로 세션이 설정되었는지 확인합니다.

작업

운영 모드 명령을 사용하여 show validation session 192.168.12.2 detail 검증된 세션을 봅니다.

의미

출력은 세션이 구성된 키체인 new_auth_key으로 작동 중임을 나타냅니다.

릴리스 기록 테이블
릴리스
설명
22.4R1
Junos OS Evolved 릴리스 22.4R1부터 IP 서브넷으로 TCP-AO 또는 TCP MD5 인증을 구성하여 해당 서브넷 아래의 전체 주소 범위를 포함할 수 있습니다.
22.4R1
Junos OS Evolved 릴리스 22.4R1부터 TCP 인증은 VRF를 알고 있습니다.