Giới thiệu dự án

Bối cảnh và thực trạng an toàn thông tin

Trong kỷ nguyên chuyển đổi số và phát triển mạnh mẽ của các dịch vụ trực tuyến, việc kết nối hệ thống mạng cục bộ (LAN - Local Area Network) của các cơ quan, tổ chức, trường học và doanh nghiệp với mạng Internet toàn cầu đã trở thành yêu cầu bắt buộc. Tuy nhiên, việc mở rộng kết nối này cũng khiến hạ tầng mạng nội bộ đối mặt với các nguy cơ an ninh nghiêm trọng. Theo các báo cáo an toàn thông tin toàn cầu từ Symantec, thiệt hại do tội phạm mạng gây ra đã vượt ngưỡng 110 tỷ USD mỗi năm, với hơn 556 triệu nạn nhân trên toàn thế giới và 75% các lỗ hổng xuất phát từ các dịch vụ mạng/web.

Tại Việt Nam, các khảo sát của Hiệp hội An toàn Thông tin Việt Nam (VNISA) chỉ ra rằng có tới 78% website tên miền .vn tồn tại các lỗ hổng có thể bị tấn công toàn diện, tỷ lệ máy tính nhiễm mã độc duy trì ở mức cao (18,1/1000 máy), trong khi hơn 70% doanh nghiệp và tổ chức chỉ dành dưới 10% ngân sách công nghệ thông tin (CNTT) cho hạng mục bảo mật. Phần lớn các mạng LAN nội bộ chưa được phân vùng cách ly đúng chuẩn, thiếu hụt cơ chế giám sát lưu lượng tập trung và đối mặt với các hình thức tấn công nguy hiểm như: Scan cổng, bắt gói tin (Sniffing), bẻ khóa mật khẩu (Password Cracking), lây nhiễm mã độc nội bộ (Trojan/Virus), tấn công giả mạo (Masquerading/Spoofing) và đặc biệt là tấn công từ chối dịch vụ (DoS/DDoS, SYN Flood).

+-----------------------------------------------------------------------------+
|                            NGUY CƠ AN NINH MẠNG LAN                         |
+-----------------------------------------------------------------------------+
|  - Rò rỉ dữ liệu qua sniffing & promiscuous mode trên switch/hub             |
|  - Tấn công khai thác lỗ hổng dịch vụ Web, Mail, DNS từ ngoài Internet     |
|  - Mã độc nội bộ lây lan ngang hàng (Lateral Movement)                       |
|  - Tấn công cạn kiệt tài nguyên (SYN Flood, Ping of Death, HTTP DoS)         |
|  - Thiếu hụt địa chỉ IPv4 công cộng, cần cơ chế NAT bảo vệ hạ tầng IP ẩn   |
+-----------------------------------------------------------------------------+

Vấn đề nghiên cứu và các điểm nghẽn kỹ thuật (Pain Points)

  1. Thiếu khả năng phân vùng an toàn: Các máy chủ cung cấp dịch vụ công cộng (Web Server, Mail Server, DNS Server) thường đặt chung phân đoạn mạng với máy trạm nội bộ (Internal LAN), dẫn đến nguy cơ khi một máy chủ bị thỏa hiệp (compromised), toàn bộ mạng LAN sẽ bị chiếm quyền điều khiển.
  2. Chi phí đầu tư thiết bị bảo mật phần cứng đắt đỏ: Các thiết bị phần cứng tường lửa thương mại chuyên dụng (Cisco ASA, Juniper, Check Point) có chi phí bản quyền và thiết bị rất lớn, vượt quá khả năng tài chính của các trường học, viện đào tạo và doanh nghiệp vừa và nhỏ (SMEs).
  3. Cạn kiệt dải địa chỉ IPv4 công cộng: Nhu cầu cho phép hàng trăm máy trạm nội bộ truy cập Internet đồng thời chỉ với một hoặc số lượng rất ít địa chỉ IP tĩnh công cộng đòi hỏi một hệ thống chuyển đổi địa chỉ mạng (NAT) có hiệu năng cao và ổn định.
  4. Hiệu năng xử lý và kiểm soát luồng gói tin: Cần một giải pháp tường lửa linh hoạt tại tầng nhân (Kernel-level) có khả năng theo dõi trạng thái kết nối (Stateful Inspection), phân tích sâu gói tin theo cờ TCP, lọc cổng linh hoạt và ngăn chặn các đợt bão gói tin DoS/SYN Flood mà không làm suy giảm băng thông hệ thống.

Mục tiêu của đồ án

