a. Các khái niệm
Port Security
Trong một số tình huống, ta cần phải kiểm soát được sự truy xuất của client vào một hệ thống mạng. Cách thức đơn giản để quản lý client là dựa vào địa chỉ MAC của client đó. Catalyst Switch cung cấp một tính năng là port security, tính năng này giúp điều khiển truy cập của một client trên một port của Switch dựa vào địa chỉ MAC của client đó. Để cấu hình tính năng này trên port access port của Switch ta làm như sau. Đầu tiên bật tính năng port security trên interface-mode bằng lệnh sau:
Switch(config-if)#switchport port-security
Tiếp theo ta chỉ định số địa chỉ MAC tối đa cho phép truy xuất trên port:
Switch(config-if)#switchport port-security maximum max-addr
Mặc định chỉ có 1 địa chỉ MAC được cho phép trên port. Dãy địa chỉ MAC có thể cấu hình từ 1 đến 1024.
Ta có thể chỉ định trước những địa chỉ MAC nào được cho phép truy xuất trên port:
Switch(config-if)#switchport port-security mac-address mac-addr
Theo mặc định khi một client không còn kết nối vào port, MAC của client đó cũng sẽ không được lưu lại. Nếu muốn Switch lưu lại địa chỉ MAC của client vào running-config ta dùng lệnh sau:
Switch(config-if)#switchport port-security mac-address sticky
Ví dụ: nếu ta chỉ định số địa chỉ MAC tối đa cho phép trên một port là 5, điều này có nghĩa là tại một thời điểm chỉ được phép có tối đa 5 địa chỉ MAC của client tồi tại trên port (hay nói cách khác có tối đa 5 client kết nối vào port), nếu thay một client này bằng một client khác thì vẫn không vi phạm điều kiện, vì địa chỉ MAC của client cũ không được lưu lại. Nếu ta chỉ định thêm sticky thì chỉ có 5 client đầu tiên được truy xuất vào port, nếu thay 1 client trong nhóm bằng 1 client khác thì sẽ vi phạm điều kiện (vì 5 MAC của 5 client cũ + 1 MAC của client mới = 6 MAC > số MAC tối đa là 5 MAC).
Bình thường khi vi phạm điều kiện, port sẽ bị shutdown và đưa vào trạng thái lỗi errdisable:
Switch(config-if)#switchport port-security violation shutdown
shutdown: khi vi phạm điều kiện port ngay lập tức bị shutdown và đưa vào trạng thái lỗi errdisable. Ta phải phục hồi lại bằng tay (shutdown port và no shutdown port) hoặc tự động bằng tính năng errdisable recovery (xem lab).
restrict: khi vi phạm port vẫn up, tuy nhiên tất cả những frame từ địa chỉ MAC vi phạm điều kiện đều bị drop và một thông điệp SNMP trap, syslog được gởi ra.
protect: khi vi phạm port vẫn up, giống với restrict, tuy nhiên sẽ không gởi SNMP trap và syslog không được gởi ra.
Một ví dụ cấu hình port-security shutdown (mặc định) mode:
Interface fastEthernet0/10
Switchport access vlan 10
Switchport mode access
Switchport port-security
Switchport port-security violation shutdown
Spanning-tree portfast
Example 15-1 Displaying Port Security Port Status
Switch#show port-security interface fastEthernet0/10
Port Security : Enabled
Port Status : Secure-shutdown
Violation Mode : restrict
Aging Time : 0 mins
Aging Type : Absolute
SecureStatic Address Aging : Disabled
Maximum MAC Addresses : 1
Total MAC Addresses : 0
Configured MAC Addresses : 0
Sticky MAC Addresses : 0
Last Source Address : 0003.a089.efc5
Security Violation Count : 1
Port-based Authentication
Port-based authentication dựa trên chuẩn IEEE 802.x. Khi được bật lên, switch sẽ ngăn tất cả traffic cho đến khi người dùng được chứng thực thành công với Switch. Để có thể port-based authentication làm việc được, đòi hỏi client và Swith phải hỗ trợ 802.1x, nếu Switch không hỗ trợ thì client vẫn có thể truy xuất bình thường, nếu Switch hỗ trợ và bật 802.1x thì client phải hỗ trợ và chứng thực thành công mới có thể truy xuất vào mạng, ngược lại client sẽ không thể truy xuất vào mạng.
Các bước cấu hình chứng thực 802.1x:
Port-based authentication đòi hỏi phải có RADIUS để chứng thực và 802.1x chỉ làm việc được duy nhất với RADIUS.
Bước 1: bật AAA trên Switch bằng lệnh sau:
Switch(config)#aaa new-model
Bước 2: chỉ định RADIUS server trên Switch:
Switch(config)#radius-server host hostname [key string]
Có thể lập lại lệnh này nhiều lần để chỉ định nhiều RADIUS server.
Bước 3: chỉ định phương thức chứng thực mà 802.1x dùng là RADIUS:
Switch(config)#aaa authentication dot1x default group radius
Bước 4: bật 802.1x trên Switch:
Switch(config)#dot1x system-auth-control
Bước 5: cấu hình 802.1x trên port:
Switch(config)#interface type mod/num
Switch(config-if)#dot1x port-control auto
force-authorized: port luôn ở trạng thái được chứng thực, tất cả dữ liệu từ client đều được chấp nhận
force- unauthorized: port luôn ở trạng thái không được chứng thực, tất cả dữ liệu từ client đều bị đánh rớt.
auto: bật 802.1x, port sẽ chuyển từ trạng thái unauthorized sang authorized nếu người dùng cung cấp đúng username và password
Bước 6: cho phép nhiều client truy xuất trên một port cấu hình 802.1x, theo mặc định 802.1x chỉ hỗ trợ một client trên port cấu hình 802.1x. Nếu muốn hỗ trợ nhiều client truy xuất trên cùng một port cấu hình 802.1x, ta dùng thêm lệnh sau:
Switch(config-if)#dot1x host-mode multi-host
Một ví dụ cấu hình 802.1x:
Switch(config)#aaa new-model
Switch(config)#radius-server host 10.1.1.1 key BigSecret
Switch(config)#radius-server host 10.1.1.2 key AnotherBigSecret
Switch(config)#aaa authentication dot1x default group radius
Switch(config)#dot1x system-auth-control
Switch(config)#interface range FastEthernet0/1 – 40
Switch(config-if)#switchport access vlan 10
Switch(config-if)#switchport mode access
Switch(config-if)#dot1x port-control auto
(còn tiếp)
VnPro
Port Security
Trong một số tình huống, ta cần phải kiểm soát được sự truy xuất của client vào một hệ thống mạng. Cách thức đơn giản để quản lý client là dựa vào địa chỉ MAC của client đó. Catalyst Switch cung cấp một tính năng là port security, tính năng này giúp điều khiển truy cập của một client trên một port của Switch dựa vào địa chỉ MAC của client đó. Để cấu hình tính năng này trên port access port của Switch ta làm như sau. Đầu tiên bật tính năng port security trên interface-mode bằng lệnh sau:
Switch(config-if)#switchport port-security
Tiếp theo ta chỉ định số địa chỉ MAC tối đa cho phép truy xuất trên port:
Switch(config-if)#switchport port-security maximum max-addr
Mặc định chỉ có 1 địa chỉ MAC được cho phép trên port. Dãy địa chỉ MAC có thể cấu hình từ 1 đến 1024.
Ta có thể chỉ định trước những địa chỉ MAC nào được cho phép truy xuất trên port:
Switch(config-if)#switchport port-security mac-address mac-addr
Theo mặc định khi một client không còn kết nối vào port, MAC của client đó cũng sẽ không được lưu lại. Nếu muốn Switch lưu lại địa chỉ MAC của client vào running-config ta dùng lệnh sau:
Switch(config-if)#switchport port-security mac-address sticky
Ví dụ: nếu ta chỉ định số địa chỉ MAC tối đa cho phép trên một port là 5, điều này có nghĩa là tại một thời điểm chỉ được phép có tối đa 5 địa chỉ MAC của client tồi tại trên port (hay nói cách khác có tối đa 5 client kết nối vào port), nếu thay một client này bằng một client khác thì vẫn không vi phạm điều kiện, vì địa chỉ MAC của client cũ không được lưu lại. Nếu ta chỉ định thêm sticky thì chỉ có 5 client đầu tiên được truy xuất vào port, nếu thay 1 client trong nhóm bằng 1 client khác thì sẽ vi phạm điều kiện (vì 5 MAC của 5 client cũ + 1 MAC của client mới = 6 MAC > số MAC tối đa là 5 MAC).
Bình thường khi vi phạm điều kiện, port sẽ bị shutdown và đưa vào trạng thái lỗi errdisable:
Switch(config-if)#switchport port-security violation shutdown
shutdown: khi vi phạm điều kiện port ngay lập tức bị shutdown và đưa vào trạng thái lỗi errdisable. Ta phải phục hồi lại bằng tay (shutdown port và no shutdown port) hoặc tự động bằng tính năng errdisable recovery (xem lab).
restrict: khi vi phạm port vẫn up, tuy nhiên tất cả những frame từ địa chỉ MAC vi phạm điều kiện đều bị drop và một thông điệp SNMP trap, syslog được gởi ra.
protect: khi vi phạm port vẫn up, giống với restrict, tuy nhiên sẽ không gởi SNMP trap và syslog không được gởi ra.
Một ví dụ cấu hình port-security shutdown (mặc định) mode:
Interface fastEthernet0/10
Switchport access vlan 10
Switchport mode access
Switchport port-security
Switchport port-security violation shutdown
Spanning-tree portfast
Example 15-1 Displaying Port Security Port Status
Switch#show port-security interface fastEthernet0/10
Port Security : Enabled
Port Status : Secure-shutdown
Violation Mode : restrict
Aging Time : 0 mins
Aging Type : Absolute
SecureStatic Address Aging : Disabled
Maximum MAC Addresses : 1
Total MAC Addresses : 0
Configured MAC Addresses : 0
Sticky MAC Addresses : 0
Last Source Address : 0003.a089.efc5
Security Violation Count : 1
Port-based Authentication
Port-based authentication dựa trên chuẩn IEEE 802.x. Khi được bật lên, switch sẽ ngăn tất cả traffic cho đến khi người dùng được chứng thực thành công với Switch. Để có thể port-based authentication làm việc được, đòi hỏi client và Swith phải hỗ trợ 802.1x, nếu Switch không hỗ trợ thì client vẫn có thể truy xuất bình thường, nếu Switch hỗ trợ và bật 802.1x thì client phải hỗ trợ và chứng thực thành công mới có thể truy xuất vào mạng, ngược lại client sẽ không thể truy xuất vào mạng.
Các bước cấu hình chứng thực 802.1x:
Port-based authentication đòi hỏi phải có RADIUS để chứng thực và 802.1x chỉ làm việc được duy nhất với RADIUS.
Bước 1: bật AAA trên Switch bằng lệnh sau:
Switch(config)#aaa new-model
Bước 2: chỉ định RADIUS server trên Switch:
Switch(config)#radius-server host hostname [key string]
Có thể lập lại lệnh này nhiều lần để chỉ định nhiều RADIUS server.
Bước 3: chỉ định phương thức chứng thực mà 802.1x dùng là RADIUS:
Switch(config)#aaa authentication dot1x default group radius
Bước 4: bật 802.1x trên Switch:
Switch(config)#dot1x system-auth-control
Bước 5: cấu hình 802.1x trên port:
Switch(config)#interface type mod/num
Switch(config-if)#dot1x port-control auto
force-authorized: port luôn ở trạng thái được chứng thực, tất cả dữ liệu từ client đều được chấp nhận
force- unauthorized: port luôn ở trạng thái không được chứng thực, tất cả dữ liệu từ client đều bị đánh rớt.
auto: bật 802.1x, port sẽ chuyển từ trạng thái unauthorized sang authorized nếu người dùng cung cấp đúng username và password
Bước 6: cho phép nhiều client truy xuất trên một port cấu hình 802.1x, theo mặc định 802.1x chỉ hỗ trợ một client trên port cấu hình 802.1x. Nếu muốn hỗ trợ nhiều client truy xuất trên cùng một port cấu hình 802.1x, ta dùng thêm lệnh sau:
Switch(config-if)#dot1x host-mode multi-host
Một ví dụ cấu hình 802.1x:
Switch(config)#aaa new-model
Switch(config)#radius-server host 10.1.1.1 key BigSecret
Switch(config)#radius-server host 10.1.1.2 key AnotherBigSecret
Switch(config)#aaa authentication dot1x default group radius
Switch(config)#dot1x system-auth-control
Switch(config)#interface range FastEthernet0/1 – 40
Switch(config-if)#switchport access vlan 10
Switch(config-if)#switchport mode access
Switch(config-if)#dot1x port-control auto
(còn tiếp)
VnPro