Skip to Content
05. Security17. Management Plane Protection (MPP)

Management Plane Protection (MPP)

Management Plane Protection (MPP) 는 Cisco IOS 라우터의 보안 기능으로, 두 가지를 달성합니다.

  • 라우터가 네트워크 관리 프로토콜의 패킷을 허용하는 인터페이스를 제한합니다.
  • 라우터가 허용하는 네트워크 관리 프로토콜을 제한합니다.

관리 플레인(management plane) 은 라우터 관리와 관련된 모든 트래픽의 논리적 경로입니다. 예를 들어:

  • Telnet
  • SSH
  • SNMP
  • HTTP
  • HTTPS

MPP는 관리 트래픽을 보호하기 더 쉽게 만듭니다. MPP로 대부분의 네트워크 관리 트래픽을 제한할 수 있어 더 적은 access-list가 필요합니다. 또한 거부된 패킷을 드롭하고 CPU로 전달하지 않으므로 네트워크 관리 패킷 플러드 공격을 방지합니다. 대부분의 네트워크 관리 트래픽을 허용/거부하는 좋은 도구입니다. 특정 서브넷 및/또는 IP 주소를 허용/거부해야 하는 경우 여전히 access-list를 사용할 수 있습니다.


1. 구성

MPP를 구성하는 방법을 보여드리겠습니다. 다음은 우리가 사용할 토폴로지입니다.

13_Management Plane Protection (MPP)_img_p02_01

H1은 R1을 관리하는 데 사용하는 신뢰할 수 있는 네트워크에 있습니다. H2는 어떤 네트워크 관리 프로토콜로도 R1을 관리할 수 없어야 하는 원격 네트워크에 있습니다.

시작 구성

각 장치의 시작 구성은 다음과 같습니다.

H1

hostname H1 ! interface GigabitEthernet2 ip address 192.168.1.1 255.255.255.0 ! end

H2

hostname H2 ! interface GigabitEthernet2 ip address 192.168.2.2 255.255.255.0 ! end

R1

hostname R1 ! interface GigabitEthernet2 ip address 192.168.1.254 255.255.255.0 ! interface GigabitEthernet3 ip address 192.168.2.254 255.255.255.0 ! end

MPP를 사용할 때와 사용하지 않을 때의 차이를 볼 수 있는 “이전”과 “이후” 시나리오를 보여드리겠습니다.

1.1. MPP 없이

MPP가 비활성화되었을 때 백그라운드에서 무슨 일이 일어나는지 보여드리겠습니다. R1을 VTY 라인에서 SSH 트래픽만 받도록 구성하겠습니다.

R1(config)# line vty 0 4 R1(config-line)# transport input ssh

무슨 일이 일어나는지 확인하기 위해 디버그를 활성화합니다.

R1# debug ip packet IP packet debugging is on

H2에서 R1으로 telnet을 시도해 봅시다.

H2# telnet 192.168.2.254 Trying 192.168.2.254 ... % Connection refused by remote host

연결이 거부된 것을 볼 수 있습니다. 이는 R1의 VTY 라인에서 telnet을 받지 않기 때문에 예상됩니다. R1을 보면 H2에 두 개의 패킷을 보낸 것을 볼 수 있습니다.

R1# IP: tableid=0, s=192.168.2.254 (local), d=192.168.2.2 (GigabitEthernet3), routed via FIB IP: s=192.168.2.254 (local), d=192.168.2.2 (GigabitEthernet3), len 40, sending

R1은 H2에 응답해 연결을 거부합니다. H2에서 충분한 telnet 패킷을 전송하면 R1에 서비스 거부 공격을 수행할 수 있습니다.

1.2. MPP 사용

이 상황을 개선할 수 있는지 봅시다. 먼저, R1의 VTY 라인에서 telnet도 다시 허용해 “모든 관리 프로토콜이 열려 있는 상태”에서 MPP로 얼마나 잠글 수 있는지 보겠습니다.

R1(config)# line vty 0 4 R1(config-line)# transport input telnet ssh