Đồ án tập trung nghiên cứu toàn diện và giải quyết các bài toán sau:

  1. Khảo sát và hệ thống hóa lý thuyết bảo mật mạng: Phân tích các lỗ hổng loại A, B, C; các cơ chế tấn công phổ biến (Sniffer, Trojan, DoS/DDoS) và giải pháp phòng thủ trên hạ tầng mạng LAN/WLAN/VLAN.
  2. Nghiên cứu kiến trúc phân vùng vùng phi quân sự (DMZ - Demilitarized Zone): Thiết kế mô hình kiến trúc Screened Subnet Firewall phân tách ba vùng mạng độc lập: Mạng ngoài (Internet/WAN), Vùng máy chủ công cộng (DMZ) và Mạng máy trạm tin cậy nội bộ (Internal LAN).
  3. Nghiên cứu nguyên lý hoạt động của Netfilter/IPtables trên Linux: Đánh giá chi tiết cơ chế xử lý gói tin qua các bảng (Filter, NAT, Mangle, Conntrack) và các chuỗi (PREROUTING, INPUT, FORWARD, OUTPUT, POSTROUTING).
  4. Hiện thực hóa hệ thống tường lửa IPtables trên nền Red Hat Enterprise Linux / CentOS: Viết các kịch bản cấu hình bảo vệ mạng LAN, định tuyến gói tin, phân giải cổng NAT (DNAT/SNAT/Masquerade), quản lý kết nối stateful và thiết lập cơ chế chống tấn công DoS/SYN Flood.
  5. Thực nghiệm, đo lường và đánh giá hiệu năng: Triển khai mô hình mạng thực nghiệm tại Trường Cao đẳng Công nghệ Thông tin Hữu Nghị Việt - Hàn; kiểm thử thành công khả năng định tuyến dịch vụ, lọc lưu lượng và ngăn chặn tấn công mô phỏng bằng công cụ chuyên dụng.

Phương pháp tiếp cận giải pháp

Giải pháp được xây dựng dựa trên sự kết hợp giữa:

  • Kiến trúc mạng Screened Subnet (DMZ): Tách biệt hoàn toàn luồng dữ liệu của người dùng nội bộ và máy chủ dịch vụ.
  • Tường lửa lọc gói trạng thái Netfilter/IPtables: Ứng dụng module lọc gói tin được nhúng trực tiếp trong nhân Linux Kernel (2.4/2.6/3.x trở lên), đem lại tốc độ xử lý gói tin ở mức dây cáp mạng (wire-speed) mà không yêu cầu chi phí mua phần mềm bản quyền.
  • Chiến lược an ninh Default Deny Stance & Least Privilege: Toàn bộ lưu lượng mặc định bị chặn (DROP), chỉ cho phép các cổng dịch vụ và dải địa chỉ IP đã được thẩm định tường minh đi qua.

Kết quả kỳ vọng và các chỉ số đo lường

  • Khả năng cách ly mạng: 100% các kết nối trái phép từ Internet và vùng DMZ vào mạng LAN nội bộ bị chặn triệt để.
  • Hiệu năng chuyển tiếp và NAT: Đảm bảo tốc độ forward gói tin đạt trên 95% băng thông tối đa của giao diện mạng, độ trễ phát sinh do xử lý luật lọc dưới 2ms.
  • Khả năng chống đỡ tấn công DoS: Chống nghẽn hạ tầng khi chịu các cuộc tấn công SYN Flood với ngưỡng thiết lập limit-burstlimit chính xác, đảm bảo dịch vụ Web/Mail không bị sập (downtime = 0%).
  • Độ tin cậy của dịch vụ: Phân giải tên miền (DNS - port 53), duyệt web (HTTP/HTTPS - port 80/443), truyền tải file (FTP - port 20/21) và gửi nhận thư điện tử (SMTP/POP3/IMAP - port 25/110/143) hoạt động thông suốt qua cơ chế DNAT/SNAT.

Phạm vi và giới hạn của đề tài

  • Phạm vi: Thiết kế, cài đặt, cấu hình và đánh giá hệ thống tường lửa Linux IPtables trên mô hình 3 card mạng vật lý kết nối mạng LAN, DMZ và WAN/Internet. Cấu hình dịch vụ Web (Apache), Mail (Postfix/Dovecot), DNS (BIND9) và kiểm thử tấn công bằng httpdos / SYN flood.
  • Giới hạn: Hệ thống IPtables tập trung lọc gói ở tầng Mạng (Network Layer - Layer 3) và tầng Giao vận (Transport Layer - Layer 4) cùng kiểm tra trạng thái phiên (Stateful Inspection). Hệ thống chưa tích hợp tính năng kiểm tra sâu nội dung gói tin tầng ứng dụng (Deep Packet Inspection - L7 DPI) hay chữ ký virus động, vốn cần tích hợp thêm các hệ thống IDS/IPS nâng cao như Snort hoặc Suricata.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

So sánh các giải pháp tường lửa hiện nay

Để lựa chọn giải pháp phù hợp nhất cho mô hình mạng giáo dục và doanh nghiệp, đồ án tiến hành đánh giá ba nhóm công nghệ tường lửa chính:

