Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

BGP 경로 인증

BGP에 대한 라우터 인증 이해

라우터 및 경로 인증과 경로 무결성을 사용하면 다른 라우터와 잘못된 라우팅 정보를 공유하도록 구성된 시스템이나 라우터의 공격을 받을 위험을 크게 완화할 수 있습니다. 이러한 종류의 공격에서는 공격받은 라우터를 속여 라우팅 루프를 만들거나, 공격받은 라우터의 라우팅 테이블을 크게 늘려 성능에 영향을 미치거나, 공격자가 분석할 수 있도록 라우팅 정보를 네트워크의 특정 위치로 리디렉션할 수 있습니다. 세그먼트에서 가짜 경로 광고를 보낼 수 있습니다. 이러한 업데이트는 경로의 소스를 확인하기 위한 인증 메커니즘이 마련되어 있지 않는 한 인접 라우터의 라우팅 테이블에 수락될 수 있습니다.

라우터 및 경로 인증을 사용하면 라우터가 암호(키)를 기반으로 신뢰할 수 있는 소스와 통신하고 있음을 확인할 수 있는 경우에만 정보를 공유할 수 있습니다. 이 방법에서는 해시된 키가 다른 라우터로 전송되는 경로와 함께 전송됩니다. 수신 라우터는 전송된 키를 자체 구성된 키와 비교합니다. 동일하면 경로를 수락합니다. 해시 알고리즘을 사용하면 키가 일반 텍스트로 유선으로 전송되지 않습니다. 대신 구성된 키를 사용하여 해시가 계산됩니다. 라우팅 업데이트는 키와 함께 해시 함수에 대한 입력 텍스트로 사용됩니다. 이 해시는 경로 업데이트와 함께 수신 라우터로 전송됩니다. 수신 라우터는 수신된 해시를 구성된 사전 공유 키를 사용하여 경로 업데이트에서 생성한 해시와 비교합니다. 두 해시가 동일한 경우 경로는 신뢰할 수 있는 소스에서 온 것으로 간주됩니다. 키는 송신 및 수신 라우터만 알 수 있습니다.

보안을 더욱 강화하기 위해 일련의 인증 키( 키체인)를 구성할 수 있습니다. 각 키에는 키체인 내에서 고유한 시작 시간이 있습니다. 키 집합 인증을 사용하면 피어링 세션을 중단하지 않고 암호 정보를 주기적으로 변경할 수 있습니다. 이 키 집합 인증 방법을 무중단이라고 하는데, 피어링 세션을 다시 설정하거나 라우팅 프로토콜을 중단 하지 않고 키가 한 키에서 다음 키로 롤오버되기 때문입니다.

전송 피어는 다음 규칙을 사용하여 활성 인증 키를 식별합니다.

  • 시작 시간이 현재 시간보다 작거나 같습니다(즉, 미래가 아님).

  • 시작 시간은 시작 시간이 현재 시간보다 작은(즉, 현재 시간에 가장 가까운) 체인의 다른 모든 키의 시작 시간보다 큽니다.

수신 피어는 수신 키 식별자를 기반으로 인증하는 키를 결정합니다.

전송 피어는 구성된 시작 시간을 기반으로 현재 인증 키를 식별한 다음 현재 키를 사용하여 해시 값을 생성합니다. 그런 다음 전송 피어는 TCP로 강화된 인증 옵션 개체를 BGP 업데이트 메시지에 삽입합니다. 객체에는 IANA에서 할당한 객체 ID, 객체 길이, 현재 키 및 해시 값이 포함됩니다.

수신 피어는 수신 TCP-enhanced 인증 옵션을 검사하고, 수신된 인증 키를 조회하고, 시작 시간, 시스템 시간 및 허용 오차 매개변수를 기반으로 키가 허용 가능한지 여부를 판별합니다. 키가 수락되면 수신 피어는 해시를 계산하고 업데이트 메시지를 인증합니다.

키체인을 TCP 세션에 처음 적용하면 세션이 재설정됩니다. 그러나 키체인이 적용되면 키체인에서 암호를 추가하거나 제거해도 TCP 세션이 재설정되지 않습니다. 또한 키 체인이 한 인증 알고리즘에서 다른 인증 알고리즘으로 변경되어도 TCP 세션이 재설정되지 않습니다.

