Tìm hiểu về ACL (Access Control List)
Nội dung bài viết
1. Khái niệm
– Access Control List (ACL) hay còn được gọi kiểm soát truy cập. Là một danh sách các điều kiện được áp đặt vào các cổng của router để lọc các gói tin đi qua nó. Danh sách này chỉ ra cho router biết loại dữ liệu nào được cho phép (allow) và
loại dữ liệu nào bị hủy bỏ (deny). Sự cho phép và huỷ bỏ này có thể được kiểm tra dựa vào địa chỉ nguồn, địa chỉ đích, giao thức hoặc chỉ số cổng.
– Thông qua sự bảo mật cho các thiết bị ở tầng 3 (layer 3) mà nó kiểm soát khả năng kết nối từ thiết bị định tuyến đến các thiết bị khác .
2. Phân loại
– Standard ACL:
- Dải số cho Standard ACL từ 1 – 99
- Có thể chặn được Network, Host và Subnet
- Chặn toàn bộ các dịch vụ
- Thực hiện tại điểm gần nhất với đích
- Cơ chế lọc được thực hiện dựa trên địa chỉ IP nguồn
– Extended ACL :
- Dải số cho Extended ACL từ 100-199
- Có thể đồng ý hoặc chặn bất cứ một Network, Host, Subnet, hoặc cả dịch vụ
- Được lựa chọn các dịch vụ muốn chặn
- Cơ chế lọc được dựa trên địa chỉ IP nguồn, IP đích, giao thức, cổng
3. Cách thức hoạt động của Access Control List (ACL)
– Access Control List (ACL) sẽ thực hiện việc kiểm tra theo trình tự của các điều kiện trong danh sách cấu hình. Nếu có một điều kiện được so khớp trong danh sách thì nó sẽ thực hiện hành động tương ứng trong điều kiện đó, và các điều kiện còn lại sẽ không được kiểm tra nữa. Trường hợp tất cả các điều kiện trong danh sách đều không khớp thì một câu lệnh mặc định “deny any” được thực hiện, nó có nghĩa là điều kiện cuối cùng ngầm định trong một ACL mặc định sẽ là cấm tất cả. Vì vậy, trong cầu hình ACL cần phải có ít nhất một câu lệnh có hành động là “permit”.
– Khi có gói tin đi vào một cổng, router sẽ kiểm tra xem có ACL nào được đặt trên cổng đó hay không để kiểm tra, nếu có thì các gói tin sẽ được kiểm tra với những phải có điều kiện trong danh sách. Nếu gói tin đó được cho phép bởi ACL, nó sẽ tiếp tục được kiểm tra trong bảng định tuyến để quyết định chọn cổng ra để đi đến đích.
– Tiếp đó, router sẽ kiểm tra xem trên cổng dữ liệu chuyển ra có đặt ACL hay không. Nếu không thì gói tin đó có thể sẽ được gửi tới mạng đích. Nếu có ACL thì nó sẽ kiểm tra với những điều kiện trong danh sách ACL đó.
– Danh sách điều khiển truy cập (ACL – Access Control List) cho phép khai báo những địa chỉ nào được chuyển đổi. Bạn nên nhớ là kết thúc một ACL luôn có câu lệnh ẩn cấm tuyệt đối để tránh những kết quả không dự tính được khi một ACL có
quá nhiều điều kiện cho phép. Cisco khuyến cáo là không nên dùng điều kiện cho phép tất cả “permit any” trong ACL sử dụng cho NAT vì câu lệnh này làm hao tốn quá nhiều tài nguyên của Router và do đó có thể gây ra sự cố mạng.
4. Câu lệnh cấu hình Access Control List (ACL)
Để hiểu cách cấu hình ACL, cần phải hiểu một số thuật ngữ sau:
– “Wildcard mask” có 32 bit (0 & 1), chia thành 4 phần, mỗi phần có 8 bit, là tham số được dùng xác định các bit nào sẽ được bỏ qua hay buộc phải so trùng trong việc kiểm tra điều kiện. Bit “1‟ có nghĩa là bỏ qua vị trí bit đó khi so sánh và bit “0‟ xác định vị trí bit đó phải giống nhau. Mặc dù cấu trúc giống subnet mask nhưng chúng hoạt động khác nhau (xem lại phần địa chỉ IP)
– Với Standard ACL, nếu không thêm “wildcard-mask” trong câu lệnh tạo ACL thì mặc định sẽ là 0.0.0.0
– “Wildcard mask” dùng cho một thiết bị hay còn gọi là “wildcard-host” có dạng: 0.0.0.0 (kiểm tra tất cả các bit). Khi kiểm tra ACL, nó sẽ kiểm tra tất cả các bit trong địa chỉ dùng để so khớp. Từ khóa “host” được thay thế cho thuật ngữ này.
– Wildcard mask cho tất cả các thiết bị được gọi là wildcard “any” có dạng: 255.255.255.255 (không kiểm tra tất cả các bit). Từ khóa “any” được thay thế cho thuật ngữ này.
**Lưu ý: Khi áp dụng Access Control List (ACL) trên một cổng, phải xác định ACL đó được dùng cho luồng dữ liệu vào (inbound) hay ra (outbound). Chiều của luồng dữ liệu được xác định trên cổng của router.
Cấu hình của Standard CL
“Standard CL” kiểm tra điều kiện dựa vào địa chỉ nguồn trong các gói tin và thực hiện hành động cấm hoặc cho phép tất cả các lưu lượng từ một thiết bị hay một mạng xác định nào đó.
Router(config)# access-list <ACL-number> {permit|deny} source [wildcast-mask]
– Để gán ACL vào một cổng và đặt chế độ kiểm tra cho luồng dữ liệu đi vào hay đi ra khỏi cổng của router, ta sử dụng câu lệnh sau:
Router(config-if)#ip access-group <ACL-number> {in|out}
Cấu hình của Extended ACL
“Extended ACL” cung cấp sự điều khiển linh hoạt hơn “Standard ACL”. Nó kiểm tra cả địa chỉ nguồn, địa chỉ đích, giao thức, chỉ số cổng ứng dụng. “Extended ACL” thực hiện hành động cấm hay cho phép ở một số ứng dụng xác định.
Router(config)#access-list <access-list-number> {permit|deny} <protocol> <source-address> <source-wildcard> <destinationaddresss> <destination-wildcard> <operation> <operand>
VD: R1(config)#access-list 100 deny tcp 172.16.10.0 0.0.0.255 host 192.168.1.20 eq 20
Để kiểm tra cấu hình ACL, sử dụng câu lệnh
Router#show access-list {access-list-number | name}
5. Kết luận
Access Control List (ACL) có thể xem như là một tường lửa nhỏ định ra một tập luật để chặn các truy cập bất hợp pháp được cấu hình trên các router.
ACL được chia làm hai loại: standard ACL và Extended ACL. Trong đó, standard ACL thường được đặt ở gần đích, còn Extended ACL thường đặt ở gần nguồn cần cấm luồng dữ liệu.
Hết!
[…] Tìm Hiểu Về ACL (Access Control List) (Series Tự Học CCNA [A-Z] – Chương 5) -…… […]