Tiêu chí so sánh Tường lửa phần cứng chuyên dụng (Hardware Firewall - Cisco/Juniper) Tường lửa phần mềm thương mại (Software Proxy - WinGate, ISA, ZoneAlarm) Tường lửa Linux Netfilter/IPtables (Đề xuất)
Vị trí hoạt động Thiết bị độc lập, chip ASIC/ASSP chuyên dụng Tầng ứng dụng / Driver trên HĐH máy chủ Tích hợp sâu trong Nhân Linux (Kernel Space)
Tốc độ xử lý Rất cao (Hàng chục Gbps) Trung bình (Bị phụ thuộc tài nguyên OS) Rất cao (Tiệm cận tốc độ phần cứng, lọc mức Kernel)
Chi phí đầu tư Rất đắt ($2,000 - $20,000+) Trung bình (Chi phí License theo User/Year) 0 VNĐ (Mã nguồn mở miễn phí)
Tính linh hoạt & Tùy biến Giới hạn theo Firmware của hãng Hạn chế theo tính năng đóng gói sẵn Cực cao (Tùy biến Shell Script, Rules, Hooks)
Hỗ trợ NAT & Stateful Toàn diện Cơ bản Toàn diện (SNAT, DNAT, Masquerading, Conntrack)
Khả năng phân vùng DMZ Hỗ trợ qua VLAN / Cổng vật lý Phức tạp, khó cấu hình chuẩn Hỗ trợ tối ưu qua cấu hình đa giao diện mạng (Multi-NIC)

Phân loại yêu cầu hệ thống theo mô hình MoSCoW

  • Must Have (Bắt buộc phải có):
    • Bật tính năng chuyển tiếp gói tin IP Forwarding trên Linux Kernel (/proc/sys/net/ipv4/ip_forward).
    • Chính sách chặn mặc định: iptables -P INPUT DROP, FORWARD DROP, OUTPUT ACCEPT.
    • Cơ chế NAT: Đóng giả địa chỉ IP nguồn (SNAT/Masquerade) cho mạng LAN truy cập Internet và chuyển tiếp cổng (DNAT) từ IP Public vào các dịch vụ DMZ.
    • Phân tách ba vùng mạng vật lý: Interface eth0 (Internet), eth1 (DMZ Servers), eth2 (Internal LAN).
  • Should Have (Nên có):
    • Lọc gói tin theo trạng thái kết nối: Cho phép gói ESTABLISHEDRELATED quay lại hệ thống.
    • Cơ chế giới hạn tốc độ gói tin (Rate Limiting) với --limit--limit-burst để phòng thủ DoS/ICMP Flood/SYN Flood.
    • Cơ chế chống giả mạo IP (Anti-Spoofing) và ghi nhật ký có kiểm soát (No-logging cho broadcast rác để tránh tràn ổ đĩa).
  • Could Have (Có thể mở rộng):
    • Tích hợp Squid Proxy để lưu đệm nội dung web (caching) và lọc URL.
    • Tích hợp xác thực 802.1X và hệ thống quản lý chính sách cổng switch (Port Security).
  • Won't Have (Chưa thực hiện trong giai đoạn này):
    • Kiểm tra sâu payload mã hóa SSL/TLS ở tầng ứng dụng (L7 WAF).

Thiết kế hệ thống

Kiến trúc tổng thể và mô hình phân vùng mạng (Screened Subnet Architecture)

Hệ thống tường lửa được xây dựng theo kiến trúc Screened Subnet Host sử dụng một máy chủ Linux trang bị 3 card mạng (3-Homed Firewall Server), đóng vai trò làm chốt chặn trung tâm điều phối toàn bộ lưu lượng giữa ba phân vùng:

                            +--------------------+
                            |   INTERNET / WAN   |
                            |  (Untrusted Zone)  |
                            +---------+----------+
                                      |
                               [eth0: IP Public]
                         +------------+------------+
                         |                         |
                         |  LINUX IP TABLES ENGINE |
                         |    (Kernel Netfilter)   |
                         |                         |
                         +-----+--------------+----+
            [eth1: 192.168.2.1/24]          [eth2: 192.168.1.1/24]
                       |                               |
          +------------+------------+      +-----------+-----------+
          |     DMZ SERVER ZONE     |      |   INTERNAL LAN ZONE   |
          | (Semi-Trusted Network)  |      |   (Trusted Network)   |
          +-------------------------+      +-----------------------+
          | - Web Server (Port 80)  |      | - Workstations (PC1)  |
          | - Mail Server (25, 110) |      | - Staff & Labs (PC2)  |
          | - DNS Server (Port 53)  |      | - Admin Management    |
          | - FTP Server (20, 21)   |      +-----------------------+
          +-------------------------+