이제 MPP를 활성화합니다. MPP는 control-plane host 범주 아래에서 구성합니다.

R1(config)# control-plane host R1(config-cp-host)# management-interface GigabitEthernet2 allow ssh

위 한 줄이 의미하는 것은 “GigabitEthernet2 인터페이스에서만, 그리고 SSH 트래픽만 관리용으로 허용한다”입니다. 다른 인터페이스(GigabitEthernet3)나 다른 관리 프로토콜(Telnet, SNMP, HTTP 등)은 MPP가 라인카드 레벨에서 바로 차단합니다.

allow 다음에는 원하는 프로토콜을 여러 개 나열할 수 있습니다. 지원되는 프로토콜 목록은 ?로 바로 확인해 볼 수 있습니다.

R1(config-cp-host)# management-interface GigabitEthernet2 allow ? beep Allow Blocks Extensible Exchange Protocol ftp Allow File Transfer Protocol http Allow HyperText Transfer Protocol https Allow Secure HyperText Transfer Protocol snmp Allow Simple Network Management Protocol ssh Allow Secure Shell Protocol telnet Allow Telnet Protocol tl1 Allow Transaction Language 1 xsvc Allow XML Service

검증

이제 H1(신뢰할 수 있는 네트워크)에서 R1의 GigabitEthernet2 주소로 SSH를 시도하면 정상적으로 접속됩니다. 반대로 H2에서 GigabitEthernet3 쪽으로 어떤 관리 프로토콜을 써도 모두 거부되고, Telnet처럼 VTY 라인 자체는 열려 있어도 MPP가 먼저 드롭하므로 CPU까지 도달하지 않습니다.

설정 상태는 다음 명령으로 확인할 수 있습니다.

R1# show management-interface

또한 MPP 전/후의 debug ip packet 결과를 비교해 보면, MPP 없이는 R1이 Telnet 거부 응답까지 반송해 주던 패킷이 MPP 설정 이후에는 아예 사라지는 것을 관찰할 수 있습니다. 이것이 “라우터로 향하는 불필요한 관리 트래픽을 CPU 앞단에서 끊어준다”는 MPP의 효과입니다.

참고: MPP는 특정 인터페이스 + 관리 프로토콜 조합을 허용하는 것까지만 담당합니다. “같은 인터페이스에서도 특정 IP만 허용” 처럼 소스 주소 기반의 세밀한 제어가 필요하면, 기존과 같이 VTY 라인에 access-class를 걸거나 SNMP view/community에 ACL을 붙이는 등의 추가 ACL이 여전히 필요합니다.

참고: MPP는 Cisco IOS 15M&T 계열에서 지원되는 기능입니다. Catalyst 3560/3850 같은 스위치나 일부 IOS-XE 플랫폼에서는 control-plane host 자체가 없을 수 있으므로, 동일한 효과를 내려면 CoPP(Control Plane Policing)와 VTY ACL을 조합해 구성해야 합니다.


2. 결론

  • MPP는 어떤 인터페이스에서 어떤 관리 프로토콜을 허용할지 를 한 곳에서 선언적으로 제한하는 기능입니다. CoPP의 하위 집합에 해당하며, 관리 트래픽에 초점을 맞춘 단순화된 구성이라고 볼 수 있습니다.
  • 설정은 control-plane hostmanagement-interface <IF> allow <protocols> 두 줄이면 끝입니다. 나머지 인터페이스/프로토콜은 라인카드 레벨에서 silent drop 되므로, CPU를 겨냥한 관리 프로토콜 플러드에 강합니다.
  • “어떤 IP에서 접속할 수 있는지”까지 제어해야 한다면 VTY ACL(access-class)이나 SNMP ACL 같은 기존 수단을 함께 사용합니다. MPP가 이를 대체하지는 않습니다.
  • 플랫폼이 MPP를 지원하지 않는다면, 같은 목적을 CoPP + VTY ACL 조합으로 달성할 수 있다는 점을 기억하세요.

출처: networklessons.com - Management Plane Protection (MPP)

태그: Security