[GNS3] Port Security 및 스위치 보안

2025. 12. 17. 20:21·Network Practice

실습 목표

이번 실습에서는 Access Layer의 보안을 강화하기 위한 다양한 기술을 구현할 예정이다. Port Security를 통해 MAC 주소 기반의 접근 제어를 수행하고, DHCP Snooping으로 불법 DHCP 서버를 차단하며, IP Source Guard를 통해 IP Spoofing 공격을 방지한다.

 

네트워크 보안은 계층적으로 접근해야 한다. 방화벽과 같은 경계 보안도 중요하지만, Access Layer에서의 보안 설정이 없다면 내부 네트워크에 침투한 공격자나 내부자의 악의적 행위를 막을 수 없다. 이번 실습에서 구현하는 기술들은 Layer 2 레벨에서 발생할 수 있는 다양한 보안 위협을 차단하는 첫 번째 방어선이다.


전체 토폴로지

네트워크 설계

  • VLAN 10 (Finance): 10.10.10.0/24
  • VLAN 20 (HR): 10.10.20.0/24
  • VLAN 30 (IT): 10.10.30.0/24
  • VLAN 99 (Management): 10.10.99.0/24

1단계 : 기본 설정 및 VLAN 구성

1. 기본 설정

작업 대상

[Core-SW] [Dist-SW] [Acc-SW1] [Acc-SW2] [Acc-SW3]

모든 스위치에 기본적인 설정을 적용한다. 이전 실습과 동일한 방식으로 hostname, no ip domain-lookup, logging synchronous 등을 설정한다.


2. VLAN 생성 및 SVI 설정

2-1. Core-SW 설정

Core-SW는 Layer 3 스위치로 동작하며 Inter-VLAN 라우팅을 수행한다.

ip routing명령어로 Layer 3 라우팅 기능(SVI)을 활성화한다.

 

Trunk 포트 설정

2-2. Dist-SW 설정

Distribution 스위치는 모든 VLAN을 인식하고 전달해야 한다.

Management VLAN에 IP 주소를 할당하여 원격 관리가 가능하도록 한다.

2-3. Access 스위치 설정

각 Access 스위치는 담당 VLAN과 Management VLAN만 생성한다.

Acc-SW1 (Finance)

 

Acc-SW2(HR), Acc-SW3(IT) 설정

Acc-SW2는 VLAN 20(10.10.99.12), Acc-SW3는 VLAN 30(10.10.99.13)으로 동일한 방식으로 설정한다.


3. PC IP 주소 설정

각 PC에 고정 IP를 할당한다.

PC1> ip 10.10.10.10 255.255.255.0 10.10.10.1
PC2> ip 10.10.10.20 255.255.255.0 10.10.10.1
PC3> ip 10.10.20.10 255.255.255.0 10.10.20.1
PC4> ip 10.10.20.20 255.255.255.0 10.10.20.1
PC5> ip 10.10.30.10 255.255.255.0 10.10.30.1
PC6> ip 10.10.30.20 255.255.255.0 10.10.30.1
Rogue-PC> ip 10.10.10.99 255.255.255.0 10.10.10.1

2단계 : Port Security 설정

Port Security는 각 포트에 연결할 수 있는 MAC 주소의 개수를 제한하여 MAC Flooding 공격과 불법 장비의 연결을 방지한다.

1. Port Security 기본 개념

동작 방식

  1. 스위치가 포트로 들어오는 프레임의 Source MAC 주소를 학습
  2. 학습한 MAC 주소 개수가 설정된 최대값을 초과하면 위반(Violation) 발생
  3. 위반 모드에 따라 포트 차단, 패킷 드롭, 로그 기록 등의 조치 수행

Violation 모드

Mode 포트 상태 트래픽 차단 로그/SNMP Violation Counter
Shutdown Err-disabled ✅ ✅ ✅
Restrict 정상 동작 ✅ ✅ ✅
Protect 정상 동작 ✅ ❌ ❌
  • Shutdown: 가장 엄격한 모드. 위반 발생 시 포트를 완전히 차단하며 수동 복구 필요
  • Restrict: 위반 트래픽만 드롭하고 포트는 계속 동작. 로그를 남겨 모니터링 가능
  • Protect: 조용히 위반 트래픽만 드롭. 로그도 남지 않아 보안팀이 인지하기 어려움

2. Acc-SW1 Port Security 설정

switchport port-security: Port Security 기능을 활성화한다. Access 모드 포트에서만 동작한다.

switchport port-security maximum 1: 포트당 최대 1개의 MAC 주소만 허용한다. 일반적으로 PC 1대가 연결되는 포트는 1로 설정한다.

switchport port-security violation shutdown: 위반 발생 시 포트를 err-disabled 상태로 전환한다. 보안이 중요한 환경에서는 shutdown 모드를 권장한다.

switchport port-security mac-address sticky: 동적으로 학습한 MAC 주소를 running-config에 자동으로 추가한다. 재부팅 후에도 저장하려면 write memory를 실행해야 한다.

 

