Loading...

KÝ THUẬT LỌC GÓI TRÊN ROUTER/FIREWALL

Nguyên lý hoạt động:

Lọc gói tin (Packet Filter) là một kỹ thuật bảo mật mạng phổ biến hiện nay, nó thường được sử dụng để kiểm soát các gói tin đi qua các cổng nối mạng (router, firewall, …) của các mạng chuyển mạch goi TCP/IP

Bộ lọc gói có thể được thiết lập trên các router/firewall, đóng vai trò cổng nối bảo mật (tại các mạng vành đai) cho các mạng Intranet. Các thiết bị này sẽ làm cho chính sách truy cập/chính sách an ninh của mạng có hiệu lực.

Khi có một gói tin IP được gửi đến router/firewall thì bộ lọc gói bên trong nó sẽ tách phần header của gói tin IP này. Sau đó nó sẽ đối chiếu các thông tin trong header của gói tin với các luật/các chính sách lọc gói đã được thiết lập, để quyết định có định đường cho gói tin chuyển tiếp hay không – cho đi qua hay chặn lại.

Thông tin trong header thường được sử dụng cho việc lọc các gói tin TCP/UDP bao gồm: địa chỉ IP nguồn, địa chỉ IP đích, và có thể là cổng TCP/UDP đích,…

Ngoài ra, trong header của gói IP còn chứa nhiều thông tin khác cho phép người quản trị an ninh hệ thống xây dựng các luật lọc gói dựa trên giao tiếp (interface) của một router nào đó, mà các gói tin sẽ đi ra (outbound) hoặc đi vào (inbound).

Ta có thể chỉ định lọc gói trên cả hai giao diện inbound và outbound. Điều này rất thuận tiện cho việc lọc gói trên những router với nhiều hơn hai interface. Nếu có một vài gói bị chặn lại bởi bộ lọc gói đi vào trên interrface đã chỉ ra thì những gói tin này không cần đề cập trong bộ lọc gói đi ra trên tất cả các interface khác.

Trước đây, khả năng lọc gói trong các router rất hạn chế, thường nó không tách được header. Router yêu cầu người quản trị phải cho nó biết vị trí và độ lớn của trường header trong gói IP để nó kiểm tra. Tức là, nó đòi hỏi người quản trị phải có sự hiểu biết chi tiết về cấu trúc một gói IP. Người quản trị khó có thể thực hiện được điều này với các gói IP mà trong header của nó có nhiều trường tuỳ chọn. Tuy nhiên, hạn chế này đã được khắc phục bởi các router “thông minh” hiện này.

Các luật lọc gói được trình bày như một bảng, gồm nhiều cột: Địa chỉ IP nguồn, địa chỉ IP đích, hành động (định đường cho gói tin đi tiếp hoặc chặn gói tin lại), dịch vụ … và gồm nhiều dòng, mỗi dòng chứa một luật (rule). Thứ tự các luật trên bảng luật ảnh hưởng không nhỏ đến chính sách lọc gói tin của các bộ lọc.

Khi có một gói tin được gửi đến firewall, bộ lọc trên firewall sẽ tách lấy các thông tin cần thiết cho việc lọc gói từ header của các gói tin này: Địa chỉ IP nguồn, địa chỉ IP đích, … Sau đó bộ lọc sẽ tiến hành so khớp thông tin mà nó nhận được từ header của gói tin với các điều kiện được chỉ ra trong mỗi luật, lần lượt từ luật ở đầu bảng đến luật ở cuối bảng luật. Khi gặp luật đầu tiên, mà điều kiện của nó khớp với thông tin trong header của gói tin thì hành động được chỉ ra trong luật này sẽ có hiệu lực – với gói tin đó. Nguyên lý này được gọi là nguyên lý “first match”, nó quyết định việc định đường cho gói tin đi tiếp hay ngăn chặn gói tin lai không cho đi qua.

Hầu hết các bảng luật đều thiết kế một luật đặc biệt đặt ở cuối bảng, luật này xem như mặc định, nó có tác dụng từ chối tất cả các gói tin đi qua bộ lọc/hay đi qua firewall. Điều này có nghĩa là mọi gói tin mà không được chỉ ra trong tập luật của bộ lọc gói trên firewall đều bị firewall chặn lại.

Một ví dụ về lọc gói tin:

Xét trường hợp sau: Mạng của công ty A, sử dụng địa chỉ IP thuộc lớp C, với địa chỉ mạng là 192.168 (192.168.0.0/16). Bên trong mạng này có một mạng đặc biệt, tạm đặt tên là Subnet_A, có địa chỉ là 192.168.6.0/24. Subnet_A dùng để kết nối với các mạng con của các đối tác, mạng của đối tác cũng sử dụng địa chỉ IP thuộc lớp C và với địa chỉ mạng là 192.170. Yêu cầu đặt ra với người quản trị an ninh của hệ thống mạng công ty A là:

