Xin chào mọi người, chủ đề hôm nay của chúng ta xây quanh câu chuyện về mạng trực tuyến mà cụ thể hơn chính là nói về một chức năng bảo vệ luôn có khi chúng ta dùng mạng internet. Bạn biết đấy những nơi làm việc có bảo vệ, có lắp camera nhắm chức năng chống trộm và giám sát những người có thể vào và nếu thấy có đối tượng khả nghi thì các bảo vệ không cho vào. Đó là hoạt động thực tế của con người vậy còn trên internet thì sao? Để biết được điều đó hãy cùng tìm hiểu về firewall là gì? Cũng như toàn bộ các kiến thức về tường lửa nhé. Bây giờ ta cùng let’s go…
1. Firewall là gì?
Firewall còn được gọi là tường lửa một thiết bị hoặc một loạt các thiết bị bao gồm phần cứng và phần mềm, nó hoạt động trong môi trường mạng được thiết kế để kiểm soát (cho phép hoặc hủy bỏ) các truy cập trong mạng dựa trên các quy tắc được tạo và mô hình kết nối.
Tường lửa phần cứng là thiết bị vật lý có chức năng giám sát và kiểm soát duyệt web. Nó nằm bên ngoài máy tính và kết nối với máy tính khi bạn truy cập mạng phải đi qua nó đầu tiên. Có thể dùng bộ định tuyến cấu hình bảo mật lại để dùng như một tường lửa phần cứng.
Tường lửa phần mềm như Windows Firewall, UFW, IPTables,… nó hoạt động như phần cứng bao gồm các chức năng giám sát và kiểm tra truy cập.
Tường lửa có khả năng tăng tính bảo vệ cho bạn chứ không có chức năng như các phần mềm diệt virus. Bạn có thể hiểu theo cách nó kết hợp với các phần mềm bảo mật khác để tăng thêm khả năng bảo vệ bởi vì nó có chức năng chính giám sát và kiểm soát. Tức là khi bạn vào internet bạn phải bước qua nó, nó sẽ kiểm tra trang web bạn vào trước, nếu có điều khả nghi thì nó chặn không cho bạn vào trang web đó.
Các vùng mạng thường có firewall ngăn cách là: Internet, intranet, Extranet, DMZ.
2. Các chức năng của tường lửa
Tường lửa thực hiện chức năng chính cho phép truy cập từ bên trong ra các tài nguyên bên ngoài và ngược lại nó có thể chặn hoặc cho phép các dịch vụ từ bên ngoài truy cập vào bên trong. Thiết lập các cơ chế điều khiển, cụ thể như
Điều khiển dịch vụ: tường lửa phân tích các dữ liệu ra vào giữa hai mạng bên trong vì bên ngoài để xem xét có phù hợp với luật tường lửa hay không. Nếu nó thỏa mãn được thì sẽ tiến hành xử lý gói tin theo nội dung của luật. Tường lửa có khả năng lọc các lưu lượng truy cập dựa vào địa chỉ IP nguồn hoặc ích, số hiệu cổng nguồn hoặc đích, lọc theo giao thức TCP, IP, UDP, HTTP, FTP, Telnet…tường lửa có thể cung cấp phần mềm ủy nhiệm ( proxy) để thực hiện phiên dịch yêu cầu trước khi chuyển tiếp các yêu cầu dịch vụ đó. Ngoài ra có khả năng tự quản lý phần mềm máy chủ như các dịch vụ web hoặc gmail.
Điều hướng: Khi có các yêu cầu dịch vụ cần thực hiện thì tường lửa sẽ theo dõi, kiểm tra sau đó định hướng theo các yêu cầu cụ thể, có thể được khởi tạo và được phép đi qua.
Điều khiển người dùng kiểm tra việc truy cập của người dùng và những dữ liệu mà người dùng nhận từ mạng bên ngoài. Kiểm soát người dùng và quá trình truy cập tài nguyên của các đối tượng này.
Điều khiển hành vi: tường lửa kiểm soát nội dung lưu thông trên mạng. Điều khiển cách sử dụng dịch vụ ví dụ như lọc thư rác, cho phép truy cập từ bên ngoài vào bên trong mạng. Có thể dùng tường lửa để ghi lại nhật ký hoạt động các xâm nhập mạng và đưa ra các cảnh báo cho người dùng giúp cho người dùng nhanh chóng tìm biện pháp chống lại hành vi xâm nhập trái phép của các hacker.
Một số chức năng nâng cao khác có trong tường lửa thế hệ mới:
Hệ thống phòng chống xâm nhập: vượt trội hơn các tường lửa truyền thống vì nó bao gồm cả một hệ thống có khả năng hoạt động độc lập với các tính năng nổi trội như truy tìm chữ ký, theo dõi, phát hiện và đưa ra các lời cảnh báo kịp thời đối với những hành vi xâm nhập không mong muốn để ngăn chặn các mối đe dọa.
Kiểm tra SSL: tường lửa có khả năng kiểm tra bảo mạng SSL. Các gói tin thông qua lớp bảo mật này để mã hóa thông tin giúp cho thông tin không bị mất đi hoặc không bị đánh cắp. Tường lửa có thể kiểm tra và lọc gói tin bị mã hóa này trước khi nó đi từ ngoài vào trong hệ thống mạng và ngược lại
Phân tích sâu các gói tin: đây là tính năng mới sử dụng nó để phân tích chuyên sâu đi vào chi tiết của các dữ liệu. Dùng để theo dõi các lưu lượng được gửi đi nhằm đảm bảo cho việc thông tin không bị rò rỉ ra ngoài
Sandboxing được tạo ra với mục đích để nhận lưu lượng hoặc mã không xác định nhất định và chạy nó trong môi trường thử nghiệm để xác định xem nó có vấn đề gì hay không.
3. Tường lửa hoạt động như thế nào?
Trước khi yêu cầu truy cập vào mạng internet của bạn được chấp nhận hay không thì yêu cầu đó phải đi qua tường lửa đầu tiên. Tại đây nó dựa theo các quy tắc tường lửa đã được cài đặt trước để tiến hành đánh giá. Các quy tắc đó thường được dựa trên các thông tin như địa chỉ nguồn, địa chỉ đích, giao thức, Port nguồn, Port đích, dịch vụ, Giá trị TTL, dải IP nguồn, dải IP đích, domain nguồn, domain đích, ứng dụng nguồn, ứng dụng đích, thông tin chứng thực. các thông tin của web được yêu cầu sẽ gửi về tường lửa để đối chứng thông qua so với các quy tắc tường lửa. sau khi đánh giá thì nó sẽ ngăn chặn hoặc thông qua các kết nối, đồng thời ghi lại và giám sát các hoạt động truy cập, lưu thông dữ liệu
4. Phân loại tường lửa
Phân loại theo trạng thái: bao gồm phần mềm tường lửa và phần cứng tường lửa hoặc có thể kết hợp cả hai
- Tường lửa phần mềm được cài đặt trên máy chủ, có đặc điểm sau: tính linh hoạt cao vì có thể thêm, bớt các luật, các chức năng; hoạt động ở các tầng cao trong hệ thống tường lửa; có thể kiểm tra được nội dung các gói tin dựa vào các dấu hiệu sẵn có.
- Tường lửa phần cứng được tích hợp trên các thiết bị có các đặc điểm như : không có tính linh hoạt như tường lửa phần cứng vì không thể thêm, bớt các luật, các chức năng; hoạt động ở các tầng thấp trong hệ thống tường lửa; không thể kiểm tra được nội dung các gói tin.
Phân loại theo công nghệ:
- Tường lửa mạng (Network Firewall): chạy trên các thiết bị mạng hoặc máy tính chuyên dụng đặt tại vùng biên giữa các khu vực mạng.
- Tường lửa cá nhân (Personal Firewall): dùng để bảo vệ các thiết bị đầu cuối duy nhất, thường được tích hợp sẵn trong các máy tính, thiết bị di động…
- Tường lửa lọc gói tin ( packet filter firewall): hay còn gọi là tường lửa phi trạng thái vì nó không giữ trạng thái bảng kết nối và không kiểm tra bảng kết nối. Nó được tạo ra với mục đích lọc gói tin dựa trên các đặc điểm đơn giản như địa chỉ nguồn, địa chỉ đích, một số thông tin trên header để quyết định cho phép hay không cho phép gói tin đi qua tại tầng mạng.
- Tường lửa chuyển đổi địa chỉ mạng ( network address translations firewall): có chức năng dịch địa chỉ mạng , chuyển từ địa chỉ IP công cộng thành địa chỉ IP riêng và ngược lại, nó cho phép dấu địa chỉ IP của các máy bên trong mạng. Tuy nó không được xem như tính năng bảo mật nhưng nó giúp phòng tránh các vấn đề tiềm ẩn khác.
- Tường lửa cổng mạch ( Circuit-level firewall): nó hoạt động ở tầng phiên của mô hình OSI thực hiện giám sát các gói tin theo giao thức TCP chạy qua tường lửa. Những lưu lượng được phép đi ra sẽ được điều chỉnh để xuất phát từ cổng mạch vòng với mục đích che giấu thông tin của mạng được bảo vệ. Nếu các lưu lượng không được cho phép sẽ bị chặn lại ở tầng mạng
- Tường lửa proxy ( proxy firewall): hoạt động tại tầng ứng dụng của mô hình OSI. Đóng vai trò trung gian giữa hai thiết bị đầu cuối. Khi người dùng truy cập dịch vụ từ bên ngoài nó sẽ đại diện nhận câu trả lời bên ngoài đó và trả lời lại cho người dùng bên trong. Điều này giúp người dung bên trong được ẩn danh và tránh được các nguy cơ ví dụ như lộ thông tin dữ liệu người dùng.
- Tường lửa trạng thái ( stateful firewall): loại tường lửa tổng hợp kết hợp các loại tường lửa khác như tường lửa chuyển đổi địa chỉ IP, tường lửa cổng mạch và tường lửa proxy. Dùng các luật tường lửa của ứng dụng, luân phiên và luật lọc các gói tin để kiểm tra đặc điểm của gói tin, kiểm tra và lưu trạng thái của các gói tin đi qua tường lửa.
- Tường lửa thế hệ tiếp theo (Next-generation firewalls – NGFW): loại tường lửa mới tích hợp nhiều tính năng như phân tích chuyên sâu các gói dữ liệu, phát hiện xâm nhập, ngăn và kiểm tra lưu lượng được mã hóa.
- Tường lửa Tường lửa ứng dụng web (Web application firewall – WAF): mục đích dùng để bảo vệ máy chủ ứng dụng. Các tường lửa được sử dụng cho các ứng dụng cụ thể thay vì được đặt trên một điểm vào hoặc ra của một mạng lưới rộng hơn.
- Tường lửa trong suốt ( transparent firewall ): hoạt động ở tầng liên kết dữ liệu của mô hình OSI, có chức năng làm cầu nối kết hợp với hỗ trợ khả năng lọc gói tin IP ( có các giao thức TCP, IP, UDP, ICMP) bằng cách dùng chức năng truy cập theo ngữ cảnh. Vì tường lửa này hoạt động ở tầng 2 nên không cần cấu hình địa chỉ IP cũng như thay đổi địa chỉ IP của các thiết bị cần bảo vệ.
- Tường lửa ảo ( virtual firewall) : bao gồm nhiều tường lửa hoạt động trên một thiết bị vật lý. Thường được sử dụng trong việc quản lý các máy ảo trong hệ thống ảo hóa VMWare hay Hyper-V.
5. Quy tắc tường lửa
Quy tắc tường lửa là những quy tắc được thiết lập sẵn được tường lửa sử dụng để kiểm tra xem xét các lưu lượng truy cập có thể thông qua hay không. Hãy xem ví dụ bên dưới:
Ví dụ bạn có một danh sách luật tường lửa sau:
- Chấp nhận lưu lượng truy cập mới và được thiết lập vào giao diện mạng công cộng trên cổng 80 và 443 (lưu lượng truy cập web HTTP và HTTPS)
- Thả lưu lượng truy cập đến từ địa chỉ IP của nhân viên phi kỹ thuật trong văn phòng của bạn xuống cổng 22 (SSH)
- Chấp nhận lưu lượng truy cập mới và được thiết lập từ dải IP văn phòng của bạn vào giao diện mạng riêng trên cổng 22 (SSH)
Ứng với quy tắc trên, nếu yêu cầu truy cập dịch vụ của bạn khớp một hoặc toàn bộ quy tắc thì lưu lượng truy cập của bạn được phép thông qua. Ngược lại nếu không thỏa mãn các luật trên bạn sẽ bị chặn lại và tường lửa thông báo với bạn rằng lỗi truy cập phương tiện.
Thông thường khi truy cập thì tường lửa sẽ xét duyệt bộ quy tắc theo thứ tự từ trên xuống dưới. khi thỏa mãn một quy tắc thì các hành động liên quan sẽ được thực hiện. ở ví dụ trên nếu một nhân viên phòng tài vụ cố gắng kết nối SSH với máy chủ thì nhân viên đó bị từ chối truy cập theo nguyên tắc thứ hai, chưa tính đến nguyên tắc thứ 3 vẫn không thỏa mãn, nghĩa là khi chỉ cần đến một quy tắc thì họ đã bị từ chối truy cập. Tuy nhiên, đối với một quản trị viên hệ thống thì sẽ được thông qua vì thỏa mãn quy tắc thứ ba.
Các quy tắc tường lửa thường mặc định có sẵn, nó chỉ thực hiện các lệnh chấp nhận, từ chối hoặc bỏ mà không xử lý các hành động cụ thể. Thông thường thì gói tin hoặc kết nối sẽ được xử lý như sau:
Accept: Tường lửa chấp nhận cho gói tin/kết nối đi qua và đến nơi cần đến.
Deny: Tường lửa bỏ qua gói tin/kết nối, sau đó một thông báo lỗi sẽ được gửi đến nơi xuất phát của gói tin.
Discard: Tường lửa bỏ qua gói tin và không thông báo gì cho nơi gửi.
Ví dụ đối với quy tắc trên, nếu mặc định của nó ta để “thả” thì bất kỳ máy tính bên ngoài truy cập vào đều bị từ chối truy cập vì không phù hợp với quy tắc. Nhưng nếu ta đặt mặc định thành “chấp nhận” thì bất kỳ ai, ngoại trừ nhân viên phi kỹ thuật của bạn, cũng có thể truy cập kết nối với máy chủ, điều này không tốt tí nào.
Các quy tắc tường lửa thường được dựa trên các thông tin như địa chỉ nguồn, địa chỉ đích, giao thức, Port nguồn, Port đích, dịch vụ, Giá trị TTL, dải IP nguồn, dải IP đích, domain nguồn, domain đích, ứng dụng nguồn, ứng dụng đích, thông tin chứng thực.
6. Làm thế nào để bật tắt tường lửa.
Bước 1: nhấn start (hoặc phím Fn + windows) => Control Panel
Bước 2: trong ô cửa sổ control Panel chọn System and Security
Bước 3: chọn windows firewall
Bước 4: kích chuột chọn change notification settings để tùy chỉnh bật hoặc tắt tường lửa
Bước 5: khi cửa sổ hiện ra, bạn tìm đến mục có tên home or work (private) networks và mục public networks. Nếu muốn bật tường lửa cả hai điều chọn turn on windows firewall. Nếu muốn tắt tường lửa cả hai điều chọn turn off windows firewall ( not recommended) sau đó nhấn ok là được.
Lưu ý: khi bạn cài đặt phần mềm diệt virus bạn có thể tắt tường lửa bởi vì trong phần mềm diệt virus có tích sẵn tường lửa, ngoài ra nó có khả năng gây xung đột với tường lửa làm cho máy tính chạy chậm đi, do đó bạn hãy tắt tường lửa khi dùng phần mềm diệt virus
Kết luận, tường lửa giúp kiểm tra, giám sát các hành vi truy cập, các luồng dữ liệu thực hiện các lệnh ngăn chặn hay thông qua dựa trên các quy tắc được thiết lập do đó vấn đề bảo mật nếu dựa vào mình nó thì không thể đảm bảo, cần phải kết hợp thêm các phần mềm khác dùng proxy, các giao thức bảo mật an toàn và nâng cao khác,… ngoài ra bạn có thể dùng kết hợp tường lửa phần cứng và phần mềm, dùng phần mềm diệt virus.