Cách tạo quy tắc firewall chi tiết từ A đến Z cho người mới bắt đầu

cách tạo quy tắc firewall

Firewall là lớp bảo vệ đầu tiên và quan trọng nhất cho hệ thống mạng. Việc nắm vững cách tạo quy tắc firewall giúp bạn kiểm soát luồng dữ liệu ra vào, ngăn chặn truy cập trái phép và bảo vệ tài nguyên số. Bài viết này sẽ hướng dẫn bạn từ khái niệm cơ bản đến các bước thực hành cụ thể, kèm ví dụ minh hoạ trên các nền tảng phổ biến như Windows Firewall, iptables Linux và pfSense.

Firewall là gì và tại sao cần tạo quy tắc?

cách tạo quy tắc firewall - Hình 3

Firewall hoạt động như một người gác cổng, quyết định gói tin nào được phép đi qua dựa trên bộ quy tắc đã định sẵn. Mỗi quy tắc firewall là một điều kiện kết hợp giữa địa chỉ IP nguồn, địa chỉ IP đích, cổng (port), giao thức (TCP/UDP) và hành động (cho phép hoặc từ chối).

Khi không có quy tắc phù hợp, firewall sẽ áp dụng chính sách mặc định. Thông thường, chính sách an toàn nhất là từ chối tất cả và chỉ cho phép những kết nối cần thiết. Đây là lý do bạn cần hiểu cách tạo quy tắc firewall để mở đúng cổng cho dịch vụ web, email, VPN mà vẫn đảm bảo an ninh.

Phân loại quy tắc firewall

Quy tắc inbound và outbound

Quy tắc inbound kiểm soát lưu lượng từ bên ngoài vào hệ thống. Ví dụ: cho phép truy cập web server qua cổng 80 và 443 từ mọi địa chỉ IP. Quy tắc outbound kiểm soát lưu lượng từ hệ thống ra ngoài. Ví dụ: chỉ cho phép máy trạm truy cập DNS qua cổng 53 và web qua cổng 443.

Xem thêm:  Cách chuyển bố cục Start Menu sang máy mới nhanh chóng và chính xác nhất

Quy tắc dựa trên trạng thái (stateful) và phi trạng thái (stateless)

Firewall stateful ghi nhớ trạng thái kết nối. Khi một gói tin ra ngoài được cho phép, firewall tự động cho phép gói tin trả về mà không cần quy tắc riêng. Firewall stateless xử lý từng gói tin độc lập, yêu cầu quy tắc cho cả hai chiều. Hầu hết firewall hiện đại như Windows Firewall, iptables với module conntrack đều hỗ trợ stateful.

Các thành phần cơ bản trong một quy tắc firewall

cách tạo quy tắc firewall - Hình 2
Thành phần Mô tả Ví dụ
Hành động Cho phép (Allow/Accept) hoặc từ chối (Deny/Drop) Allow
Giao thức TCP, UDP, ICMP, hoặc Any TCP
Địa chỉ nguồn IP hoặc dải IP của người gửi 192.168.1.0/24
Địa chỉ đích IP hoặc dải IP của người nhận 10.0.0.5
Cổng nguồn Cổng xuất phát (thường để Any) Any
Cổng đích Cổng dịch vụ đích 443
Giao diện Card mạng áp dụng quy tắc WAN, LAN

Hướng dẫn cách tạo quy tắc firewall trên Windows

Windows Firewall là giải pháp tích hợp sẵn, phù hợp cho máy trạm và server nhỏ. Cách tạo quy tắc firewall trên Windows gồm các bước sau:

    • Mở Windows Defender Firewall với Advanced Security từ Control Panel hoặc gõ wf.msc trong Run.
    • Chọn Inbound Rules hoặc Outbound Rules tuỳ nhu cầu.
    • Nhấn New Rule ở cột bên phải.
    • Chọn loại quy tắc: Program (cho ứng dụng cụ thể), Port (cho cổng), Predefined (cho dịch vụ Windows), hoặc Custom.
    • Nếu chọn Port, nhập số cổng và giao thức TCP hay UDP.
    • Chọn hành động: Allow the connection, Allow the connection if it is secure, hoặc Block the connection.
    • Chọn profile áp dụng: Domain, Private, Public.
    • Đặt tên và mô tả cho quy tắc, nhấn Finish.

Ví dụ thực tế: Để cho phép Remote Desktop từ mạng nội bộ, tạo quy tắc inbound cho phép TCP cổng 3389 từ dải IP 192.168.1.0/24. Điều này ngăn truy cập từ internet trong khi vẫn hỗ trợ quản trị từ xa trong công ty.

Cách tạo quy tắc firewall trên Linux với iptables

cách tạo quy tắc firewall - Hình 1