TCP 인증

일반적으로 TCP 인증은 다음과 같은 계층 수준에서 구성합니다.

  • [edit protocols bgp]

  • [edit protocols bgp group group-name]

  • [edit protocols bgp group group-name neighbor address]

TCP 인증 및 접두사 서브넷

Junos 디바이스는 BGP 그룹에 구성된 허용된 접두사 서브넷을 통해 검색된 BGP 피어에 대한 TCP 인증을 지원합니다.

BGP 세션의 TCP-AO 또는 TCP MD5에 대한 접두사 기반 인증을 구성하기 위해 다음 계층에서 문을 구성할 수 있습니다.allow (all | prefix-list)

  • [edit protocols bgp group group-name]

  • [edit protocols bgp group group-name dynamic-neighbor dyn-name]

TCP 인증에 대한 보다 자세한 내용은 TCP를 참조해 주십시오.

예: BGP에 대한 라우터 인증 구성

모든 BGP 프로토콜 교환을 인증하여 신뢰할 수 있는 라우팅 디바이스만 AS(Autonomous System) 라우팅 업데이트에 참여하도록 보장할 수 있습니다. 기본적으로 인증이 비활성화됩니다.

요구 사항

시작하기 전에:

  • 라우터 인터페이스를 구성합니다.

  • 내부 게이트웨이 프로토콜(IGP)을 구성합니다.

개요

인증을 구성할 때 알고리즘은 전송된 패킷에 포함된 인코딩된 체크섬을 생성합니다. 수신 라우팅 디바이스는 인증 키(비밀번호)를 사용하여 패킷의 체크섬을 확인합니다.

이 예제에는 키체인을 구성하고 적용하기 위한 다음 문이 포함되어 있습니다.

  • key- 키체인에는 여러 개의 키가 있을 수 있습니다. 키체인 내의 각 키는 고유한 정수 값으로 식별되어야 합니다. 유효한 식별자 값의 범위는 0에서 63 사이입니다.

    키는 최대 126자까지 가능합니다. 문자는 모든 ASCII 문자열을 포함할 수 있습니다. 공백이 포함된 경우 모든 문자를 따옴표(" ")로 묶습니다.

  • tolerance- (선택 사항) 각 키체인에 대해 클럭 오차 허용 오차 값을 초 단위로 구성할 수 있습니다. 클럭 스큐 허용 오차는 BGP 업데이트를 위해 키를 수락하는 수신자에 적용됩니다. 구성 가능한 범위는 0초에서 999,999,999초입니다. 허용 기간 동안에는 현재 또는 이전 암호를 사용할 수 있습니다.

  • key-chain- 각 키체인에 대해 이름을 지정해야 합니다. 이 예제에서는 하나의 키체인을 정의합니다. bgp-auth. 라우팅 장치에 여러 개의 키체인이 있을 수 있습니다. 예를 들어, BGP에 대한 키체인, OSPF에 대한 키체인 및 LDP에 대한 키체인을 가질 수 있습니다.

  • secret- 키체인의 각 키에 대해 비밀 암호를 설정해야 합니다. 이 암호는 문에 암호화된 텍스트 또는 일반 텍스트 형식으로 입력할 수 있습니다.secret 항상 암호화된 형식으로 표시됩니다.

  • start-time- 각 키는 시작 시간을 UTC 형식으로 지정해야 합니다. 제어권은 한 키에서 다음 키로 전달됩니다. 라우팅 디바이스의 클럭을 기준으로 구성된 시작 시간이 되면 해당 시작 시간의 키가 활성화됩니다. 시작 시간은 라우팅 장치의 현지 시간대로 지정되며 키체인 내에서 고유해야 합니다.

  • authentication-key-chain- 모든 피어, 그룹 또는 인접 라우터에 대해 글로벌 BGP 수준에서 키체인을 적용할 수 있습니다. 이 예는 라는 외부 BGP(EBGP) 그룹에 정의된 피어에 키 체인을 적용합니다.ext

  • authentication-algorithm- 각 키체인에 대해 해싱 알고리즘을 지정할 수 있습니다. 알고리즘은 AES-128, MD5 또는 SHA-1일 수 있습니다.

    키 체인 및 인증 알고리즘을 BGP 인접 세션과 연결합니다.

