Bài 78b: Thực hành Port Security — Giới hạn MAC trên cổng switch, sticky MAC và ba chế độ xử lý vi phạm
Sơ đồ lab Bài 78b · ⬇️ Tải sơ đồ (SVG) · 🔍 Mở cỡ lớn
💡 Liên hệ thực tế
Một ngày, bảo vệ phát hiện người lạ ngồi ở bàn trống trong phòng Kế toán, rút dây mạng của máy bàn cắm vào laptop riêng. Ở bàn khác, một nhân viên tự mang hub về để cắm thêm máy. Cả hai trường hợp switch đều không biết — trừ khi bạn bật Port Security.
Port Security cho switch nhớ "cổng này chỉ được có những MAC nào, tối đa bao nhiêu MAC". Có MAC lạ, switch xử lý theo chế độ bạn chọn: tắt hẳn cổng, chặn và ghi log, hoặc chặn im lặng.
Quy tắc ghi nhớ: Port Security chỉ bật được trên cổng đã đặt cứng switchport mode access (hoặc trunk). Mặc định: tối đa 1 MAC, vi phạm thì shutdown (err-disabled).
🎯 Mục tiêu bài lab
- Bật Port Security với sticky MAC, giới hạn số MAC.
- Quan sát chế độ
shutdown: cổng chuyển err-disabled khi có máy lạ. - Quan sát chế độ
restrict: cổng vẫn chạy, chỉ chặn MAC thừa và đếm vi phạm. - Khôi phục cổng bị err-disabled.
- Đọc
show port-security,show port-security interface,show port-security address.
📋 Bảng địa chỉ và đấu nối
| Thiết bị | Nối vào SW1 | Địa chỉ IP | Ghi chú |
|---|---|---|---|
| SRV1 | Fa0/24 | 192.168.1.100/24 | Máy chủ để các máy ping thử |
| PC1 | Fa0/1 | 192.168.1.11/24 | Máy bàn phòng Kế toán |
| PC2, PC3 | Fa0/2 qua HUB1 | 192.168.1.12, .13/24 | Hai máy hợp lệ dùng chung một cổng |
| PC4 | HUB1 (thêm sau) | 192.168.1.14/24 | Máy thứ ba cắm thêm vào hub |
| LAPTOP-LA | Fa0/1 (thay PC1) | 192.168.1.99/24 | Máy lạ |
| Cổng | Maximum | Học MAC | Violation |
|---|---|---|---|
| Fa0/1 | 1 | Sticky | shutdown |
| Fa0/2 | 2 | Sticky | restrict |
| Fa0/3 – Fa0/23 | Không dùng → tắt | ||
Mọi cáp là Copper Straight-Through. Hub dùng Hub-PT (mục Network Devices → Hubs).
⚙️ Các bước thực hiện
⚙️ Bước 1 — Dựng sơ đồ
Kéo ra 1 switch 2960-24TT, 1 Hub-PT, 1 Server-PT, 3 PC (PC1, PC2, PC3). Nối SRV1 vào Fa0/24, PC1 vào Fa0/1, HUB1 vào Fa0/2, PC2 và PC3 vào HUB1. Đặt IP theo bảng (cùng mạng 192.168.1.0/24, không cần gateway). PC4 và LAPTOP-LA để sau.
Kiểm tra: PC1, PC2, PC3 ping được 192.168.1.100.
⚙️ Bước 2 — Thử bật Port Security khi cổng chưa đặt chế độ
SW1(config)# interface fastEthernet 0/1
SW1(config-if)# switchport port-security
Command rejected: FastEthernet0/1 is a dynamic port.
Cổng switch Cisco mặc định ở chế độ động (dynamic auto) — Port Security không chấp nhận. Phải đặt cứng chế độ access trước.
⚙️ Bước 3 — Cấu hình Fa0/1: tối đa 1 MAC, sticky, shutdown
SW1(config)# interface fastEthernet 0/1
SW1(config-if)# switchport mode access
SW1(config-if)# switchport port-security
SW1(config-if)# switchport port-security maximum 1
SW1(config-if)# switchport port-security mac-address sticky
SW1(config-if)# switchport port-security violation shutdown
maximum 1 và violation shutdown là giá trị mặc định — gõ ra để nhìn cấu hình là hiểu ngay. Sticky: switch tự học MAC đầu tiên đi qua cổng và ghi luôn vào running-config, khỏi phải gõ tay từng MAC.
Từ PC1 ping 192.168.1.100 để switch học MAC, rồi xem:
SW1# show running-config interface fastEthernet 0/1
interface FastEthernet0/1
switchport mode access
switchport port-security
switchport port-security mac-address sticky
switchport port-security mac-address sticky 0001.6400.1111
...
(MAC trên máy bạn sẽ khác.)
⚙️ Bước 4 — Cấu hình Fa0/2: tối đa 2 MAC, restrict
SW1(config)# interface fastEthernet 0/2
SW1(config-if)# switchport mode access
SW1(config-if)# switchport port-security
SW1(config-if)# switchport port-security maximum 2
SW1(config-if)# switchport port-security mac-address sticky
SW1(config-if)# switchport port-security violation restrict
SW1(config-if)# exit
SW1(config)# interface range fastEthernet 0/3 - 23
SW1(config-if-range)# shutdown
Cho PC2 và PC3 ping 192.168.1.100 để switch học đủ 2 MAC.
⚙️ Bước 5 — Máy lạ cắm vào Fa0/1 (chế độ shutdown)
- Xoá dây giữa PC1 và SW1. Thêm một Laptop, đổi tên LAPTOP-LA, IP 192.168.1.99/24, nối vào Fa0/1.
- Từ LAPTOP-LA ping 192.168.1.100 → thất bại. Đèn trên cổng Fa0/1 chuyển đỏ.
SW1# show interfaces fastEthernet 0/1
FastEthernet0/1 is down, line protocol is down (err-disabled)
...
SW1# show port-security interface fastEthernet 0/1
Port Security : Enabled
Port Status : Secure-shutdown
Violation Mode : Shutdown
Aging Time : 0 mins
Aging Type : Absolute
SecureStatic Address Aging : Disabled
Maximum MAC Addresses : 1
Total MAC Addresses : 1
Configured MAC Addresses : 0
Sticky MAC Addresses : 1
Last Source Address:Vlan : 00D0.BA00.9999:1
Security Violation Count : 1
Last Source Address là MAC của máy lạ vừa bị bắt (MAC trên máy bạn sẽ khác).
⚙️ Bước 6 — Khôi phục Fa0/1
Rút LAPTOP-LA, cắm lại PC1 vào Fa0/1. Cổng vẫn đang err-disabled — phải bật lại bằng tay:
SW1(config)# interface fastEthernet 0/1
SW1(config-if)# shutdown
SW1(config-if)# no shutdown
PC1 ping lại được 192.168.1.100. Nếu chưa gỡ máy lạ mà đã no shutdown, cổng sẽ lại bị tắt ngay khi máy lạ gửi frame.
⚙️ Bước 7 — Máy thứ ba cắm vào hub (chế độ restrict)
Thêm PC4 (192.168.1.14/24), nối vào HUB1. Từ PC4 ping 192.168.1.100 → thất bại. Nhưng PC2 và PC3 vẫn ping bình thường — cổng Fa0/2 không bị tắt.
SW1# show port-security
Secure Port MaxSecureAddr CurrentAddr SecurityViolation Security Action
(Count) (Count) (Count)
--------------------------------------------------------------------
...
Fa0/2 2 2 4 Restrict
----------------------------------------------------------------------
Cột SecurityViolation của Fa0/2 tăng theo mỗi frame của PC4 bị chặn (số trên máy bạn có thể khác). Xem danh sách MAC đã học: show port-security address.
💾 Bước 8 — Lưu cấu hình
SW1# copy running-config startup-config
MAC sticky nằm trong running-config; không lưu thì khởi động lại switch sẽ phải học lại từ đầu.
🔍 Kiểm tra kết quả
| # | Kiểm tra | Lệnh / thao tác | Kết quả mong đợi |
|---|---|---|---|
| 1 | Sticky MAC đã ghi vào cấu hình | show running-config interface fa0/1 |
Có dòng mac-address sticky <MAC của PC1> |
| 2 | Máy lạ ở Fa0/1 | show interfaces fa0/1 |
down/down (err-disabled) |
| 3 | Khôi phục | shutdown → no shutdown |
PC1 ping được SRV1 |
| 4 | Máy thứ ba ở hub | PC4 ping SRV1 | Thất bại; PC2, PC3 vẫn được |
| 5 | Bộ đếm vi phạm | show port-security |
Fa0/2 có SecurityViolation > 0, Action Restrict |
🛠️ Lỗi thường gặp & cách xử lý
| Triệu chứng | Nguyên nhân thường gặp | Cách kiểm tra & sửa |
|---|---|---|
Command rejected: … is a dynamic port |
Chưa đặt switchport mode access |
Đặt chế độ access trước |
| Chính máy hợp lệ cũng bị chặn | Sticky đã học nhầm MAC của máy khác cắm vào trước | show port-security address; xoá dòng sticky sai bằng no switchport port-security mac-address sticky <MAC> |
| Cổng err-disabled bật lại vẫn tắt ngay | Máy lạ vẫn còn cắm | Gỡ máy lạ trước khi shutdown/no shutdown |
| Khởi động lại switch, MAC sticky mất | Chưa lưu cấu hình | copy running-config startup-config |
🏆 Thử thách mở rộng
- Đổi Fa0/2 sang
violation protect, cho PC4 ping lại. So sánh bộ đếm SecurityViolation với chế độ restrict. - Trên switch thật, làm sao để cổng err-disabled tự bật lại sau 5 phút mà không cần quản trị viên?
👉 Gợi ý đáp án
Thử thách 1: Với protect, frame của PC4 vẫn bị chặn nhưng switch không tăng bộ đếm và không gửi log — vi phạm diễn ra "im lặng", khó phát hiện.
Thử thách 2: Dùng errdisable recovery (300 giây là mặc định của interval):
SW1(config)# errdisable recovery cause psecure-violation
SW1(config)# errdisable recovery interval 300
Tính năng này dùng trên thiết bị thật; Packet Tracer có thể không hỗ trợ đầy đủ.
💬 Hỏi & Đáp nhanh
| Chế độ | Chặn frame MAC lạ | Ghi log / tăng bộ đếm | Tắt cổng |
|---|---|---|---|
| protect | Có | Không | Không |
| restrict | Có | Có | Không |
| shutdown (mặc định) | Có | Có | Có (err-disabled) |
❓ Port Security chống được tấn công gì?
✅ Chống cắm máy lạ và chống MAC flooding — kẻ tấn công gửi hàng nghìn MAC giả để làm đầy bảng MAC, khiến switch phát tràn mọi frame như hub và bị nghe lén.
❓ Kẻ tấn công đổi MAC giống PC1 thì sao?
⚠️ Port Security không phát hiện được giả MAC. Cần thêm xác thực 802.1X (xem Bài 82–83) để kiểm tra danh tính người dùng, thiết bị.
📝 Bài tập đánh giá
Câu 1: Chế độ vi phạm nào chặn frame của MAC lạ, tăng bộ đếm vi phạm nhưng giữ cổng hoạt động?
- A. protect
- B. restrict
- C. shutdown
- D. sticky
Câu 2: Cổng bị err-disabled do Port Security. Sau khi gỡ thiết bị lạ, cần làm gì để cổng hoạt động lại (không có errdisable recovery)?
- A.
clear port-security all - B.
shutdownrồino shutdowntrên cổng đó - C. Đợi 300 giây
- D. Khởi động lại PC
👉 Đáp án
- Câu 1: B — protect không đếm; shutdown tắt cổng; sticky là cách học MAC, không phải chế độ vi phạm.
- Câu 2: B — Không cấu hình recovery thì cổng nằm ở err-disabled cho tới khi quản trị viên bật lại.
💡 Output trong bài là output mẫu trên Packet Tracer, trên máy bạn có thể khác một chút (ví dụ địa chỉ MAC).
📚 Bài viết thuộc khóa học CCNA của VNExperts
🧭 Điều hướng
| ⬅️ Bài trước | 🏠 Mục lục khóa học | Bài kế tiếp ➡️ |
|---|---|---|
| Bài 78: Port Security trên switch — chống tấn công MAC flooding | Mục lục khóa học CCNA | Bài 79: DHCP Snooping & Dynamic ARP Inspection — chống tấn công Layer 2 |