Saturday, November 20, 2010

[Access Control List] Giới thiệu về ACL

ACL là công cụ để phân loại các packets đi qua router, rất hữu dụng để điều khiển các luồng dữ liệu trên mạng đi qua router.
ACL cũng có thể được sử dụng để ngăn chặn các packets không mong muốn đi ra/vào mạng dựa vào các chính sách security. Ví dụ: cho phép hoặc ngăn chặn một số host trong mạng truy cập vào web server, tài nguyên dữ liệu...


Khi triển khai ACL, nhất thiết phải đề cập đến 2 vấn đề:
  •     -Loại packets nào cần được xem xét bởi ACL
  •     -Đặt ACL tại vị trí nào trong mạng
ACL được triển khai dưới dạng các statements. Mỗi statement sẽ quy định việc mà mỗi packet phải so sánh với các rules đặt ra. Khi đã thực hiện đc các statements thì sẽ cần đặt vào theo hướng inbound hoặc outbount của interface
ACL được thực thi một cách có thứ tự. Các packets sẽ lần lượt được check theo từng statement của ACL. Nếu ko match thì sẽ so sánh đến statement tiếp theo.
Một số quy tắc mà packet sẽ được IOS xử lý theo ACL:
  •     -Luôn được so sánh với mỗi line của ACL theo thứ tự từ trên xuống. Lần lượt từng statement cho đến khi gặp statement cuối cùng
  •     -Mỗi ACL sẽ triển khai một statement để deny ở cuối ACL, nghĩa là nếu các packets ko match một statement nào thì sẽ bị loại bỏ.
Có 2 kiểu ACL chính
  •     -Standard ACL: chỉ sử dụng source IP để so sánh. Tất cả các quyết định đều dựa trên source IP. Điều đó có nghĩa là standard ACL ko quan tâm đó là giao thức nào mà chỉ quan tâm đên việc packets đó đến từ đâu trong mạng.
  •     -Extended ACL: sử dụng cả source và dest IP để so sánh. Extended có thể sử dụng cả các thông tin trong header của layer3 và layer4.Như vậy Extended ACL có thể làm việc được cả với giao thức mạng, từ đó tạo nên sự vững chắc hơn cho ACL.
Khi đã tạo xong ACL thì cần phải sử dụng nó. Việc sử dụng ở đây chính là áp dụng vào một interface nào đó trên router.
Như đã nói ở trên, khi triển khai ACL cần phải biết được nơi đặt ACL trên mạng. Khi đã xác định được vị trí để đặt ACL thì cũng chính là xác định được hướng mà các traffice sẽ đi qua. Điều đó xác định được hướng để app ACL là inbound hay outbound.
  •     -Inbound: đây là hướng mà packets sẽ được xử lý trước khi được routed đến outbound interface.Mọi packets bị denied sẽ ko được route bởi vì chúng đã bị ACL xử lý trước khi đến được routing table.
  •     -Outbound: Ngược lại so với inbound là packet sẽ được routed trước, sau đó mới được ACL xem xét và xử lý.
Lưu ý:
  •     -Chỉ có thể tạo 1 acl trên 1 int cho 1 protocol theo 1 hướng.
  •     -Khi thêm 1 statement mới, statement đó sẽ đc đặt ở trên cùng của ACL
  •     -Ko thể xóa 1 statement từ 1 acl mà sẽ phải xóa toàn bộ acl. Nếu cần thì nên copy acl ra 1 file text sau đó triển khai lại từ đầu, tránh mất các acl quan trọng.
  •     -Nếu ko match với bất kỳ một line nào thì packet sẽ bị loại bỏ. Để tránh việc này thì cuối acl ta sẽ thêm 1 câu lệnh permit any.
  •     -acl đc sử dụng để filter các packet đi qua router, ko filter các packet đi từ router.
=========End part1=========

No comments:

Post a Comment