이 예제에서는 라는 키 체인을 구성합니다.bgp-auth 키 0은 2011-6-23.20:19:33 -0700부터 전송 및 수락되며 키 체인의 다음 키(키 1)가 활성화되면 전송 및 수락이 중지됩니다. 키 1은 1년 후 2012-6-23.20:19:33 -0700에 활성화되며, 다른 키가 키 1의 시작 시간보다 늦은 시작 시간으로 구성되지 않는 한 전송 및 수락이 중지되지 않습니다. 30초의 클럭 스큐 허용 오차는 키를 수락하는 수신기에 적용됩니다. 허용 오차 기간 동안 현재 또는 이전 키를 사용할 수 있습니다. 키는 공유 암호 암호입니다. 즉, 인증된 라우팅 업데이트를 수신하는 인접 라우터는 동일한 키(비밀번호)를 포함하여 동일한 인증 키 체인 구성을 가져야 합니다. 따라서 라우터 R0과 라우터 R1이 피어로 구성된 경우 동일한 인증 키 체인 구성을 가져야 합니다. 이 예는 라우팅 디바이스 중 하나에서만 구성을 보여줍니다.

토폴로지 다이어그램

그림 1은(는) 본 예제에서 사용되는 토폴로지를 나타냅니다.

그림 1: BGP에 대한 인증BGP에 대한 인증

구성

CLI 빠른 구성

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

절차

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

라우터 R1이 디바이스 CE1에서 경로 필터를 수락하고 수신된 필터를 사용하여 아웃바운드 경로 필터링을 수행하도록 구성하려면:

  1. 로컬 AS(Autonomous System)를 구성합니다.

  2. 하나 이상의 BGP 그룹을 구성합니다.

  3. 여러 키로 인증을 구성합니다.

    각 키의 시작 시간은 키체인 내에서 고유해야 합니다.

  4. 인증 키 체인을 BGP에 적용하고 해시 알고리즘을 설정합니다.

  5. (선택 사항) 클럭 오차 허용 오차 값(초)을 적용합니다.

결과

구성 모드에서 show protocols, show routing-optionsshow security 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 구성을 마쳤으면 구성 모드에서 commit을 입력합니다.

각 BGP 지원 디바이스에 적절한 인터페이스 이름과 주소를 사용하여 네트워크의 모든 BGP 활성화 디바이스에 대해 이 절차를 반복합니다.

검증

구성이 올바르게 작동하고 있는지 확인합니다.

이웃에 대한 인증 확인

목적

명령의 출력에 옵션이 나타나는지 확인합니다.AutheKeyChainshow bgp neighbor

작업

운영 모드에서 show bgp neighbor 명령을 입력합니다.

권한 부여 메시지 전송 확인

목적

BGP에 향상된 권한 부여 옵션이 있는지 확인합니다.

작업

운영 모드에서 monitor traffic interface fe-0/0/1 명령을 입력합니다.

인증 오류 확인

목적

인증 오류로 인해 TCP가 삭제한 패킷 수를 확인합니다.

작업

운영 모드에서 show system statistics tcp | match auth 명령을 입력합니다.

키체인 작동 확인하기

목적

인증 오류로 인해 TCP가 삭제한 패킷 수를 확인합니다.

작업

운영 모드에서 show security keychain detail 명령을 입력합니다.

변경 내역 표

기능 지원은 사용 중인 플랫폼과 릴리스에 따라 결정됩니다. Feature Explorer 를 사용하여 플랫폼에서 기능이 지원되는지 확인하세요.

릴리스
설명
22.4R1
Junos OS Evolved 릴리스 22.4R1부터 IP 서브넷으로 TCP-AO 또는 TCP MD5 인증을 구성하여 해당 서브넷에 속한 전체 주소 범위를 포함할 수 있습니다.
22.4R1
Junos OS Evolved 릴리스 22.4R1부터 TCP 인증이 VRF를 인식합니다.
19.1R1
Junos OS 릴리스 19.1R1부터 Junos OS는 BGP 그룹에 구성된 허용된 접두사 서브넷을 통해 검색된 BGP 피어로 TCP 인증 지원을 확장합니다.