Quy hoạch dải địa chỉ IP và sơ đồ cổng dịch vụ

  • Giao diện mạng Firewall:
    • eth0 (Kết nối WAN/Internet): Cấu hình IP tĩnh hoặc DHCP từ nhà mạng ISP (Ví dụ: 210.245.10.71/24 hoặc giả lập 10.0.0.1/24).
    • eth1 (Kết nối vùng DMZ): Địa chỉ Gateway 192.168.2.1/24.
    • eth2 (Kết nối vùng LAN nội bộ): Địa chỉ Gateway 192.168.1.1/24.
  • Vùng máy chủ DMZ:
    • Web & FTP Server: 192.168.2.2 (Chạy Apache HTTP port 80/TCP, VSFTPD port 20, 21/TCP).
    • Mail Server: 192.168.2.3 (Chạy Postfix SMTP port 25/TCP, Dovecot POP3 port 110/TCP, IMAP port 143/TCP).
    • DNS Server: 192.168.2.4 (Chạy BIND9 port 53/UDP & 53/TCP).
  • Vùng mạng LAN nội bộ:
    • Dải mạng: 192.168.1.0/24 (Cấp phát động qua DHCP hoặc cấu hình tĩnh cho PC1, PC2... Gateway trỏ về 192.168.1.1, DNS trỏ về 192.168.2.4 hoặc DNS công cộng).

Ngăn xếp công nghệ (Technology Stack)

  • Hệ điều hành nền tảng: Red Hat Enterprise Linux 6.x / CentOS 6.4 (Kernel 2.6.32-x86_64).
  • Lõi xử lý gói tin: Linux Netfilter Kernel Subsystem.
  • Công cụ cấu hình tường lửa: Iptables v1.4.7 (kèm các module iptable_filter, iptable_nat, iptable_mangle, nf_conntrack, nf_nat).
  • Các dịch vụ mạng thử nghiệm:
    • Web Server: Apache HTTP Server v2.2.15.
    • Mail Server: Postfix v2.6.6 + Dovecot v2.0.9.
    • DNS Server: BIND v9.8.2.
    • FTP Server: VSFTPD v2.2.2.
  • Công cụ kiểm thử an ninh: Nmap v6.x (Port Scanning), công cụ tấn công bão gói tin DoS httpdos, Hping3 (SYN Flood Testing), Wireshark/Tcpdump (Packet Sniffing).

Phương pháp luận (Methodology)

Đồ án áp dụng quy trình phát triển và triển khai an ninh mạng có cấu trúc gồm 5 giai đoạn:

  1. Phân tích yêu cầu & Thiết lập chính sách: Khảo sát thực địa hệ thống mạng LAN tại Trường CĐ CNTT Hữu Nghị Việt - Hàn. Xác định ma trận cho phép/chặn giữa các vùng mạng.
  2. Thiết kế kiến trúc an toàn: Xây dựng mô hình Screened Subnet với nguyên tắc phân quyền tối thiểu (Least Privilege) và phòng thủ theo chiều sâu (Defense in Depth).
  3. Hiện thực hóa quy tắc lọc (Rule Implementation): Xây dựng tập luật theo thứ tự ưu tiên: Luật trạng thái -> Luật lọc đặc thù -> Luật chống tấn công -> Luật Drop mặc định.
  4. Kiểm thử đa tầng (Multi-tier Testing): Kiểm tra thông tuyến, kiểm tra cách ly phân vùng và kiểm thử khả năng chịu tải khi bị tấn công.
  5. Đóng gói & Tối ưu hóa: Xuất kịch bản khởi động tự động hóa và tài liệu hóa quy trình vận hành.

Hiện thực hóa và kết quả (Implementation & Results)

Quá trình phát triển và cấu hình hệ thống

Cấu hình nhân hệ điều hành Linux (Kernel Optimization)

Trước khi nạp các quy tắc IPtables, máy chủ Linux cần được kích hoạt tính năng định tuyến chuyển tiếp gói tin IPv4 và tối ưu các tham số chống tấn công mạng trong /etc/sysctl.conf:

# Bật tính năng chuyển tiếp gói tin IPv4 giữa các card mạng
echo 1 > /proc/sys/net/ipv4/ip_forward

# Tối ưu hóa tham số mạng chống tấn công giả mạo và SYN Flood trong /etc/sysctl.conf
cat << 'EOF' >> /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.icmp_echo_ignore_broadcasts = 1
EOF
sysctl -p

Xây dựng kịch bản cấu hình tường lửa IPtables toàn diện

Quy trình xử lý gói tin trong IPtables trải qua chuỗi logic nghiêm ngặt:

                  +-----------------------------------+
                  |         GÓI TIN ĐI VÀO            |
                  +-----------------+-----------------+
                                    |
                         [PREROUTING (NAT/Mangle)]
                                    |
                        /-----------------------\
                       /  Đích có phải Firewall? \
                      +---------------------------+
                      | YES                   NO  |
                      v                           v
               [INPUT (Filter)]          [FORWARD (Filter)]
                      |                           |
             (Local Processing)                   |
                      |                           |
               [OUTPUT (Filter)]                  |
                      |                           |
                      +-------------+-------------+
                                    |
                         [POSTROUTING (NAT/Mangle)]
                                    |
                  +-----------------+-----------------+
                  |         GÓI TIN ĐI RA             |
                  +-----------------------------------+

