Tính năng switchport port security giám sát một cổng của switch để giới hạn số địa chỉ MAC kết hợp với cổng đó trong bảng chuyển mạch lớp 2. Tính năng này cũng áp đặt giới hạn số địa chỉ MAC bằng cách chỉ cho vài địa chỉ MAC có thể dùng trên cổng đó.
Để hiện thực tính năng bảo mật cổng, switch sẽ thêm vào vài bước trong tiến trình xử lý bình thường của các khung tin đi vào. Thay vì tự động thêm vào bảng MAC địa chỉ MAC nguồn và số cổng, switch xem xét cấu hình bảo mật cổng và sẽ quyết định nó có cho phép địa chỉ đó không. Bằng cách ngăn ngừa các địa chỉ MAC khỏi việc thêm vào switch, bảo mật cổng có thể ngăn ngừa không đẩy khung tin về các địa chỉ MAC đó trên một cổng.
Tính năng bảo mật cổng hỗ trợ những đặc điểm chủ chốt sau:
Chức năng bảo mật cổng bảo vệ switch trước vài kiểu tấn công. Khi một bảng CAM điền thông tin mới vào, các thông tin cũ sẽ bị xóa ra. Khi một switch nhận được một khung tin đi về địa chỉ MAC đích không còn trong bảng CAM, switch sẽ phát tán khung tin đó ra tất cả các cổng. Một kẻ tấn công có thể làm cho các switch điền lại thông tin trong bảng CAM bằng cách gửi ra rất nhiều khung tin, mỗi khung tin có một địa chỉ MAC nguồn khác nhau, làm cho switch xóa các thành phần trong bảng CAM cho hầu hết các máy trạm hợp lệ. Kết quả là, switch sẽ phát tán các khung tin hợp lệ bởi vì địa chỉ MAC đích không còn trong bảng CAM, làm cho máy tấn công thấy tất cả các khung tin.
Một kẻ tấn công cũng có thể khai báo cùng một địa chỉ MAC như là một người dùng hợp lệ bằng cách gửi ra một khung tin với cùng địa chỉ MAC đó. Kết quả là, switch sẽ cập nhật bảng CAM của nó và gửi khung tin đến máy tấn công.
Tính năng bảo mật cổng sẽ ngăn ngừa cả hai kiểu tấn công này bằng cách giới hạn số địa chỉ MAC và giới hạn MAC đến một cổng đặc biệt. Cấu hình bảo mật cổng yêu cầu chỉ vài bước cấu hình đơn giản, tất cả trong chế độ cổng. Các lệnh được liệt kê theo bảng tóm tắt 21.3.
Lệnh |
Mục đích |
Switchport mode {access|trunk} |
Cấu hình bảo mật cổng yêu cầu rằng các cổng phảI gán tĩnh ở chế độ truy cập hay trung kế. |
Switchport port-security [maximum value] |
Bật tính năng bảo mật cổng trên một cổng và định nghĩa số địa chỉ MAC tối đa trên cổng đó. Mặc định giá trị này bằng 1. |
Switchport port-security mac-address mac-address [VLAN {VLAN-id}|access|voice}} |
Định nghĩa một địa chỉ MAC tĩnh cho một VLAN đặc biệt và cho cổng này là dạng truy cập (access) hay VLAN dạng âm thanh (voice VLAN) |
Switchport port-security mac-address sticky |
Báo cho switch ghi nhớ các địa chỉ MAC học động |
Switchport port-security [aging][violation {protect|restrict|shutdown}] |
Định nghĩa thời gian hết hạn (aging time) và hành động tương ứng khi chính sách bị xâm phạm |
Bảng 21.3: Mô tả bảng tóm tắt các lệnh của bảo mật cổng
Trong bảng 21.3, chỉ có hai hàng đầu tiên là bắt buộc khi cấu hình bảo mật cổng. Chỉ với hai lệnh này, một cổng cho phép địa chỉ MAC đầu tiên sẽ được dùng nhưng các địa chỉ MAC khác thì không được. Nếu địa chỉ MAC đó bị hết giờ trong bảng CAM, một địa chỉ MAC khác có thể được học trên cổng đó nhưng chỉ có một địa chỉ MAC cho phép ở một thời điểm.
Hai lệnh kế tiếp trong bảng trên cho phép địa chỉ MAC đích. Lệnh thứ ba định nghĩa tĩnh những địa chỉ MAC được cho phép và lệnh thứ tư cho phép ghi lại địa chỉ MAC học được.
Học thông qua lưu ý (sticky learning) báo cho switch học địa chỉ MAC động, nhưng sau đó sẽ thêm địa chỉ MAC vào cấu hình đang chạy. Điều này cho phép bảo mật cổng được bật lên và địa chỉ MAC hiện hành sẽ được học nhưng sau đó địa chỉ này sẽ được lưu lại trong cấu hình. Chú ý rằng lệnh switchport port-security maximum x sẽ cần phải được cấu hình để cho phép nhiều hơn một địa chỉ MAC, trong đó x là số địa chỉ tối đa.
Câu lệnh cuối cùng trong bảng báo cho switch rằng phải làm gì khi có sự xâm phạm xảy ra. Tùy chọn protect đơn giản báo cho router thực hiện chức năng bảo mật cổng. Tùy chọn restrict báo cho switch gửi các thông điệp bẫy SNMP (SNMP trap) và phát ra của thông điệp báo hiệu (log) liên quan đến sự xâm phạm. Cuối cùng, tùy chọn option đưa cổng vào trong trạng thái err-disable. Để thoát ra khỏi trạng thái này, ta cần phải dùng tổ hợp lệnh shutdown/no shutdown trên cổng để đưa cổng của switch về trạng thái chuyển tiếp.
Ví dụ dưới đây mô tả một cấu hình mẫu, dựa trên hình. Trong hình 21.3, máy chủ 1 và máy chủ 2 là các thiết bị chỉ kết nối vào cổng F0/1 và F0/2 tương ứng. Trong trường hợp này, một thiết bị giả đã cố gắng kết nối vào cổng F0/1.
Cổng F0/1 đã được cấu hình để dùng địa chỉ MAC tĩnh, mặc định chỉ cho phép một địa chỉ MAC.
interface FastEthernet0/1
switchport mode access
switchport port-security
switchport port-security mac-address 0200.1111.1111
Cổng Fa0/2 đã được cấu hình dùng tùy chọn sticky, mặc định chỉ cho phép một MAC.
interface FastEthernet0/2
switchport mode access
switchport port-security
switchport port-security mac-address sticky
Cổng Fa0/1 đang ở trạng thái err-disable, khi một thiết bị không phải là địa chỉ 0200.1111.1111 cố gắng kết nối. Chế độ mặc định là shutdown như đã hiển thị, và số địa chỉ MAC tối đa là 1 và không có MAC nào được học động.
fred# show port-security interface fastEthernet 0/1
Port Security : Enabled
Port status : Err-Disabled
Violation mode : Shutdown
Maximum MAC Addresses : 1
Total MAC Addresses : 1
Configured MAC Addresses : 1
Sticky MAC Addresses : 0
Aging time : 0 mins
Aging type : Absolute
SecureStatic address aging : Disabled
Security Violation count : 1
Cổng F0/2 được mô tả ở trạng thái SecureUP, nghĩa là bảo mật cổng chưa bị bất kỳ sự xâm phạm nào trên cổng này. Cũng chú ý rằng cuối của đoạn cấu hình, số lần chính sách bị xâm phạm là 0. Nó cũng liệt kê sự kiện rằng có một địa chỉ MAC được học động.
fred# show port-security interface fastEthernet 0/2
Port Security : Enabled
Port status : SecureUp
Violation mode : Shutdown
Maximum MAC Addresses : 1
Total MAC Addresses : 1
Configured MAC Addresses : 0
Sticky MAC Addresses : 1
Aging time : 0 mins
Aging type : Absolute
SecureStatic address aging : Disabled
Security Violation count : 0
Chú ý cấu hình cập nhật của switch. Do tùy chọn sticky, switch thêm vào lệnh được cấu hình cuối cùng.
Fred# show running-config
(Lines omitted for brevity)
interface FastEthernet0/2
switchport mode access
switchport port-security
switchport port-security mac-address sticky
switchport port-security mac-address sticky 0200.2222.2222
Phần cuối của ví dụ mô tả tùy chọn sticky được cập nhật trong tập tin cấu hình. Địa chỉ MAC được lưu trữ trong tập tin running-config nhưng nó được lưu trong một câu lệnh có từ khóa sticky, khác với cách cấu hình địa chỉ MAC tĩnh. Chú ý rằng switch không tự động lưu cấu hình trong tập tin startup-config.