Sticky MAC을 사용하는 이유는?

  • 수동으로 MAC 주소를 입력할 필요가 없어 관리가 편리하다
  • PC 교체 시 자동으로 새로운 MAC을 학습한다
  • 하지만 설정을 저장하지 않으면 재부팅 시 다시 학습해야 한다

3. Acc-SW2, Acc-SW3 Port Security 설정

동일한 방식으로 Acc-SW2(E0/1-2), Acc-SW3(E0/1-2)에 Port Security를 설정한다.


4. Port Security 동작 확인

Acc-SW1# show port-security

각 포트가 1개의 MAC 주소를 학습했고, 아직 위반이 발생하지 않았음을 확인할 수 있다.

 

특정 인터페이스 상세 확인

Acc-SW1# show port-security interface ethernet 0/1

Port Status가 Secure-up이면 정상 동작 중이며, Sticky MAC 주소가 1개 학습되었음을 알 수 있다.

 

Sticky MAC 주소 확인

Acc-SW1# show running-config interface ethernet 0/1

running-config에 switchport port-security mac-address sticky <MAC주소> 항목이 자동으로 추가된 것을 확인할 수 있다.


5. Violation 테스트

5-1. Restrict Mode 테스트

Restrict 모드에서는 위반 트래픽만 드롭하고 포트는 계속 동작한다. 로그와 SNMP Trap이 발생하며 Violation Counter가 증가한다.


3단계 : DHCP Snooping 및 IP Source Guard 설정

1. DHCP Snooping 기본 개념

DHCP Snooping은 네트워크에서 신뢰할 수 있는 DHCP 서버만 동작하도록 보장하는 보안 기능이다.

 

동작 방식

  1. 스위치의 모든 포트를 Trusted/Untrusted로 분류
  2. Trusted 포트: DHCP 서버 응답(DHCP OFFER, DHCP ACK)을 허용
  3. Untrusted 포트: DHCP 서버 응답을 차단, DHCP 클라이언트 요청(DHCP DISCOVER, DHCP REQUEST)만 허용
  4. 정상적인 DHCP 트랜잭션을 모니터링하여 DHCP Snooping Binding Table 구축

DHCP Snooping Binding Table

MAC 주소 IP 주소 VLAN 인터페이스 Lease 시간
aabb.cc00.1000 10.10.10.11 10 Et0/1 604800

이 테이블은 이후 DAI와 IP Source Guard에서 활용된다.

 

왜 DHCP Snooping이 필요한가?

공격자가 Rogue DHCP 서버를 설치하면

  • 잘못된 게이트웨이(공격자의 IP)를 배포하여 Man-in-the-Middle 공격 수행
  • 잘못된 DNS 서버를 배포하여 피싱 사이트로 유도
  • 네트워크 서비스 거부 (존재하지 않는 게이트웨이 배포)

DHCP Snooping은 이러한 공격을 원천 차단한다.


2. Core-SW DHCP 서버 구성

먼저 정상적인 DHCP 서버를 Core-SW에 구성한다.

ip dhcp excluded-address: DHCP Pool에서 제외할 IP 범위를 지정한다. 게이트웨이, 서버 등 고정 IP를 사용하는 장비의 주소를 제외해야 IP 충돌을 방지할 수 있다.

lease 7: IP 주소 임대 기간을 7일로 설정한다.


3. Dist-SW DHCP Snooping 설정

ip dhcp snooping: DHCP Snooping을 전역적으로 활성화한다.

ip dhcp snooping vlan 10,20,30: 특정 VLAN에만 DHCP Snooping을 적용한다.

no ip dhcp snooping information option: Option 82(DHCP Relay Agent Information)를 비활성화한다. GNS3 환경이나 일부 DHCP 서버에서 Option 82를 지원하지 않으면 DHCP 트랜잭션이 실패할 수 있어 비활성화하는 것이 안전하다.

 

Trusted/Untrusted 포트 설정

Uplink(Core-SW 연결)는 Trusted로 설정하여 정상 DHCP 서버의 응답을 허용한다. Downlink는 Untrusted로 유지하여 하위 네트워크에서 발생하는 Rogue DHCP 서버를 차단한다.


4. Acc-SW1 DHCP Snooping 설정

ip dhcp snooping limit rate 10: 초당 10개의 DHCP 패킷만 허용한다. DHCP 기반 DoS 공격(대량의 DHCP DISCOVER 전송)을 방지한다.

 

Acc-SW2, Acc-SW3 설정

동일한 방식으로 각각 VLAN 20, 30에 대해 DHCP Snooping을 설정한다.


5. DHCP Snooping 동작 확인

PC1, PC2에서 DHCP로 IP 획득

 

Acc-SW1에서 Binding 테이블 확인

Acc-SW1# show ip dhcp snooping binding

PC1의 MAC 주소와 할당받은 IP, 인터페이스 정보가 Binding 테이블에 기록되었다.


6. IP Source Guard 설정

IP Source Guard는 DHCP Snooping Binding 테이블을 기반으로 IP Spoofing 공격을 방지한다.

 