Dưới đây là kịch bản shell cấu hình toàn bộ hệ thống tường lửa cho đồ án:

#!/bin/bash
# ==============================================================================
# KỊCH BẢN CẤU HÌNH TƯỜNG LỬA IPTABLES - MÔ HÌNH SCREENED SUBNET DMZ
# Tác giả: Phùng Văn Đại - Đồ án Tốt nghiệp
# ==============================================================================

# 1. Khai báo biến giao diện mạng và địa chỉ IP
INET_IF="eth0"       # Interface kết nối WAN/Internet
DMZ_IF="eth1"        # Interface kết nối DMZ
LAN_IF="eth2"        # Interface kết nối LAN

INET_IP="210.245.10.71"
DMZ_WEB="192.168.2.2"
DMZ_MAIL="192.168.2.3"
DMZ_DNS="192.168.2.4"
LAN_NET="192.168.1.0/24"
DMZ_NET="192.168.2.0/24"

# 2. Xóa sạch (Flush) các quy tắc cũ và đặt chính sách mặc định
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X

# Thiết lập chính sách mặc định: Default Deny Stance
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# 3. Cho phép giao tiếp trên giao diện Loopback (lo)
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# 4. Cơ chế Stateful Inspection: Chấp nhận các kết nối đã thiết lập từ trước
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# 5. Cơ chế phòng chống tấn công DoS, Port Scan và SYN Flood
# 5.1. Chống SYN Flood bằng module limit
iptables -N SYN_FLOOD
iptables -A INPUT -p tcp --syn -j SYN_FLOOD
iptables -A FORWARD -p tcp --syn -j SYN_FLOOD
iptables -A SYN_FLOOD -m limit --limit 10/s --limit-burst 20 -j RETURN
iptables -A SYN_FLOOD -j DROP

# 5.2. Giới hạn gói tin ICMP Ping để tránh Ping Flood (Smurf / Ping of Death)
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 4 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 2/s --limit-burst 5 -j ACCEPT

# 6. Cấu hình định tuyến và phân quyền luồng dữ liệu (FORWARD CHAIN)
# 6.1. Cho phép mạng LAN (eth2) truy cập toàn quyền ra Internet (eth0)
iptables -A FORWARD -i $LAN_IF -o $INET_IF -s $LAN_NET -j ACCEPT

# 6.2. Cho phép mạng LAN (eth2) truy cập các dịch vụ trong DMZ (eth1)
iptables -A FORWARD -i $LAN_IF -o $DMZ_IF -s $LAN_NET -d $DMZ_NET -p tcp -m multiport --dports 80,20,21,25,110,143 -j ACCEPT
iptables -A FORWARD -i $LAN_IF -o $DMZ_IF -s $LAN_NET -d $DMZ_DNS -p udp --dport 53 -j ACCEPT

# 6.3. Cho phép người dùng từ Internet (eth0) truy cập dịch vụ công cộng trong DMZ (eth1)
iptables -A FORWARD -i $INET_IF -o $DMZ_IF -d $DMZ_WEB -p tcp -m multiport --dports 80,20,21 -j ACCEPT
iptables -A FORWARD -i $INET_IF -o $DMZ_IF -d $DMZ_MAIL -p tcp -m multiport --dports 25,110,143 -j ACCEPT
iptables -A FORWARD -i $INET_IF -o $DMZ_IF -d $DMZ_DNS -p udp --dport 53 -j ACCEPT

# 7. Cấu hình bảng NAT (Network Address Translation)
# 7.1. SNAT / MASQUERADE: Cho phép mạng LAN và DMZ truy cập Internet qua IP Public
iptables -t nat -A POSTROUTING -o $INET_IF -s $LAN_NET -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -o $INET_IF -s $DMZ_NET -j SNAT --to-source $INET_IP

# 7.2. DNAT (Port Forwarding): Chuyển tiếp luồng truy cập từ ngoài Internet vào Server DMZ
# Chuyển tiếp Web (80) & FTP (21) đến máy chủ Web Server
iptables -t nat -A PREROUTING -i $INET_IF -p tcp --dport 80 -j DNAT --to-destination $DMZ_WEB:80
iptables -t nat -A PREROUTING -i $INET_IF -p tcp --dport 21 -j DNAT --to-destination $DMZ_WEB:21

# Chuyển tiếp Mail SMTP (25), POP3 (110), IMAP (143) đến máy chủ Mail Server
iptables -t nat -A PREROUTING -i $INET_IF -p tcp --dport 25 -j DNAT --to-destination $DMZ_MAIL:25
iptables -t nat -A PREROUTING -i $INET_IF -p tcp --dport 110 -j DNAT --to-destination $DMZ_MAIL:110
iptables -t nat -A PREROUTING -i $INET_IF -p tcp --dport 143 -j DNAT --to-destination $DMZ_MAIL:143

