Các giải pháp tường lửa là cần thiết cho các hệ thống mạng, ứng dụng web, máy chủ để tăng cường bảo mật, thực hiện áp dụng các chính sách cũng như phát hiện và ngăn chặn sớm sự cố.
Giải pháp tường lửa là gì?
Firewall (hay các giải pháp tường lửa) vốn có nguồn gốc từ trong thiết kế và xây dựng để chống hỏa hoạn. Trong ngành CNTT, Firewall có thể là một thiết bị, hệ thống phần cứng hoặc phần mềm đều có mục đích chung là để phòng chống và ngăn căn sự truy cập trái phép, ngoài mong muốn vào hệ thống cần được bảo vệ. Nó chốt chặn tại các vị trí xung yếu (như điểm vào – ra) của luồng dữ liệu để kiểm soát, lọc, hay chặn nếu cần thiết. Mọi Firewall đều phải có ít nhất hai giao tiếp mạng, một đầu ra nối với hệ thống mạng cần bảo vệ, một đầu vào nối với hệ thống mạng bên ngoài. Nó có thế ở gateway, bridge,…
Nguyên lý hoạt động của tường lửa
Lấy giao thức TCP/IP làm nền tảng, các giải pháp tường lửa chủ yếu xử lý các luồng dữ liệu đi và đến thông qua việc kiểm soát các gói tin (data packet). Bằng bộ lọc của mình, chúng có thể từ chối, hủy bỏ các gói tin nó nhận được dựa vào việc nó có phù hợp với các luật hay các giới hạn được thiết đặt cho Firewall. Một số tiêu chí cụ thể thường được quan tâm trong các hệ thống Firewall, cụ thể như sau:
- Địa chỉ IP nguồn (IP Source)
- Cổng TCP (hoặc UDP) nguồn
- Địa chỉa IP đích (IP Destination)
- Cổng TCP (hoặc UDP) đích
- Protocol của gói tin (HTTP, TCP, ICMP, UDP, …)
- Độ dài gói tin (Length)
- Các thông tin phụ khác …
Có hai cách thức đặt luật lọc gói tin của Firewall đó là whitelist và blacklist
- Whitelist: chỉ các gói tin phù hợp với các luật trong Firewall mới được coi là hợp lệ và cho phép đi qua, các gói tin khác mặc định sẽ bị loại bỏ.
- Blacklist: các gói tin mặc định sẽ được cho phép đi qua, các gói tin “match” với các luật trong Firewall sẽ bị loại bỏ
Tùy từng nhu cầu, mục đích sử dụng mà người quản trị sẽ sử dụng hình thức whitelist, blacklist hoặc cả hai cách thức nói trên.
Chức năng của một giải pháp tường lửa
Do chốt chặn tại điểm vào, ra của hệ thống mạng nội bộ, Firewall điểu khiển và kiểm soát được dòng thông tin qua lại nó cụ thể như sau:
- Cho phép / Ngăn chặn một dịch vụ nào đó truy cập ra ngoài hoặc vào trong
- Cho phép / Ngăn chặn một tập, dải các IP nào đó được phép truy cập tới hoặc truy cập đi
- Cho phép / Ngăn chặn một giao thức nào đó được quyền đi qua hay không
- Theo dõi, có thể thống kê lưu lượng thông tin trao đổi giữa bên ngoài và bên trong
- Kiểm soát người dùng và việc truy cập của người dùng
Các giải pháp tường lửa
1. Firewall tầng mạng – Bộ lọc gói tin (Packets filters)
Firewall này hoạt động ở tầng mạng trong mô hình OSI hoặc IP của TCP/IP. Ở đây, các gói tin đến và đi sẽ đi qua bộ lọc, chỉ những gói tin nào phù hợp mới được đi tiếp, còn không chúng sẽ bị loại bỏ. Các Firewall hiện đại ngày nay có thể tiến hành lọc các gói tin dựa trên rất nhiều trường như theo địa chỉ IP, port nguồn, port đích, dịch vụ đích, giá trị Time to live…
Ưu | Nhược |
|
|
Một số loại Firewall nổi tiếng loại này đó là ipf (Unix), ipfw (FreeBSD / Mac OS X), pf (Open BSD), iptables (Ubuntu / Linux):
- Firewall giữ trạng thái
Loại Firewall này lưu lại trạng thái của các phiên làm việc đang hoạt động. Nó sử dụng thông tin trạng thái để tăng tốc xử lý các gói tin. Bất kỳ các kết nối đang diễn ra đều có rất nhiều các thuộc tính kèm theo, như địa chỉ IP nguồn, đích, cổng TCP hoặc UDP, trạng thái của kết nối đó (thông tin khởi tạo phiên, quá trình handshake, dữ liệu chuyển qua loại) Nếu một gói tin gửi đến, nó sẽ bị kiểm tra xem có phù hợp với các luật của một kết nối đang có hay không, nếu có, nó sẽ được pass qua mà không xử lý gì thêm, nếu không nó sẽ được xử lý và coi như của một kết nối mới.
- Firewall không trạng thái
Ưu điểm của loại này đó là đòi hỏi ít về bộ nhớ, có tốc độ lọc nhỉnh hơn nếu chỉ cần lọc gói tin ở mức độ thấp (không mất thời gian tìm kiếm session). Tuy nhiên, nó không thể đưa ra các quyết định phức tạp dựa trên trạng thái của kết nối
2. Firewall tầng ứng dụng
Đây là một dạng của firewall quản lý, vào, ra, bởi một phần mềm hoặc dịch vụ. Chúng có thể lọc các gói tin ở tầng ứng dụng trong mô hình OSI chẳng hạn như các Http GET / POST; ghi lại các hoạt động vào ra, login logout của user. Điều này không thể thực hiện được với các Firewall tầng dưới. Nó cũng giúp cho một ứng dụng xác định xem liệu có nên chấp nhận một kết nối nào kết nối tới không.
3. Proxy Server
Một Proxy Server (có thể là phần cứng hoặc phần mềm) sẽ đóng vai trò là Firewall bằng cách phản hồi tới các gói tin input (ví dụ các connection request) như một phần mềm thông thường, nhưng sẽ chặn lại các gói tin không hợp lệ. Proxy làm cho việc tamper dữ liệu mạng cần bảo vệ từ bên ngoài trở nên khó khắn hơn. Ở một số công ty chú trọng tới bảo mật thông tin hiện nay, hình thức này khá phổ biến. Tất cả các máy trọng mạng con muốn kết nối ra ngoài Internet đều phải đi qua proxy này.Vì vậy, việc kiểm duyệt các luồng thông tin ra vào hệ thống cần bảo vệ được quản lý tập trung và dễ dàng bảo trì.
4. Network Address Translation (NAT)
Firewall thường có chức năng NAT, các địa chỉ chính xác của các máy trong mạng con sẽ được giấu đi. Ban đầu, NAT được phát triển để giải quyết số lượng hạn chế địa chỉ IPv4, từ đó có thể tiết kiệm được việc phải cấp địa chỉ public cho các máy tính của một tổ chức hay công ty nào đó. Việc giấu đi địa chỉ của các thiết bị cần bảo vệ dần trở thành vấn đề ngày càng quang trọng trong việc phòng chống các phần mềm quét lỗ hổng.
Trong bài tới tôi sẽ tiếp tục giới thiệu và đánh giá một số sản phẩm Firewall nổi tiếng trên thị trường. Bao gồm các giải pháp tường lửa cho máy chủ và các giải pháp tường lửa cho máy tính cá nhân.