동작 방식

  • 포트로 들어오는 모든 IP 패킷의 Source IP를 Binding 테이블과 비교
  • Binding 테이블에 없는 IP 주소를 사용하는 패킷은 차단
  • DHCP를 통해 정상적으로 IP를 할당받은 장비만 통신 가능

Acc-SW1 설정

ip verify source: IP 주소만 검증한다. MAC 주소까지 검증하려면 ip verify source port-security 명령어를 사용하지만, 이는 Port Security와 함께 사용해야 한다.

 

Acc-SW2, Acc-SW3에도 동일하게 설정한다.


7. IP Source Guard 동작 확인

Acc-SW1# show ip verify source

  • E0/1: DHCP Binding이 있어 10.10.10.11만 허용
  • E0/2: DHCP Binding이 있어 10.10.10.12만 허용
  • E0/3: Binding이 없어 모든 IP 트래픽 차단 (deny-all)

IP Spoofing 테스트

Rogue-PC에 고정 IP를 설정하고 통신을 시도한다.

Ping이 실패한다. IP Source Guard가 DHCP Binding에 없는 IP 주소를 사용하는 트래픽을 차단했기 때문이다.


8. Dynamic ARP Inspection (DAI) 개요

DAI는 ARP Spoofing 공격을 방지하는 기능이다. DHCP Snooping Binding 테이블을 이용하여 ARP 패킷의 IP-MAC 매핑이 올바른지 검증한다.

 

동작 방식

  • ARP Request/Reply 패킷의 Sender IP와 Sender MAC을 Binding 테이블과 비교
  • 일치하지 않으면 해당 ARP 패킷을 드롭
  • ARP Cache Poisoning 공격을 원천 차단

DAI 설정 예시

ip arp inspection vlan 10,20,30
ip arp inspection validate src-mac dst-mac ip

interface ethernet 0/0
 ip arp inspection trust

하지만 이번 실습에서 사용한 GNS3 IOS 이미지는 DAI를 지원하지 않아 실제 구성은 진행하지 않았다. DAI가 없어도 Port Security + DHCP Snooping + IP Source Guard 조합으로 대부분의 Layer 2 공격을 방어할 수 있다.


마무리

이번 실습을 통해 Access Layer에서 구현할 수 있는 핵심 보안 기능들을 학습했다.

 

배운 점

Layer 2 보안은 종종 간과되지만, 내부 네트워크의 안전을 위해서는 필수적이다. 방화벽과 같은 경계 보안만으로는 내부자 위협이나 이미 침투한 공격자를 막을 수 없다. Port Security, DHCP Snooping, IP Source Guard는 구성이 간단하면서도 효과적으로 다양한 Layer 2 공격을 방어할 수 있다.

 

특히 DHCP Snooping Binding 테이블이 여러 보안 기능의 중심 역할을 한다는 점이 인상적이었다. 하나의 기능으로 구축한 정보를 IP Source Guard, DAI 등 다른 기능에서도 활용하여 효율적인 보안 체계를 구축할 수 있다.

 

실무에서는 이러한 기능들을 모든 Access 포트에 일관되게 적용하고, 로그를 중앙 집중식으로 수집하여 모니터링하는 것이 중요하다. 보안 정책은 설정하는 것도 중요하지만, 지속적으로 모니터링하고 위반 사항을 추적하는 것이 더욱 중요하다.

'Network Practice' 카테고리의 다른 글

[GNS3] ACL 보안 정책 구현 (Standard, Extended, Named ACL)  (0) 2025.12.25
[GNS3] DHCP 서버구성 및 NAT/PAT 활용  (0) 2025.12.08
[GNS3] OSPF 동적 라우팅 구성 및 Multi-Area 설계  (0) 2025.12.03
[GNS3] HSRP 고가용성 (High Availability) 게이트웨이 구성  (0) 2025.12.01
[WireShark] Filtering - 다양한 복합 필터링 기법  (0) 2025.11.30
'Network Practice' 카테고리의 다른 글
  • [GNS3] ACL 보안 정책 구현 (Standard, Extended, Named ACL)
  • [GNS3] DHCP 서버구성 및 NAT/PAT 활용
  • [GNS3] OSPF 동적 라우팅 구성 및 Multi-Area 설계
  • [GNS3] HSRP 고가용성 (High Availability) 게이트웨이 구성
김슭삵
김슭삵
Layer By Layer. 한 층씩 성장 해가는 네트워크와 서버의 학습 공간
  • 김슭삵
    Layer By Layer
    김슭삵
  • 전체
    오늘
    어제
    • 분류 전체보기 (49)
      • Network Concepts (36)
      • Network Practice (12)
      • Linux (0)
      • AWS & Cloud (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    TCP/IP
    ACL
    dns
    vlan
    HSRP
    ERSPAN
    gns3
    dhcp
    LACP
    Network
    ROAS
    Nat
    wireshark
    ARP
    Cisco
    Port Mirroring
    Etherchannel
    RSPAN
    WLAN
    dai
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
김슭삵
[GNS3] Port Security 및 스위치 보안
상단으로

티스토리툴바