# Chuyển tiếp DNS Query (53) đến máy chủ DNS Server
iptables -t nat -A PREROUTING -i $INET_IF -p udp --dport 53 -j DNAT --to-destination $DMZ_DNS:53

# 8. Quản trị an toàn: Cho phép quản trị viên SSH vào Firewall từ duy nhất IP máy Admin trong LAN
iptables -A INPUT -i $LAN_IF -p tcp -s 192.168.1.250 --dport 22 -m state --state NEW -j ACCEPT

# 9. Lưu cấu hình dịch vụ
service iptables save

Kiểm thử và đánh giá kết quả (Testing & Validation)

Kịch bản kiểm thử (Test Scenarios) và Kết quả đạt được

STT Kịch bản kiểm thử Hành động thực hiện Kết quả mong đợi Trạng thái thực tế
1 Máy trạm LAN kết nối Internet PC1 (192.168.1.10) gửi lệnh ping 8.8.8.8 và duyệt web ra ngoài Gói tin được chuyển đổi qua SNAT và truy cập thành công ĐẠT (100%)
2 Truy cập Web DMZ từ Internet Máy ngoài WAN truy cập http://210.245.10.71 Tường lửa DNAT chính xác tới Apache trên 192.168.2.2:80 ĐẠT (100%)
3 Truyền nhận thư điện tử PC1 gửi mail qua SMTP (port 25) tới MailServer, PC2 nhận qua POP3 (port 110) Mail được chuyển phát và đọc thư nguyên vẹn trên hộp thư PC2 ĐẠT (100%)
4 Cách ly mạng (Isolation Test) Máy chủ Web trong DMZ cố gắng SSH hoặc Ping vào máy trạm LAN (192.168.1.10) Tường lửa chặn hoàn toàn (DROP), không phản hồi ICMP/TCP ĐẠT (100%)
5 Tấn công mô phỏng HTTP DoS Sử dụng tool httpdos gửi 5,000 requests/s vào Web Server Tường lửa lọc gói trạng thái, Web Server duy trì phản hồi ĐẠT (100%)
6 Tấn công SYN Flood Sử dụng công cụ gửi bão cờ SYN (hping3 -S -p 80 --flood) Quy tắc limit-burst 20 kích hoạt, giảm tải cho server, CPU < 15% ĐẠT (100%)
                              BẢNG THÔNG SỐ ĐO LƯỜNG HIỆU NĂNG TƯỜNG LỬA
+-----------------------------+-----------------------+-----------------------+--------------------+
| Chỉ số đo lường (Metrics)   | Trước khi qua IPtables| Sau khi qua IPtables  | Mức độ suy hao (%) |
+-----------------------------+-----------------------+-----------------------+--------------------+
| Độ trễ mạng (Ping RTT)      | 0.42 ms               | 0.58 ms               | + 0.16 ms (Rất thấp)|
| Băng thông truyền tải (FTP) | 94.8 Mbps             | 93.2 Mbps             | - 1.68%            |
| Tỷ lệ chặn gói tin rác      | 0%                    | 100%                  | Tối ưu an ninh     |
| Tải CPU của Firewall Server | 1.2% (Idle)           | 6.8% (Full Load 100M) | Tối ưu tài nguyên  |
+-----------------------------+-----------------------+-----------------------+--------------------+

Đổi mới và đóng góp

  1. Ứng dụng thành công mô hình Screened Subnet DMZ trên nền tảng nguồn mở Linux: Thay vì chỉ dùng tường lửa Dual-Homed đơn giản, đồ án đã triển khai hoàn chỉnh mô hình tường lửa 3 chân (Tri-homed Firewall), tạo vùng DMZ chuẩn công nghiệp giúp bảo vệ tuyệt đối vùng máy trạm nội bộ ngay cả khi máy chủ dịch vụ bị xâm nhập.
  2. Tối ưu hóa bảng luật (Rule Base Optimization): Sắp xếp các luật theo nguyên lý "kết nối đã xác lập được ưu tiên xử lý trước" (-m state --state ESTABLISHED,RELATED -j ACCEPT). Thiết kế này giúp giảm thiểu tới 80% số lần so khớp luật cho các gói tin thuộc cùng một phiên làm việc, từ đó giải phóng tài nguyên CPU của hệ thống mạng.
  3. Cơ chế phòng thủ DoS/SYN Flood tích hợp ở mức Kernel: Ứng dụng thành công module match limitlimit-burst của IPtables kết hợp cùng tính năng tcp_syncookies của nhân Linux, ngăn chặn hiệu quả các đợt tấn công từ chối dịch vụ mà không cần đầu tư các thiết bị phần cứng cân bằng tải chuyên dụng.
  4. Hiệu quả kinh tế vượt trội: Cung cấp giải pháp bảo mật cấp doanh nghiệp với chi phí đầu tư phần mềm bằng 0, giúp các cơ quan, trường học tiết kiệm hàng trăm triệu đồng chi phí mua sắm thiết bị và phí duy trì bản quyền hàng năm.

Ứng dụng thực tế và triển khai

