Port-Security 총 발표 내용
1. Port-Security란?
Port-Security는 스위치의 특정 포트에 접속할 수 있는
MAC 주소의 개수 또는 특정 MAC 주소를 제한하는 Layer 2 보안 기능
스위치는 기본적으로 포트에 연결된 장비의 MAC 주소를 자동 학습
하지만 이 동작을 그대로 두면 허가되지 않은 장비가 포트에 연결되어도
스위치가 해당 MAC 주소를 학습하고 통신을 허용할 수 있음
Port-Security 적용 시 특정 포트에서 허용할 MAC 주소 수 제한 또는
특정 MAC 주소만 통신 허용
Port-Security
→ 스위치 포트에 들어오는 Source MAC 주소를 기준으로 접근을 제한하는 기능
검사 기준
→ Destination MAC이 아니라 Source MAC
목적
→ 이 포트로 들어오는 장비의 MAC 주소가 허용된 MAC인지 확인
2. Port-Security가 필요한 이유
일반 스위치 포트는 연결된 장비의 MAC 주소를 자동 학습
문제 상황
- 허가되지 않은 노트북 연결 가능
- 하나의 포트에 소형 스위치나 허브 연결 가능
- 한 포트에서 여러 MAC 주소 유입 가능
- 허용되지 않은 장비가 네트워크 접근 가능
- MAC 주소를 대량으로 발생시키는 공격에 취약 가능
Port-Security의 역할
- 포트별 허용 MAC 주소 제한
- 허가되지 않은 장비 접속 차단
- 하나의 포트에 여러 장비 연결 제한
- 기본적인 Layer 2 접근 제어 기능
3. Port-Security 동작 큰그림
- 스위치 포트에 Port-Security 활성화
- 해당 포트로 들어오는 프레임의 Source MAC 주소 확인
- 허용된 MAC 주소이면 통신 허용
- 허용되지 않은 MAC 주소이면 위반 처리
- 허용 MAC 주소 개수를 초과해도 위반 처리
- 위반 발생 시 Violation Mode에 따라 처리: 폐기, 기록, 포트 차단
예시
Gi1/0 포트에 maximum 1 설정
PC1 연결 → PC1 MAC 주소 학습
이후 PC2를 같은 포트에 연결
PC2의 Source MAC 주소 유입
허용된 MAC 주소가 아님
결과 → Port-Security 위반 처리
4. Port-Security의 실효성
Port-Security는 모든 보안 공격을 막는 기능은 아니지만,
고정 단말 환경에서 효과적
효과적인 환경
- 사용자 PC가 연결되는 Access Port
- 프린터가 연결되는 고정 포트
- 관리용 단말 포트
- 허가된 장비만 사용해야 하는 사무실 포트
- 교육장, 실습실, 사내망 단말 포트
실효성
- 허가되지 않은 노트북 연결 제한
- 소형 스위치나 허브를 몰래 연결하는 행위 제한
- 한 포트에서 여러 MAC 주소가 들어오는 상황 제한
- MAC 주소 기반의 기본적인 포트 보안 강화
- MAC Flooding 계열 공격 완화
주의점
- MAC 주소는 변경 가능
- 사용자 신원 인증 기능은 아님
- 강력한 인증 보안보다는 기본적인 포트 접근 제한 기능
5. 핵심 용어 정리
- Source MAC Address → 프레임을 보낸 장비의 MAC 주소
- Secure MAC Address → Port-Security에 의해 허용된 MAC 주소
- Maximum → 해당 포트에서 허용할 수 있는 MAC 주소 개수
- Violation → 허용되지 않은 MAC 주소가 들어오거나 허용 개수를 초과한 상태
- Violation Mode → 위반 발생 시 스위치가 처리하는 방식
- Err-disabled → 보안 위반이나 오류로 인해 스위치가 포트를 강제로 차단한 상태
- Sticky MAC → 처음 들어온 MAC 주소를 자동으로 학습해서 Secure MAC으로 등록하는 방식
- Aging → 일정 시간이 지난 Secure MAC 주소를 삭제하는 기능
6. Port-Security 핵심 설정 요소
- Maximum → 포트에 허용할 MAC 주소 개수 설정
- MAC 주소 등록 방식 → Static / Sticky / Dynamic
- Violation Mode → 위반 발생 시 처리 방식 설정
- Aging → 학습된 Secure MAC 주소 삭제 시간 설정
7. Maximum 설정
Maximum은 포트 하나에 몇 개의 MAC 주소를 허용할 것인지 정하는 설정
conf t
interface gi1/0
switchport port-security maximum 1
end
의미
- gi1/0 포트에 MAC 주소 1개만 허용
- 다른 MAC 주소가 들어오면 Port-Security 위반 처리
- 실습에서는 보통 maximum 1 설정 사용
8. MAC 주소 등록 방식
- Static MAC → 관리자가 직접 허용할 MAC 주소 입력
- Sticky MAC → 처음 연결된 장비의 MAC 주소 자동 학습
- Dynamic MAC → 자동 학습하지만 설정에는 저장되지 않는 방식
9. Static MAC
Static MAC은 관리자가 직접 허용할 MAC 주소를 지정하는 방식
conf t
interface gi1/0
switchport port-security mac-address 0011.2233.4455
end
특징
- 특정 장비만 확실하게 허용할 때 사용
- 관리자가 MAC 주소를 직접 입력
- 보안성은 높지만 장비가 많으면 관리 부담 증가
10. Sticky MAC
Sticky MAC은 처음 연결된 장비의 MAC 주소를 자동 학습하는 방식
conf t
interface gi1/0
switchport port-security mac-address sticky
end
특징
- 실습에서 가장 많이 사용하는 방식
- 처음 들어온 MAC 주소를 자동으로 Secure MAC으로 등록
- 학습한 MAC 주소를 running-config에 기록
- 장비 교체 시 기존 Sticky MAC 삭제 필요 가능
예시 흐름
- PC1 연결
- PC1에서 통신 발생
- 스위치가 PC1의 Source MAC 주소 학습
- PC1 MAC 주소를 Secure MAC으로 등록
- 이후 다른 MAC 주소가 들어오면 위반 처리
11. Dynamic MAC
Dynamic MAC은 스위치가 MAC 주소를 자동 학습하지만 설정에 저장하지 않는 방식
- 자동 학습 방식
- running-config에 저장되지 않음
- 장비 재부팅 후 유지되지 않을 수 있음
- 실습이나 운영에서는 Sticky MAC 방식이 더 직관적
12. Running-config와 Startup-config
running-config
→ 현재 장비가 동작 중에 사용하고 있는 설정
→ 지금 적용 중인 설정
→ 재부팅 시 사라질 수 있는 설정
startup-config
→ 장비가 부팅될 때 불러오는 저장 설정
→ 재부팅 후에도 유지되는 설정
Sticky MAC은 학습한 MAC 주소를 running-config에 기록
재부팅 후에도 유지하려면 startup-config로 저장 필요
copy running-config startup-config
또는
wr
의미 → 현재 적용 중인 running-config를 부팅 설정인 startup-config로 저장
13. Violation Mode
Violation Mode는 허용되지 않은 MAC 주소가 들어왔을 때 스위치가 어떻게 처리할지 정하는 설정
Protect
conf t
interface gi1/0
switchport port-security violation protect
end
- 위반 프레임 폐기
- 로그 없음
- 위반 카운터 증가 없음
- 포트는 유지
- 조용히 버리는 방식
Restrict
conf t
interface gi1/0
switchport port-security violation restrict
end
- 위반 프레임 폐기
- 로그 기록
- 위반 카운터 증가
- 포트는 유지
- 관리자가 위반 상황 확인 가능
Shutdown
conf t
interface gi1/0
switchport port-security violation shutdown
end
- 위반 발생 시 포트를 err-disabled 상태로 전환
- 기본값
- 가장 강한 차단 방식
- 실습에서 결과 확인이 가장 쉬운 방식
Violation Mode 요약
Protect → 조용히 폐기
Restrict → 폐기 + 기록
Shutdown → 포트 차단
14. Err-disabled 상태
Err-disabled는 스위치가 보안 위반이나 오류를 감지해서 포트를 강제로 차단한 상태
Port-Security에서 violation shutdown 모드 사용 시 발생 가능
show interfaces status err-disabled
show interfaces gi1/0 status
- connected → 정상 연결 상태
- notconnect → 장비 미연결 상태
- err-disabled → 보안 위반 또는 오류로 인한 포트 차단 상태
15. Err-disabled 수동 복구
err-disabled 상태가 된 포트는 일반적으로 수동 복구 필요
conf t
interface gi1/0
shutdown
no shutdown
end
- shutdown → 포트를 관리자가 직접 내림
- no shutdown → 포트를 다시 활성화
- 결과 → err-disabled 상태 해제 시도
위반 장비가 계속 연결되어 있으면 복구 후 다시 위반 발생 가능
16. Err-disabled 자동 복구
Port-Security 위반으로 err-disabled가 된 포트를 일정 시간 후 자동 복구하는 설정
conf t
errdisable recovery cause psecure-violation
errdisable recovery interval 300
end
- psecure-violation → Port-Security 위반으로 인한 err-disabled 복구 대상 지정
- interval 300 → 300초 후 자동 복구
show errdisable recovery
자동 복구 후 재위반 여부
- 자동 복구는 포트를 다시 살리는 기능
- Port-Security 정책을 해제하는 기능은 아님
- 위반 장비가 계속 연결되어 있으면 자동 복구 후 다시 위반 발생
- 결과 → 다시 err-disabled 상태 전환
예시 흐름
- PC1 MAC만 허용된 상태
- PC2 연결
- Port-Security 위반 발생
- 포트 err-disabled 전환
- 300초 후 자동 복구
- PC2가 계속 연결된 상태
- 다시 위반 발생
- 다시 err-disabled 전환
17. Aging
Aging은 학습된 Secure MAC 주소를 일정 시간이 지나면 삭제하는 기능
사용 상황
- 임시 사용자 장비가 자주 바뀌는 환경
- 기존 MAC 주소 정보를 자동 정리해야 하는 환경
Aging 방식
- absolute → 통신 여부와 상관없이 설정 시간이 지나면 삭제
- inactivity → 일정 시간 동안 트래픽이 없으면 삭제
conf t
interface gi1/0
switchport port-security aging time 10
switchport port-security aging type inactivity
end
의미 → 10분 동안 해당 MAC 주소에서 트래픽이 없으면 Secure MAC 정보 삭제
18. Access Port / Trunk Port에서의 사용
Port-Security는 포트 역할이 명확해야 정상 동작
일반적인 적용 위치 → 사용자 PC가 연결되는 Access Port 중심
Access Port 설정
conf t
interface gi1/0
switchport mode access
end
Trunk Port 설정
conf t
interface gi1/0
switchport mode trunk
end
Dynamic Auto 또는 Dynamic Desirable 상태에서는 부적합
포트가 Access로 동작할지 Trunk로 동작할지 자동 협상에 따라 달라질 수 있음
Port-Security 적용 전 포트 모드 고정 권장
switchport mode dynamic auto
switchport mode dynamic desirable
19. 기본 설정 예시
Access Port + Sticky MAC + Shutdown 모드 기준
conf t
vlan 10
name USERS
interface gi1/0
switchport mode access
switchport access vlan 10
switchport port-security
switchport port-security maximum 1
switchport port-security mac-address sticky
switchport port-security violation shutdown
no shutdown
end
명령어 의미
- switchport mode access → Access Port 고정
- switchport access vlan 10 → 해당 포트를 VLAN 10에 배치
- switchport port-security → Port-Security 활성화
- switchport port-security maximum 1 → 허용 MAC 주소 1개로 제한
- switchport port-security mac-address sticky → 처음 연결된 MAC 주소 자동 학습
- switchport port-security violation shutdown → 위반 시 포트를 err-disabled 상태로 전환
- no shutdown → 포트 활성화
20. 상태 확인 명령어
show port-security
show port-security interface gi1/0
show port-security address
show running-config interface gi1/0
show interfaces gi1/0 status
show interfaces status err-disabled
show errdisable recovery
show logging
확인 내용
- Port-Security 활성화 여부
- 허용 MAC 주소 수
- 현재 학습된 MAC 주소 수
- Secure MAC 주소
- Violation Mode
- 위반 횟수
- 포트 상태
- err-disabled 상태 여부
- 인터페이스 설정 내용
- 자동 복구 설정 여부
21. ARP와 ARP Spoofing 설명
이 부분은 Port-Security 한계 설명에서 사용
ARP란?
- ARP → Address Resolution Protocol
- 역할 → IP 주소를 MAC 주소로 변환하는 프로토콜
- 사용 이유 → 같은 LAN 내부에서 실제 프레임 전달에는 MAC 주소 필요
ARP 동작
- PC1이 PC2의 IP 주소는 알고 있지만 MAC 주소는 모르는 상태
- PC1이 ARP Request 전송 → “192.168.10.20을 가진 장비의 MAC 주소는 무엇인가?”
- ARP Request는 Broadcast로 전송
- PC2가 ARP Reply 응답 → “192.168.10.20은 내 IP이고 내 MAC 주소는 BB-BB...”
- PC1은 PC2의 IP-MAC 정보를 ARP Cache에 저장
- 이후 PC1은 PC2의 MAC 주소를 이용해 통신
ARP Spoofing이란?
- 공격자가 거짓 ARP 정보를 보내 IP-MAC 매핑을 속이는 공격
- 예시 → 공격자가 “게이트웨이 IP의 MAC 주소는 내 MAC 주소”라고 속임
- 결과 → 피해자의 트래픽이 공격자 쪽으로 전달될 가능성
Port-Security와의 관계
- Port-Security → 포트로 들어오는 Source MAC 주소 제한 기능
- ARP Spoofing → ARP 정보 자체를 조작하는 공격
- 결론 → Port-Security만으로 ARP Spoofing 자체 방어 불가
22. Port-Security의 한계
Port-Security는 MAC 주소 기반 보안 기능
한계
- 허용된 MAC 주소를 공격자가 복제하면 우회 가능
- MAC Spoofing 공격 자체 탐지 불가
- ARP Spoofing 공격 자체 방어 불가
- IP 주소 위조 공격 방어 불가
- 사용자 신원 인증 기능 없음
정리
Port-Security → 허가되지 않은 MAC 주소 접속 제한에는 효과적
하지만 → MAC 주소를 속이는 공격에는 한계
ARP 정보를 속이는 공격 자체 방어 불가
IP 정보를 속이는 공격 자체 방어 불가
사용자 신원 인증 기능 없음