iptables là công cụ firewall mạnh mẽ trên Linux, hoạt động ở tầng network. Cách tạo quy tắc firewall với iptables đòi hỏi hiểu biết về chain và table.

Cấu trúc cơ bản của iptables

iptables tổ chức quy tắc vào ba chain mặc định: INPUT (gói tin vào hệ thống), OUTPUT (gói tin ra khỏi hệ thống), FORWARD (gói tin đi qua hệ thống). Mỗi chain có policy mặc định là ACCEPT hoặc DROP.

Các lệnh tạo quy tắc iptables

Lệnh cơ bản: iptables -A [chain] -p [protocol] –dport [port] -s [source] -j [action]

Ví dụ cho phép SSH từ một IP cụ thể:

  • iptables -A INPUT -p tcp –dport 22 -s 203.0.113.5 -j ACCEPT
  • Chặn tất cả SSH còn lại: iptables -A INPUT -p tcp –dport 22 -j DROP

Để lưu quy tắc sau khi reboot, dùng iptables-save > /etc/iptables/rules.v4 trên Ubuntu hoặc service iptables save trên CentOS.

Ví dụ tạo quy tắc cho web server

Giả sử bạn có web server chạy Nginx trên cổng 80 và 443, cần cho phép truy cập từ internet nhưng chặn mọi thứ khác:

  • iptables -P INPUT DROP (chính sách mặc định chặn vào)
  • iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT (cho phép gói tin trả về)
  • iptables -A INPUT -p tcp –dport 80 -j ACCEPT
  • iptables -A INPUT -p tcp –dport 443 -j ACCEPT
  • iptables -A INPUT -i lo -j ACCEPT (cho phép loopback)

Cách tạo quy tắc firewall trên pfSense

pfSense là firewall mã nguồn mở dựa trên FreeBSD, được dùng rộng rãi trong doanh nghiệp. Giao diện web giúp cách tạo quy tắc firewall trực quan hơn.

  1. Đăng nhập vào webConfigurator của pfSense.
  2. Vào menu Firewall > Rules.
  3. Chọn giao diện (WAN, LAN, OPT).
  4. Nhấn nút Add để thêm quy tắc mới.
  5. Cấu hình: Action (Pass, Block, Reject), Protocol, Source, Destination, Port.
  6. Bật logging nếu cần theo dõi.
  7. Nhấn Save và Apply Changes.

Ví dụ: Tạo quy tắc cho phép truy cập VPN WireGuard từ WAN. Đặt Action là Pass, Protocol UDP, Destination port 51820, Source Any. Quy tắc này phải đặt trước quy tắc chặn mặc định ở cuối danh sách.

Lợi ích và hạn chế khi tạo quy tắc firewall

Lợi ích

  • Kiểm soát truy cập chi tiết đến từng cổng và IP.
  • Ngăn chặn tấn công từ bên ngoài như quét cổng, DoS.
  • Bảo vệ dữ liệu nhạy cảm khỏi rò rỉ qua outbound.
  • Tuân thủ các tiêu chuẩn bảo mật như PCI DSS, HIPAA.

Hạn chế

  • Quản lý phức tạp khi số lượng quy tắc lớn, dễ xảy ra xung đột.
  • Không thể phát hiện mã độc trong gói tin đã được mã hoá.
  • Hiệu suất giảm nếu có quá nhiều quy tắc hoặc logging chi tiết.
  • Yêu cầu kiến thức chuyên môn để tránh sai sót gây mất kết nối.

So sánh quy tắc firewall Allow và Deny

Tiêu chí Allow Deny
Mục đích Cho phép lưu lượng hợp lệ Chặn lưu lượng không mong muốn
Vị trí trong danh sách Thường đặt trước quy tắc chặn Đặt sau quy tắc cho phép
Rủi ro Mở quá rộng gây lỗ hổng Chặn nhầm dịch vụ quan trọng
Nguyên tắc Least privilege: chỉ cho phép tối thiểu Default deny: chặn mọi thứ, mở có chọn lọc

Ứng dụng thực tế của quy tắc firewall

Bảo vệ máy chủ web

Máy chủ web cần mở cổng 80 và 443 cho HTTP/HTTPS. Tuy nhiên, nên giới hạn truy cập vào cổng quản trị như 22 (SSH) hoặc 3306 (MySQL) chỉ từ dải IP nội bộ hoặc VPN. Cách tạo quy tắc firewall cho web server thường kết hợp rate limiting để chống brute force.

Kiểm soát truy cập trong mạng nội bộ

Trong mạng doanh nghiệp, quy tắc firewall ngăn nhân viên phòng kế toán truy cập vào server kỹ thuật. Ví dụ: tạo quy tắc outbound từ dải IP phòng kế toán chặn đến subnet 10.0.2.0/24, chỉ cho phép truy cập internet qua proxy.