Trường hợp sử dụng thực tế (Real-world Use Cases)

  • Hệ thống mạng các trường đại học, cao đẳng: Phân chia khu vực phòng thực hành sinh viên (LAN), khu vực máy chủ đào tạo/cổng thông tin (DMZ) và đường truyền Internet ngoài (WAN), đảm bảo an toàn thi cử và bảo mật cơ sở dữ liệu điểm số.
  • Doanh nghiệp vừa và nhỏ (SMEs): Cung cấp môi trường làm việc an toàn cho nhân viên, đồng thời vận hành hệ thống ERP/Website/Email doanh nghiệp độc lập và bảo mật cao.
                            SƠ ĐỒ TRIỂN KHAI THỰC TẾ
+-----------------------------------------------------------------------------+
|                                  INTERNET                                   |
+-------------------------------------+---------------------------------------+
                                      |
                               +------+------+
                               | ADSL Router |
                               +------+------+
                                      | (IP: 210.245.10.71)
                    +-----------------+-----------------+
                    |   Linux IPtables Firewall Server  |
                    |   (CentOS / RedHat Enterprise)    |
                    +--------+-----------------+--------+
                             |                 |
          (IP: 192.168.2.1)  |                 |  (IP: 192.168.1.1)
                 +-----------+--+           +--+-----------+
                 |  Switch DMZ  |           |  Switch LAN  |
                 +---+---+---+--+           +---+---+---+--+
                     |   |   |                  |   |   |
      +--------------+   |   +----------+       |   |   +--------------+
      |                  |              |       |   |                  |
+-----+------+     +-----+----+   +-----+----+  | +-+--------+   +-----+------+
| Web Server |     |MailServer|   |DNS Server|  | | Client 1 |   | Client 2   |
| 192.168.2.2|     |192.168.2.3   |192.168.2.4  | |192.168.1.10  | 192.168.1.11
+------------+     +----------+   +----------+  | +----------+   +------------+
                                                +------------------------------+

Yêu cầu phần cứng và hướng dẫn triển khai

  • Cấu hình phần cứng tối thiểu cho Firewall:
    • Vi xử lý (CPU): Intel Pentium IV / Dual Core 2.0 GHz trở lên (hỗ trợ kiến trúc x86_64).
    • Bộ nhớ RAM: Tối thiểu 1 GB (Khuyến nghị 2 GB trở lên để lưu bảng kết nối nf_conntrack lớn).
    • Ổ đĩa cứng: 40 GB SATA (Dành cho hệ điều hành và lưu trữ log hệ thống).
    • Giao diện mạng (NIC): 3 card mạng chuẩn Ethernet 100/1000 Mbps (hỗ trợ tốt trên Linux Kernel như Intel, Realtek).
  • Quy trình triển khai 4 bước:
    1. Cài đặt hệ điều hành Red Hat / CentOS dạng Minimal Server.
    2. Gán địa chỉ IP tĩnh cho 3 card mạng trong /etc/sysconfig/network-scripts/ifcfg-ethX.
    3. Nạp kịch bản cấu hình tường lửa IPtables đã tối ưu.
    4. Cấu hình dịch vụ khởi động cùng hệ thống bằng lệnh chkconfig iptables on.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật

  • Lọc gói tin ở Layer 3 và Layer 4: IPtables hoạt động chủ yếu từ tầng Network đến Transport, không có khả năng tự động giải mã và quét payload để phát hiện mã độc nhúng trong nội dung HTTP/HTTPS ở Layer 7.
  • Cấu hình dựa trên dòng lệnh (CLI): Việc quản trị đòi hỏi chuyên viên mạng phải có kiến thức chuyên sâu về cú pháp lệnh và luồng gói tin Netfilter, thiếu giao diện đồ họa trực quan (GUI) cho người dùng không chuyên.

Hướng phát triển trong tương lai

  • Tích hợp hệ thống phát hiện/ngăn chặn xâm nhập (IDS/IPS): Kết hợp IPtables với Snort hoặc Suricata để chủ động phát hiện và kích hoạt luật chặn các địa chỉ IP có hành vi tấn công tự động.
  • Triển khai Web Proxy Cache & Content Filtering: Tích hợp Squid Proxy và SquidGuard để kiểm soát việc duyệt web của người dùng LAN, lọc các trang web đen và mã độc theo tên miền.
  • Nâng cấp lên kiến trúc Nftables / eBPF: Chuyển đổi và nâng cấp tập luật sang công nghệ tường lửa thế hệ mới nftables và công nghệ xử lý gói tin siêu tốc eBPF/XDP trên các phiên bản nhân Linux hiện đại.

Đối tượng hưởng lợi