a. Cấm mọi sự truy cập từ Internet vào mạng của công ty.

b. Cho phép truy cập vào Subnet_A từ tất cả các mạng con của đối tác (192.170.0.0/16).

c. Mạng con của mạng đối tác, có địa chỉ IP là 192.170.99.0/24, chỉ được truy cập vào Subnet_A, không được truy cập đến bất kỳ khu vực nào của mạng của công ty A.

Với các yêu cầu trên thì tập luật lọc gói sẽ như sau:

Bảng: Bảng luật lọc gói(hay tập luật lọc gói)

          Luật A đáp ứng yêu cầu b. Luật B đáp ứng yêu cầu c. Luật C đáp ứng yêu cầu a. Luật C được xem như luật mặc định, có tác dụng cấm tất cả các gói tin không được xem xét ở các luật ở trên, nó thường được đặt ở cuối bảng luật.

Lưu ý khi thiết kế tập luật lọc gói cho Firewall:

  1. Một tập luật lọc gói tốt có ý nghĩa không kém một thiết bị an ninh tốt. Hầu hết các bộ lọc trên firewall đều dựa trên nguyên lý “first match” để quyết định, chấp nhận cho gói tin đi qua hoặc từ chối không cho gói tin đi qua, - chặn gói tin tại firewall. Do đó, việc quyết định thứ tự các luật lọc gói trên bảng luật ảnh hướng rất lớn đến việc thực hiện chính sách an ninh của firewall sau này.
  2. Một số firewall hiện này có bộ xử lý tập luật lọc gói tin riêng, nó có nhiệm vụ kiểm tra các luật lọc gói mà “bị che khuất” bởi các luật khác. Trong khi người quản trị hệ thống thiết kế tập luật, nếu phát hiện thấy “sự che khuất” này bộ xử lý sẽ thông báo ngay, để họ có thể điều chỉnh kịp thời, để tránh “bị khuất” sau này, nhờ đó mà tất cả các chính sách an ninh của hệ thống đều có hiệu lực trên firewall.
  3. Nên thiết kế các luật lọc gói riêng cho mỗi loại gói tin IP, đặc biệt chú ý đến các loại gói tin có lưu lượng đi qua firewall lớn, thông thường lưu lượng HTTP là lớn nhất. Vậy để firewall hoạt động hiệu quả hơn, bảng luật nên có thêm cột lọc dịch vụ và nên đặt các luật liên quan với lưu lượng HTTP ở vị trí trên cùng của bảng luật. Ví dụ, nên đặt luật cho phép tất cả các host trong mạng nội bộ kết nối HTTP tới bất kỳ hệ thống nào trên Internet và luật cho phép mọi kết nối từ bên ngoài vào web site của Tổ chức, ở trên đỉnh của bảng luật, và tiếp theo là các luật liên quan đến việc từ chối kết nối HTTP.

An ninh mang

Từ khóa:

Ý kiến của bạn

Mã bảo vệ
Làm mới

Hãy đăng quảng cáo trên TuHocAnNinhMang.com

Bài xem nhiều nhất

Tự học lập trình C - Bài 1: Một số khái niệm cơ bản

Khái niệm tên rất quan trọng trong quá trình lập trình, ...

MySQL – Bài 8: Khóa chính (primary key) và khóa ngoại (foreign key) của table

Với ràng buộc này thì, việc người sử dụng vô tình hay cố ...

Tự học lập trình JAVA – Bài 1: Bước đầu với Java

Một chương trình java có thể được định nghĩa như là một ...

Tự học lập trình C - Bài 10: Mảng một chiều

Mảng 1 chiều là tập hợp các phần tử có cùng kiểu dữ ...

Tự học lập trình C - Bài 2: Cấu trúc chương trình C

Một chương trình bao gồm một hoặc nhiều hàm, mỗi hàm ...

Hướng dẫn in ấn trong Word 2007/2010 – Step by Step

[Tự học] - Tiêu đề đầu trang (Header)/tiêu đề cuối ...

Tự học lập trình Assembly - Bài 1: Bước đầu với lập trình Assembly trên vi xử lý Intel 8086/8088

Như đã biết, lệnh ngôn ngữ máy là một dãy các con số 0, ...

Hãy đăng quảng cáo trên TuHocAnNinhMang.com

Về đầu trang Hỏi - Đáp