라우터에서 MACsec(Media Access Control Security) 구성
MACsec(Media Access Control Security)은 이더넷 링크상의 거의 모든 유형의 트래픽에 대해 안전한 통신을 제공하는 업계 표준 보안 기술입니다. MACsec은 이더넷 링크에서 직접 연결된 노드 간 점대점(point-to-point) 보안을 제공하며 서비스 거부, 침입, 중간자, 가장, 수동적 도청, 재생 공격 등 대부분의 보안 위협을 식별하고 예방할 수 있습니다. MACsec은 IEEE 802.1AE로 표준화됩니다.
Junos OS Release 15.1부터 MACsec을 구성하여 MX 시리즈 라우터와 MACsec 지원 MIC를 연결하는 점대점(point-to-point) 이더넷 링크를 보호하거나, PC, 전화 또는 서버와 같은 호스트 디바이스에 스위치를 연결하는 이더넷 링크에서 MACsec을 구성할 수 있습니다. MACsec을 사용하여 보호하려는 각 점대점(point-to-point) 이더넷 링크는 독립적으로 구성되어야 합니다. CAK(정적 연결 연결 키) 보안 모드를 사용하여 라우터와 라우터 링크에서 MACsec을 활성화할 수 있습니다. 프로세스는 이 문서에서 제공됩니다.
정적 연결 연결 키(CAK) 모드를 사용한 MACsec 구성
포인트 투 포인트 이더넷 링크 연결 라우터에서 정적 CAK 보안 모드를 사용하여 MACsec을 사용할 수 있습니다.
정적 CAK 보안 모드를 사용해 MACsec을 활성화하면 P2M(Point-to-Point) 이더넷 링크의 각 끝에 있는 라우터 간에 사전 공유 키가 교환됩니다. 사전 공유 키에는 CKN(Connectivity Association Name) 및 CAK(Connectivity Association Key)가 포함됩니다. CKN 및 CAK는 연결 연결에서 사용자가 구성하며 링크의 양 끝에 일치하여 처음에 MACsec을 활성화해야 합니다.
사전 공유된 키가 교환되고 검증되면 MKA(MACsec Key Agreement) 프로토콜이 활성화됩니다. MKA는 링크에서 MACsec을 활성화 및 유지 관리하며, P2M(Point-to-Point) 링크에서 두 라우터 중 하나를 키 서버로 선택할 책임이 있습니다. 그런 다음 키 서버는 MACsec 보안 링크를 통해 다른 장비와만 공유되는 임의의 보안 키를 만듭니다. 임의화된 보안 키는 점대점(point-to-point) 링크에서 MACsec을 활성화하고 유지합니다. 키 서버는 MACsec이 활성화된 동안 점대점(point-to-point) 링크상에서 임의로 생성된 보안 키를 주기적으로 생성하고 공유합니다.
링크 양쪽 끝에 연결 연결을 구성하여 정적 CAK 보안 모드를 사용하여 MACsec을 활성화합니다. 모든 구성은 연결 연결 내에서는 물론 보안 채널 외부에 수행됩니다. 정적 CAK 보안 모드를 사용할 때 인바운드 트래픽과 아웃바운드 트래픽을 위한 두 개의 보안 채널이 자동으로 생성됩니다. 자동으로 생성된 보안 채널에는 연결 연결에서 이미 구성할 수 없는 사용자 구성 매개 변수가 없습니다.
정적 CAK 보안 모드를 사용하여 MACsec을 구성하여 라우터와 라우터 간의 이더넷 링크를 보호하려면 다음을 수행합니다.
CA를 논리적 인터페이스에 할당할 때 적용할 수 있는 제한은 다음과 같습니다.
물리적 인터페이스와 논리적 인터페이스에서 CA를 구성하는 것은 상호 배타적입니다.
MACsec은 네이티브 VLAN 구성의 논리적 인터페이스에서 지원되지 않습니다.
MACsec은 논리적 통합 인터페이스에서 지원되지 않습니다.
연결 연결을 인터페이스에 할당하는 것은 인터페이스에서 MACsec을 활성화하기 위한 최종 구성 단계입니다.
정적 CAK 보안 모드를 사용하는 MACsec은 링크의 반대쪽 끝에 있는 연결 연결도 구성되고 링크의 양 쪽 끝에 일치하는 사전 공유 키를 포함할 때까지 활성화되지 않습니다.
Junos OS Release 16.1R2부터 시작하여 인터페이스에서 MACsec(Media Access Control Security)을 활성화하면 계층 수준에서 명령문을 [edit interfaces interface- name gigether-options]
사용하여 (flow-control | no-flow-control)
설정한 구성에 관계없이 인터페이스 플로우 제어 기능이 기본적으로 활성화됩니다. MACsec이 비활성화되면 인터페이스 플로우 제어는 계층 수준에서 명령문을 [edit interfaces]
사용하여 flow-control
설정한 구성으로 복원됩니다. MACsec이 활성화되면 MACsec PHY에 의해 추가 헤더 바이트가 패킷에 추가됩니다. MACsec이 활성화되고 플로우 제어가 비활성화되면 회선 속도 트래픽이 MACsec PHY에 의해 전송되는 일시 중지 프레임이 MIC의 MAC(MX 시리즈 라우터에서 향상된 20포트 Gigabit Ethernet MIC)에 의해 종료되고 패킷 포워딩 엔진으로 전송되지 않아 프레이밍 오류가 발생합니다. 따라서 인터페이스에서 MACsec이 활성화되면 이러한 인터페이스에서도 플로우 제어가 자동으로 활성화됩니다.
자세한 내용은
Fail Open 모드에서 MACsec 키 계약 프로토콜 구성
MACsec에 페일 오픈 모드를 구성하여 MKA 세션이 비활성일 때 트래픽이 끊기지 않도록 방지할 수 있습니다. 이는 정보 보안보다 네트워크 가용성을 우선시하는 서비스 프로바이더는 권장됩니다.
MACsec은 MACsec 보안 링크에서 전송되는 이더넷 프레임에 MACsec 헤더를 추가함으로써 데이터 무결성을 유지합니다. MKA 세션이 활성화되면 MACsec 헤더가 있는 프레임에 대해서만 링크에서 트래픽이 허용됩니다. MKA 세션이 비활성일 경우 프레임에 MACsec 헤더가 수신되지 않습니다. 수신 및 송신의 모든 트래픽은 삭제됩니다. 유일한 예외는 EAPoL 트래픽입니다.
CLI 명령문을 사용하여 페일 오픈 모드를 should-secure
구성할 수 있습니다. 따라서 MKA 세션이 비활성 상태인 경우에도 MACsec 보안 링크에서 트래픽을 허용할 수 있습니다. 트래픽은 MACsec 헤더 없이 cleartext로 전송됩니다.
Fail Open 모드에서 MKA 프로토콜을 구성하려면 다음을 수행합니다.
[edit security macsec connectivity-association connectivity-association-name] user@host# set mka should-secure;
폴백 PSK를 통한 MACsec 구성
정적 CAK 보안 모드를 사용해 MACsec을 활성화하면 PSK(Preshared Key)가 점대점(point-to-point) 이더넷 링크의 각 끝에 있는 장치 간에 교환됩니다. PSK에는 CKN(Connectivity Association Name) 및 CAK(Connectivity Association Key)가 포함됩니다. MACsec 세션을 설정하려면 PSK가 디바이스 전반에서 일치해야 합니다. 불일치가 있는 경우 세션이 설정되지 않고 모든 패킷이 드롭됩니다.
기본 PSK가 연결을 설정하지 못한 경우, 트래픽 손실을 방지하기 위해 폴백 PSK를 구성할 수 있습니다. 대체 PSK는 기본 키가 초기 MACsec 협상에 일치하지 않을 때 사용됩니다.
MACsec 세션이 이미 설정되고 기본 PSK가 한 디바이스에서 변경되었지만 다른 디바이스에서는 변경되지 않으면 이전 기본 PSK를 사용하여 불일치가 해결됩니다. 이전의 기본 PSK는 이전 PSK로 알려진 임시 키입니다.
폴백 PSK가 구성되면 MACsec 세션은 다음 키 중 하나로 보호될 수 있습니다.
기본 PSK(구성 가능)—기본 키입니다.
폴백 PSK(구성 가능)—기본 PSK가 MACsec 세션을 설정하지 못할 때 사용.
PSK 이전(구성 불가능)—새 기본 PSK가 구성되면 이전 기본 PSK가 이전 PSK가 됩니다.
각 키에 대한 CAK 상태는 활성 상태, 활성 상태 또는 진행 중일 수 있습니다. 각 상태에 대한 설명은 표 1 을 참조하십시오.
CAK 상태 | 설명 |
---|---|
라이브 |
|
활성 |
|
진행 중 |
|
키의 불일치는 MACsec 링크의 한쪽에서 새 PSK가 구성되고 다른 쪽이 새 키로 잘못 구성되거나 구성되지 않을 때 발생합니다. 대체 동작은 PSK의 어떤 컴포넌트(CAK, CKN 또는 둘 다)가 변경되었느냐에 따라 달라집니다. 각 불일치 시나리오는 아래에 설명되어 있습니다.
CAK가 변경되고 CKN이 동일하게 유지되면 기존 MACsec 세션의 연결이 끊어집니다. 이전 CKN 및 새로운 CAK 값으로 새로운 세션이 시작됩니다.
CKN이 변경되고 CAK가 동일하게 유지되면 기존 CAK와 쌍을 이은 기존 CKN이 앞의 PSK가 되고 세션은 이전 PSK와 함께 유효합니다. 피어 노드가 동일한 CKN으로 구성될 때까지 진행 중인 새로운 CKN 및 CAK로 새로운 세션이 시작됩니다.
CAK와 CKN이 모두 변경되면 이전 CAK+CKN 쌍이 앞의 PSK가 되고 세션은 앞의 PSK와 함께 진행됩니다. 피어 노드가 동일한 CAK+CKN으로 구성될 때까지 진행 중인 새로운 CAK+CKN 쌍으로 새로운 세션이 시작됩니다.
이전의 PSK는 폴백 PSK보다 우선 순위를 두므로, 세션이 앞 PSK와 함께 있는 경우 대체 PSK가 적용되지 않습니다. 대체 PSK와 함께 세션을 라이브로 설정하려면 명령문을 구성 disable-preceding-key
해야 합니다.
폴백 PSK는 사전 공유 키체인에 대해 지원됩니다. 사전 공유 키 또는 사전 공유 키체인과 함께 대체 PSK를 구성할 수 있습니다. 사전 공유 키 및 사전 공유 키체인은 상호 배타적입니다.
폴백 PSK만 구성되고 기본 PSK가 없는 경우, 두 장비 모두 대체 PSK로 세션을 설정하려고 시도합니다. 세션이 시작되면 폴백 PSK에서 파생된 SAK가 데이터 트래픽 암호화에 사용됩니다. 설정된 세션이 중단되면 디바이스는 계속해서 세션을 재구축하려고 시도하며 세션이 다시 설정될 때까지 트래픽이 드롭됩니다.
대체 PSK는 CA(Connectivity Association)의 일부로 구성됩니다. CA는 모든 인터페이스 또는 인터페이스별로 전역적으로 구성될 수 있어 서로 다른 인터페이스에 대해 서로 다른 대체 키를 허용합니다.
대체 PSK를 구성하려면 CA의 일부로 CAK 및 CKN을 구성합니다.
[edit security macsec connectivity-association ca-name] user@switch# set fallback-key cak key user@switch# set fallback-key ckn key-name
폴백 PSK 구성에는 다음과 같은 제한이 적용됩니다.
폴백 CAK 및 CKN은 사전 공유된 키 CKN 및 CAK 또는 동일한 CA 하의 키체인에 구성된 키와 일치해서는 안 됩니다.
폴백 키를 구성하려면 보안 모드 구성이 있어야 합니다.
구성된 암호 모음의 주요 길이 제한은 대체 CAK 및 CKN에 적용됩니다.