+-----------------------------------------------------------------------------+
|                          ĐỐI TƯỢNG HƯỞNG LỢI DỰ ÁN                          |
+-----------------------------------------------------------------------------+
| [1] Sinh viên & Người học CNTT:                                             |
|     - Tài liệu học tập chuyên sâu về Netfilter/IPtables và an toàn mạng LAN.|
|     - Mẫu kịch bản cấu hình mạng thực tế (Best-practice Rule sets).        |
|                                                                             |
| [2] Kỹ sư quản trị hệ thống (System & Network Administrators):              |
|     - Giải pháp triển khai tường lửa DMZ phân vùng an toàn, dễ bảo trì.     |
|     - Bộ thông số kỹ thuật tối ưu hóa nhân Linux chống DoS/SYN Flood.       |
|                                                                             |
| [3] Doanh nghiệp vừa và nhỏ (SMEs) & Viện trường:                           |
|     - Tiết kiệm 100% chi phí bản quyền phần mềm bảo mật tường lửa.          |
|     - Bảo vệ an toàn dữ liệu nội bộ và đảm bảo tính sẵn sàng của dịch vụ.   |
|                                                                             |
| [4] Các nhà nghiên cứu An toàn thông tin:                                   |
|     - Nền tảng thực nghiệm để phát triển các thuật toán lọc gói tin mới.   |
+-----------------------------------------------------------------------------+

Câu hỏi thường gặp

1. Yêu cầu kỹ thuật tối thiểu để triển khai hệ thống IPtables này là gì?

Hệ thống chỉ yêu cầu một máy tính thông thường hoặc máy chủ ảo hóa có tối thiểu 1 CPU 1.5GHz, 1GB RAM và quan trọng nhất là 3 giao diện mạng (Network Interface Cards) độc lập để đấu nối vào 3 phân vùng mạng: WAN (Internet), DMZ (Máy chủ) và LAN (Nội bộ).

2. IPtables có thể chịu tải được bao nhiêu kết nối đồng thời và giới hạn mở rộng là gì?

Khả năng chịu tải của IPtables phụ thuộc vào dung lượng RAM cấp phát cho bảng theo dõi kết nối (nf_conntrack_max). Với 2GB RAM, hệ thống có thể cấu hình hỗ trợ tới hơn 262,144 kết nối đồng thời với độ trễ chuyển tiếp dưới 2ms.

3. Làm thế nào để tích hợp thêm các máy chủ dịch vụ mới vào vùng DMZ?

Quản trị viên chỉ cần đặt máy chủ mới vào dải mạng 192.168.2.0/24 (ví dụ: 192.168.2.5), sau đó thêm các quy tắc DNAT trong bảng nat (để mở cổng ra ngoài Internet) và quy tắc ACCEPT trong chuỗi FORWARD của bảng filter mà không cần thay đổi kiến trúc hạ tầng hiện có.

4. Sự khác biệt căn bản giữa hai mục tiêu DROP và REJECT trong IPtables là gì?

  • DROP: Tường lửa âm thầm hủy bỏ gói tin và không gửi bất kỳ thông báo phản hồi nào về cho nguồn gửi. Phương thức này giúp bảo mật tối đa và làm tiêu hao thời gian chờ (timeout) của kẻ tấn công.
  • REJECT: Hủy bỏ gói tin nhưng chủ động gửi lại một gói tin báo lỗi (ví dụ: TCP RST hoặc ICMP Port Unreachable). Phương thức này thường dùng trong nội bộ để ứng dụng của người dùng nhận biết lỗi ngay lập tức.

5. Chi phí đầu tư và thời gian hoàn vốn (ROI) của giải pháp này như thế nào?

Giải pháp sử dụng 100% phần mềm mã nguồn mở miễn phí trên nền Linux. Chi phí đầu tư gần như bằng 0 nếu tận dụng lại máy tính cũ làm máy chủ tường lửa. Doanh nghiệp có thể tiết kiệm ngay từ $2,000 đến $5,000 chi phí mua sắm thiết bị chuyên dụng và đạt điểm hoàn vốn (ROI) ngay tại thời điểm triển khai.


Kết luận

Đồ án tốt nghiệp "Tìm hiểu bảo mật LAN và triển khai IPtables trên Linux" đã hoàn thành toàn diện các mục tiêu nghiên cứu và thực nghiệm đề ra. Dự án đã chứng minh rằng việc kết hợp kiến trúc phân vùng an toàn Screened Subnet DMZ với sức mạnh xử lý gói tin mức nhân của Netfilter/IPtables tạo nên một giải pháp phòng thủ vững chắc, kinh tế và hiệu năng cao cho hệ thống mạng nội bộ. Hệ thống không chỉ giải quyết triệt để bài toán khan hiếm địa chỉ IPv4 thông qua cơ chế NAT thông minh, mà còn bảo vệ toàn diện các máy chủ dịch vụ công cộng và máy trạm nội bộ trước các mối đe dọa an ninh mạng nguy hiểm. Đây là tài liệu kỹ thuật và giải pháp tham khảo giá trị cho các kỹ sư mạng, sinh viên CNTT và các tổ chức đang tìm kiếm một phương án bảo mật mạng hiệu quả, tối ưu chi phí.