Chặn ứng dụng không mong muốn

Trên Windows, có thể tạo quy tắc outbound chặn ứng dụng cụ thể như torrent client hoặc phần mềm chat không được phép. Chọn loại quy tắc Program và chỉ định đường dẫn file.exe.

Sai lầm thường gặp khi tạo quy tắc firewall và cách tránh

Đặt quy tắc sai thứ tự

Firewall xử lý quy tắc từ trên xuống. Nếu quy tắc chặn tất cả đặt trước quy tắc cho phép, mọi kết nối đều bị chặn. Luôn đặt quy tắc cụ thể trước, quy tắc tổng quát sau.

Mở cổng quá rộng

Cho phép tất cả địa chỉ IP truy cập vào cổng RDP (3389) là sai lầm phổ biến. Thay vào đó, giới hạn nguồn là dải IP văn phòng hoặc sử dụng VPN.

Quên lưu quy tắc

Trên Linux, quy tắc iptables mất sau khi reboot nếu không lưu. Dùng iptables-persistent hoặc script khởi động để tự động nạp lại.

Không kiểm tra log

Log firewall cung cấp thông tin về kết nối bị chặn, giúp phát hiện tấn công hoặc quy tắc sai. Bật logging cho quy tắc quan trọng và xem định kỳ.

Lưu ý quan trọng khi tạo quy tắc firewall

  • Luôn sao lưu cấu hình firewall trước khi thay đổi để khôi phục nhanh khi xảy ra sự cố.
  • Sử dụng nguyên tắc least privilege: chỉ mở đúng cổng, đúng IP, đúng giao thức cần thiết.
  • Kiểm tra quy tắc bằng công cụ như telnet, netstat, hoặc nmap từ bên ngoài để xác nhận hoạt động đúng.
  • Ghi chú mô tả cho từng quy tắc để dễ bảo trì về sau, đặc biệt khi nhiều người cùng quản trị.
  • Cập nhật quy tắc định kỳ khi có thay đổi về hạ tầng hoặc dịch vụ.

Câu hỏi thường gặp về cách tạo quy tắc firewall

Làm thế nào để kiểm tra quy tắc firewall đã hoạt động?

Sử dụng lệnh telnet từ máy khác để kiểm tra kết nối đến cổng đã mở. Trên Windows, dùng Test-NetConnection trong PowerShell. Trên Linux, dùng nc (netcat) hoặc nmap. Nếu kết nối thành công, quy tắc hoạt động đúng.

Có nên tắt firewall khi cài đặt phần mềm mới?

Không nên tắt hoàn toàn. Thay vào đó, tạo quy tắc tạm thời cho phép ứng dụng hoặc thêm ứng dụng vào danh sách ngoại lệ. Tắt firewall làm hệ thống dễ bị tấn công trong thời gian ngắn.

Quy tắc firewall có ảnh hưởng đến hiệu suất mạng không?

Có, nhưng không đáng kể nếu số lượng quy tắc dưới vài trăm. Tuy nhiên, quy tắc phức tạp như kiểm tra ứng dụng layer 7 hoặc logging chi tiết có thể làm tăng độ trễ. Tối ưu bằng cách sắp xếp quy tắc thường dùng lên đầu.

Làm sao để xoá quy tắc firewall đã tạo?

Trên Windows, vào Windows Defender Firewall with Advanced Security, chọn quy tắc và nhấn Delete. Trên Linux, dùng iptables -D [chain] [rule-number] hoặc iptables -F để xoá tất cả. Trên pfSense, vào Firewall > Rules, nhấn nút X bên cạnh quy tắc.

Quy tắc firewall có thể bảo vệ khỏi virus không?

Firewall không phải là giải pháp chống virus. Nó chỉ kiểm soát kết nối mạng, không quét nội dung file. Virus có thể lây lan qua email hoặc USB mà firewall không ngăn được. Cần kết hợp với antivirus và các biện pháp bảo mật khác.

Kết luận

Cách tạo quy tắc firewall là kỹ năng thiết yếu cho bất kỳ ai quản trị hệ thống mạng. Từ Windows Firewall đơn giản đến iptables mạnh mẽ hay pfSense chuyên nghiệp, nguyên tắc cốt lõi vẫn là xác định rõ nguồn, đích, cổng, giao thức và hành động phù hợp. Áp dụng đúng nguyên tắc least privilege, kiểm tra kỹ trước khi áp dụng và duy trì logging sẽ giúp bạn xây dựng hệ thống firewall vừa an toàn vừa hiệu quả. Hãy bắt đầu với những quy tắc đơn giản, mở rộng dần khi hiểu rõ hơn về luồng dữ liệu trong mạng của bạn.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *