pfSense:Triển khai "Phòng thủ chiều sâu" với WireGuard VPN, ntopng DPI và Snort IPS
Ở bài trước chúng ta đã thiết lập ban đầu vpn tunnel để pfSense có thể giao tiếp được với Server Web qua network nội bộ . Bài viết này chúng ta sẽ đi vào thực chiến các chức năng của pfSense.
Quy trình thực chiến xây dựng một Trung tâm Điều hành An ninh (Mini SOC) mạnh mẽ, tiết kiệm tài nguyên dựa trên nền tảng mã nguồn mở pfSense. Xuyên suốt 3 kịch bản thực tế, chúng ta sẽ lần lượt giải quyết các bài toán cốt lõi:
-
Lớp Ẩn danh (Stealth): Ứng dụng VPN để mã hóa đường truyền và cơ chế Source NAT nhằm cô lập hoàn toàn máy chủ Web nội bộ khỏi Internet.
-
Lớp Giám sát (Visibility): Triển khai ntopng kết hợp engine Phân tích gói tin sâu (Deep Packet Inspection - DPI) để soi thấu các luồng dữ liệu HTTPS và định vị chính xác tọa độ kẻ tấn công.
-
Lớp Đánh chặn (Active Defense): Kích hoạt hệ thống Phát hiện và Ngăn chặn Xâm nhập Snort (IDS/IPS), tự động bóc tách mã độc tầng ứng dụng và "trảm" ngay lập tức các IP có hành vi rà quét nguy hiểm.
KỊCH BẢN 1: BẢO VỆ WEB SERVER BẰNG NAT QUA VPN
Mục tiêu: Che giấu hoàn toàn địa chỉ IP Public thật của Web Server. Biến pfSense thành cổng giao tiếp duy nhất ra Internet cho tên miền cyber.quyenlt.com. Toàn bộ lưu lượng truy cập sẽ được pfSense nhận, mã hóa, và đẩy qua đường hầm WireGuard để vào máy Web.
Bước 1: Trỏ DNS (Domain Name System)
Để luồng truy cập đi đúng hướng, ta cần trỏ tên miền về "Lễ tân" pfSense thay vì trỏ trực tiếp về máy chủ Web.
-
Đăng nhập vào trang quản trị tên miền.
-
Tạo bản ghi
A Record:-
Host/Name:
cyber -
Value/IP:
103.110.85.143(IP WAN của pfSense).
-
Bước 2: Cấu hình Tường lửa máy chủ Web (Ubuntu UFW)
Khóa cửa máy chủ Web khỏi Internet, chỉ cho phép quản trị viên (SSH) và pfSense (qua VPN) được phép giao tiếp.
-
Mở SSH trên máy Web Server (Ubuntu) và gõ các lệnh:
sudo ufw allow 22/tcp # Mở cổng SSH để không bị mất kết nối sudo ufw allow from 10.0.0.1 # Cho phép lưu lượng từ đầu hầm pfSense sudo ufw enable # Bật tường lửa -
Kết quả: Truy cập trực tiếp IP Public của Ubuntu qua trình duyệt sẽ bị chặn hoàn toàn.

Bước 3: Cấu hình Port Forwarding (NAT Inbound) trên pfSense
Chỉ định pfSense chuyển tiếp các gói tin lọt vào cổng 80 (HTTP) và 443 (HTTPS) xuyên qua hầm VPN.
-
Truy cập pfSense: Firewall > NAT > Port Forward.
-
Thêm Rule cho HTTP:
-
Interface:
WAN| Protocol:TCP -
Destination Port:
HTTP (80) -
Redirect target IP:
10.0.0.2(IP VPN của Web Server) -
Redirect target port:
HTTP (80)
-

-
Thêm Rule tương tự cho HTTPS: Đổi cổng thành
HTTPS (443). -
Bấm Save và Apply Changes.

Bước 4: Xử lý lỗi Định tuyến Bất đối xứng (Asymmetric Routing)
-
Nguyên nhân lỗi: Gói tin từ pfSense gửi vào có IP nguồn là IP Public của người dùng. Máy Web nhận được, nhưng khi trả lời, nó dùng cổng mạng mặc định của nó bắn thẳng ra Internet thay vì gửi ngược lại hầm VPN. Kết quả: Kết nối bị rớt (Timeout).
-
Cách khắc phục: Cấu hình Outbound NAT để pfSense "đóng giả" IP nguồn.
-
Truy cập pfSense: Firewall > NAT > Outbound.
-
Chọn Hybrid Outbound NAT rule generation -> Save.
-
Thêm một Rule mới ở đầu bảng (Bấm nút Mũi tên hướng lên):
-
Interface:
WireGuard -
Protocol:
Any| Source:Any -
Destination:
Network->10.0.0.2/32 -
Translation Address:
Interface Address
-
-
Bấm Save và Apply Changes.

-
Giải thích: Nhờ Rule này, pfSense sẽ thay IP của người dùng bằng IP
10.0.0.1trước khi đẩy vào hầm. Máy Web tưởng pfSense là người gọi nên gửi trả kết quả ngoan ngoãn qua hầm VPN.
Bước 5: Nghiệm thu kết quả
Lúc này truy cập cyber.quyenlt.com website sẽ hoạt động với dữ liệu trên Server Web mặc dù chúng ta đã trỏ DNS qua IP của pfSense . Máy chủ WordPress đã được giấu hoàn toàn (Tàng hình) và chỉ có thể truy cập qua sự kiểm duyệt của pfSense.

KỊCH BẢN 2: THIẾT LẬP TRUNG TÂM GIÁM SÁT AN NINH (SOC) VÀ PHÂN TÍCH LƯU LƯỢNG
1. Mục tiêu Kịch bản
Kịch bản này nhằm mục đích chứng minh năng lực kiểm soát toàn diện (Visibility) của hệ thống tường lửa pfSense. Thay vì chỉ đóng vai trò định tuyến thụ động, hệ thống được nâng cấp thành một Trung tâm Giám sát An ninh (SOC) thu nhỏ. Người quản trị có khả năng quan sát luồng dữ liệu theo thời gian thực, bóc tách các lớp mạng để phân tích nội dung gói tin (DPI), định danh ứng dụng và truy vết vị trí địa lý của các IP truy cập vào hệ thống Web Server nội bộ.
2. Quy trình Cấu hình và Tích hợp Công cụ
Bước 1: Thiết lập Giám sát Đa điểm (Multi-point Traffic Graph) Để so sánh sự khác biệt giữa lưu lượng Internet công cộng và lưu lượng trong đường hầm VPN:
-
Kích hoạt và cấu hình công cụ Traffic Graph trên Dashboard của pfSense.
-
Thiết lập song song hai biểu đồ giám sát:
-
Giao diện WAN: Đo lường toàn bộ gói tin hỗn hợp từ Internet đổ vào IP Public của hệ thống.

-
Giao diện WireGuard_Tunnel: Đo lường luồng dữ liệu sạch đã được giải mã và đang chuẩn bị đi vào Web Server
10.0.0.2.
-
Bước 2: Phân tích Bảng trạng thái (State Table) Sử dụng công cụ pfTop (Diagnostics > States) để giám sát các phiên kết nối TCP/UDP đang hoạt động (Active Sessions). Cấu hình bộ lọc (Filter) chỉ định đích đến là IP 10.0.0.2 nhằm loại bỏ nhiễu và theo dõi chính xác các truy cập vào máy chủ Web.

Hai dòng trong khung đỏ thực chất là cùng một phiên kết nối duy nhất của một người dùng từ Internet truy cập vào Web Server của bạn. Lý do nó hiển thị thành 2 dòng là vì gói tin này đã đi qua 2 trạm kiểm soát (Interface): Trạm ngoài (WAN) và Trạm trong (WIREGUARD_TUNNEL).
1. Dòng thứ nhất: Trạm kiểm soát WAN (Cửa ngoài)
WAN | tcp | 103.221.220.224:50345 -> 10.0.0.2:443 (103.110.85.143:443)
Đây là góc nhìn của pfSense khi gói tin vừa chạm vào cửa ngõ Internet:
-
Nguồn (Source):
103.221.220.224:50345-> Đây là IP Public của người dùng (ví dụ: IP 4G của điện thoại bạn) kèm theo port ngẫu nhiên. -
Đích đến nguyên bản (Original Destination):
(103.110.85.143:443)-> Người dùng từ bên ngoài chỉ biết mỗi IP Public của pfSense. Nên họ gõ cửa địa chỉ này. -
Đích đến thực tế:
10.0.0.2:443-> Nhờ luật Port Forwarding (Destination NAT) bạn đã cài, pfSense lập tức bóc cái nhãn đích đến cũ ra, dán cái nhãn IP nội bộ10.0.0.2vào để chuẩn bị đẩy vào hầm.
2. Dòng thứ hai: Trạm kiểm soát WIREGUARD_TUNNEL (Cửa trong)
WIREGUARD_TUNNEL | tcp | 10.0.0.1:52498 (103.221.220.224:50345) -> 10.0.0.2:443
Đây là lúc gói tin đã chui vào đường hầm VPN, chuẩn bị giao cho Web Server:
-
Đích đến: Vẫn là Web Server
10.0.0.2:443. -
Nguồn (Source) ĐÃ BỊ THAY ĐỔI: Bạn thấy chứ? Thay vì giữ nguyên IP 4G của người dùng, pfSense đã thực hiện Source NAT (Outbound NAT). Nó đổi IP nguồn thành IP của chính nó trong hầm (
10.0.0.1:52498). -
(Original Source): Phần trong ngoặc
(103...50345)chỉ là pfSense tự ghi chú lại để nhớ xem lát nữa web trả lời thì gửi trả cho ai.
Hệ quả của dòng này: Khi Web Server (
10.0.0.2) nhận được yêu cầu, nó sẽ đinh ninh rằng: "À, anh Tường lửa (10.0.0.1) đang hỏi xin dữ liệu web". Nó hoàn toàn mù tịt, không hề biết sự tồn tại của IP 4G ngoài kia.
3. Cột State: ESTABLISHED:ESTABLISHED
-
Trạng thái này có nghĩa là quá trình "Bắt tay 3 bước" (TCP 3-way Handshake) giữa thiết bị người dùng và Web Server đã hoàn tất thành công.
-
Đường truyền đang thông suốt và dữ liệu đang được gửi/nhận ổn định (Bạn có thể thấy cột Bytes đang báo
16 KiB / 77 KiB). -
(Bạn có thể so sánh với các dòng không khoanh đỏ, trạng thái
TIME_WAIT:TIME_WAITnghĩa là kết nối đó đã xong việc và đang trong quá trình đóng lại).
Kết luận :
Bức ảnh chụp Bảng trạng thái (State Table) này là minh chứng rõ ràng nhất cho cơ chế 'Phòng thủ chiều sâu' của hệ thống. Khi quan sát 2 dòng log của cùng một kết nối, ta thấy pfSense đã thực hiện dịch địa chỉ mạng (NAT) hai lần. Lần một (tại WAN) để điều hướng luồng dữ liệu vào đúng Web Server. Lần hai (tại đường hầm) để đánh tráo IP nguồn của kẻ tấn công thành IP của Firewall (Source NAT). Kỹ thuật này đảm bảo Web Server nội bộ bị cô lập hoàn toàn, nó không bao giờ giao tiếp trực tiếp với bất kỳ IP ngoại mạng nào, từ đó triệt tiêu rủi ro bị hacker truy vết ngược hạ tầng mạng bên trong."
Bước 3: Tích hợp Hệ thống Phân tích Sâu ntopng (Deep Packet Inspection) Do bộ công cụ mặc định của pfSense chỉ phân tích được đến Layer 4 (Transport), hệ thống được cài đặt thêm Package ntopng.
-
Cài đặt: Tải và cài đặt ntopng và Redis database từ kho ứng dụng (Package Manager).

-
Binding: Ràng buộc (Bind) ntopng vào lắng nghe trên cả hai giao diện WAN và WireGuard_Tunnel.
Bước này cực kỳ quan trọng để ntopng biết nó cần "nghe" lén ở đường dây nào.
-
Truy cập menu: Vào Diagnostics > ntopng Settings.
-
Tìm mục Interface Selection: Tại đây bạn sẽ thấy danh sách các cổng mạng (WAN, LAN, WireGuard_Tunnel...).
-
Thao tác chọn: * Nhấn giữ phím Ctrl (trên Windows) hoặc Command (trên Mac).
-
Click chuột vào cổng WAN.
-
Click tiếp vào cổng WireGuard_Tunnel (hoặc LAN nếu bạn đã gán tun_wg0 vào LAN).
-
Giải thích: Việc chọn cả hai giúp bạn so sánh luồng dữ liệu trước khi vào hầm (WAN) và sau khi đã giải mã (WireGuard).
-
-
Lưu cấu hình: Cuộn xuống cuối trang bấm Save. Đợi khoảng 10-20 giây để dịch vụ ntopng khởi động lại với các cổng mới.

-
-
Kích hoạt tính năng: Bật phân tích DPI, thu thập thông tin Hệ điều hành (OS detection), và tải cơ sở dữ liệu định vị địa lý (GeoIP) để vẽ bản đồ lưu lượng.
Các tính năng này giúp ntopng trở nên thông minh hơn, không chỉ thấy IP mà còn thấy cả "tên tuổi, quê quán" của gói tin.
Đối với DPI (Phân tích gói tin sâu) và OS Detection (Nhận diện HĐH)
Các tính năng này thường được ntopng tự động kích hoạt khi bạn chọn đúng Interface. Tuy nhiên, để tối ưu kết quả:
-
Tại trang ntopng Settings, mục DNS Mode: Chọn Local: Resolve DNS locally hoặc Remote: Resolve DNS remotely. Điều này giúp ntopng biến các địa chỉ IP khô khan thành tên miền (như https://www.google.com/search?q=google.com, facebook.com).
-
Mục Sticky Hosts: Tích chọn để ntopng lưu trữ thông tin thiết bị lâu hơn, giúp nhận diện hệ điều hành chính xác hơn qua các phiên kết nối.
Đối với GeoIP (Vẽ bản đồ lưu lượng)
Đây là phần hay nhất để demo. ntopng cần một cơ sở dữ liệu để biết IP nào ở quốc gia nào.
-
Kiểm tra dữ liệu: Trong giao diện web của ntopng (cổng 3000), bạn nhìn xuống góc dưới cùng bên phải. Nếu thấy biểu tượng địa cầu có màu hoặc không có cảnh báo lỗi "GeoIP database missing" là máy đã có dữ liệu.
-
Nếu bị thiếu dữ liệu GeoIP trên pfSense:
-
Vào Diagnostics > ntopng Settings.
-
Kéo xuống mục Geolocation support. Bạn cần đăng ký một tài khoản miễn phí trên MaxMind để lấy "License Key".
-
-
-
Dán Key vào pfSense và bấm Save. pfSense sẽ tự tải bản đồ về cho ntopng dùng.
-
Tạo tài khoản nếu chưa có ở link : https://www.maxmind.com

Cách kiểm tra kết quả trong giao diện ntopng (Cổng 3000)

Chức năng của ntopng rất nhiều, đây là các chức năng nổi bật của nó :
- Flow > Live

Chức năng cốt lõi của Live Flows là gì?
Live Flows (Luồng trực tiếp) là "trái tim" của hệ thống giám sát ntopng. Chức năng này đóng vai trò như một radar dò quét liên tục, thực hiện nhiệm vụ:
-
Bắt giữ và Hiển thị (Capture & Display): Ghi nhận mọi phiên kết nối (Session) TCP/UDP/ICMP đang diễn ra trong mạng ngay tại giây phút hiện tại.
-
Phân tích Gói tin sâu (Deep Packet Inspection - DPI): Không giống như các tường lửa truyền thống chỉ kiểm tra IP và Cổng (Layer 3/4), Live Flows sử dụng engine DPI để "mở" gói tin ra xem, từ đó xác định chính xác giao thức ứng dụng ở tầng cao nhất (Layer 7).
-
Đánh giá Trạng thái (State Tracking): Theo dõi vòng đời của một kết nối từ lúc bắt tay (Handshake) cho đến khi kết thúc, kèm theo việc chấm điểm rủi ro (Score) theo thời gian thực.
2. Map > GeoMap

Chúng ta có thể xác định vị trí địa chỉ IP khách truy cập vào website cũng như là pfsense của chúng ta.
Để nối tiếp mạch truyện cực kỳ logic của đồ án này, chúng ta sẽ bước sang một kịch bản mang đậm chất "An ninh mạng" (Cybersecurity) và Tấn công/Phòng thủ (Red Team vs Blue Team).
Ở Kịch bản 2, ntopng đóng vai trò là "Vệ tinh giám sát" (Visibility) – bạn chỉ đứng nhìn hacker rà quét hệ thống của mình. Bây giờ, ở Kịch bản 3, chúng ta sẽ thả "Chó săn" Snort (IDS/IPS) ra để tự động "cắn" và khóa mõm tất cả những kẻ có ý định nhòm ngó.
Dưới đây là nội dung chuẩn form báo cáo để bạn đưa vào đồ án:
KỊCH BẢN 3: TRIỂN KHAI HỆ THỐNG PHÁT HIỆN VÀ NGĂN CHẶN XÂM NHẬP (IDS/IPS) VỚI SNORT
1. Mục tiêu Kịch bản
Kịch bản này nhằm xây dựng lớp phòng thủ chủ động (Active Defense) và kiểm tra sâu nội dung gói tin (Deep Packet Inspection). Nếu Tường lửa (Firewall) mặc định chỉ như một anh bảo vệ kiểm tra thẻ ID (IP và Cổng), thì Snort đóng vai trò như máy soi chiếu an ninh. Nó sẽ đọc sâu vào "hành lý" (Payload) của gói tin, đối chiếu với cơ sở dữ liệu nhận dạng mã độc (Signatures), và tự động "cấm cửa" (Block) bất kỳ IP nào có dấu hiệu tiêm nhiễm mã độc hoặc rà quét cổng.
2. Quy trình Cấu hình (Step-by-step)
Bước 1: Cài đặt và Nạp cơ sở dữ liệu Chữ ký (Signatures)
Truy cập System > Package Manager > Available Packages, tìm và cài đặt gói snort.

Truy cập Services > Snort > Global Settings. Kích hoạt tính năng Emerging Threats (ET) Rules (Cơ sở dữ liệu mã nguồn mở uy tín chuyên cập nhật các mẫu mã độc và IP rác mới nhất trên thế giới).

Chuyển sang tab Updates, nhấn Update Rules để tải toàn bộ "từ điển hacker" về pfSense.

Bước 2: Ràng buộc giao diện (Interface Binding) và Chọn bộ luật
Chuyển sang tab Snort Interfaces, nhấn Add để thêm giao diện giám sát.
-
General Settings:
-
Enable: Đảm bảo đã tích chọn (như trong ảnh bạn làm là đúng rồi).
-
Interface: Chọn
WAN (vtnet0). -
Description: Điền
WAN.
-
-
Alert Settings: Có thể để trống mặc định.
-
Block Settings (CỰC KỲ QUAN TRỌNG):
-
Bạn cuộn xuống dưới cùng, tìm mục Block Offenders.
-
Thao tác: Bắt buộc phải tích chọn ô này. Nếu không tích, Snort chỉ làm nhiệm vụ IDS (chỉ cảnh báo), tích vào nó mới thành IPS (chủ động chặn IP hacker).
-
Which IP to Block: Chọn
SRC(Chỉ khóa IP nguồn của kẻ tấn công, tránh khóa nhầm IP đích là máy chủ của mình).
-
-
Bấm Save ở dưới cùng.

Trong cấu hình Interface, chuyển sang tab WAN Categories. Tại đây, hệ thống sẽ hiển thị toàn bộ danh sách các luật ET Open mà chúng ta đã tải về lúc nãy.
-
Tuyệt đối không bấm "Select All". Việc bật tất cả các luật sẽ làm pfSense cạn kiệt RAM và sập hệ thống ngay lập tức. Chỉ tích chọn những bộ luật phù hợp với hạ tầng mạng của mình:
-
Tích chọn
emerging-scan.rules: Để bắt các công cụ dò quét cổng (như Nmap). -
Tích chọn
emerging-dos.rules: Để ngăn chặn tấn công từ chối dịch vụ. -
Tích chọn
emerging-web_server.rules: Để bảo vệ máy chủ Web. -
Tích chọn
emerging-shellcode.rules: Chặn các đoạn mã thực thi từ xa qua mạng.
-
-
Cuộn xuống dưới cùng và bấm Save.

Lặp lại quy trình cho đường hầm VPN (tun_wg0)
-
Quay lại menu chính: Services > Snort > Snort Interfaces.
-
Bấm nút Add (Thêm mới).
-
Cấu hình General: * Interface: Chọn cổng
tun_wg0(Đường hầm VPN).-
Description:
WIREGUARD_TUNNEL.
-
-
Block Settings (Quan trọng):
-
KHÔNG TÍCH CHỌN mục
Block Offenders. Điều này đảm bảo Tường lửa sẽ không tự khóa chính IP NAT của nó (10.0.0.1) khi phát hiện mã độc, giữ vững tính ổn định cho mạng nội bộ. -
Bấm Save.
-

-
Chọn Bộ luật (Categories):
-
Chuyển sang tab [Tên cổng VPN] Categories.
-
Vì có một con Web Server (10.0.0.2) chạy WordPress, đây là những bộ luật sinh ra để làm khiên chắn cho nó:
-
emerging-web_server.rules: Chống các cuộc tấn công nhắm vào Nginx/Apache. -
emerging-web_specific_apps.rules: Bắt các lỗi khai thác nhắm vào các ứng dụng cụ thể (rất hữu ích để bảo vệ các plugin của WordPress). -
emerging-sql.rules: Ngăn chặn tuyệt đối các nỗ lực tiêm nhiễm cơ sở dữ liệu (SQL Injection) như kịch bản demo số 3 mình đã đề cập. -
emerging-exploit.rules: Ngăn chặn hacker lợi dụng các lỗ hổng đã biết để chiếm quyền điều khiển (RCE). -
emerging-user_agents.rules: Chặn các công cụ tự động (như curl, wget) cố tình cào dữ liệu web.

Bước 3 : Start Snort
Bấm nút Play (Mũi tên xanh) trên cả 2 rules.

Kết quả mong đợi sẽ như thế này :

3. Kịch bản Thực nghiệm (Demo Tấn công & Phòng thủ)
Đây là phần "ăn tiền" nhất để bạn biểu diễn trước hội đồng, đóng vai cả Hacker (Red Team) và Quản trị viên (Blue Team).
Giai đoạn 1: Tấn công Đọc trộm file hệ thống (Local File Inclusion - LFI)
-
Thao tác: chúng ta sẽ lùi thư mục liên tục để đòi đọc file chứa mật khẩu gốc của máy chủ Linux (
/etc/passwd). Đây là hành vi cực kỳ nguy hiểm.
curl -v "http://103.110.85.143/index.php?page=../../../../../../../../../../etc/passwd"
-
Kết quả dự kiến: Trình duyệt của Hacker ban đầu sẽ quay quay, sau đó báo lỗi
ERR_CONNECTION_TIMED_OUThoặc không thể truy cập web được nữa.
Giai đoạn 2: Giám sát phản ứng của Hệ thống (Blue Team)
-
Quản trị viên mở giao diện pfSense > Services > Snort > Alerts.
-
Phân tích Log: Trên màn hình sẽ xuất hiện một dòng cảnh báo ĐỎ RỰC:
-
Priority: 1 (Mức độ nguy hiểm cao nhất).
-
Description:
ET WEB_SERVER /etc/passwd Detected in URI(Phát hiện nỗ lực tiêm nhiễm). -
Source: IP 4G của Hacker.
-

-
Quản trị viên chuyển sang tab Blocked:
-
Chứng minh với hội đồng: IP 4G của Hacker đã chính thức bị điền tên vào danh sách đen (Blacklist). Mọi gói tin từ IP này gửi đến hệ thống từ nay về sau sẽ bị pfSense ném thẳng vào thùng rác (Drop) ngay tại cửa WAN trước khi kịp chạm đến Web Server.
-

Ngoài ra chúng ta cũng có thể thấy từ các rules bảo vệ trước đó bật, thì hệ thống pfSense cũng tự động chặn 1 số bot nước ngoài scan liên tục vào IP Firewall.
Kết Luận
Qua 3 kịch bản thực nghiệm, hệ thống tường lửa pfSense kết hợp cùng ntopng và Snort đã chứng minh được năng lực phòng thủ toàn diện của kiến trúc đa tầng.
Chúng ta đã không chỉ xây dựng thành công một đường hầm mã hóa bảo mật để giấu kín máy chủ Web, mà còn thiết lập được "mắt thần" ntopng để xóa bỏ mọi điểm mù trong mạng. Ấn tượng hơn cả là sự can thiệp chính xác của hệ thống Snort IPS: tự động khóa chặt các luồng rà quét từ mạng WAN, đồng thời phối hợp nhịp nhàng với cơ chế NAT để cảnh báo mã độc bên trong đường hầm mà không gây ra hiệu ứng tự chối từ dịch vụ (Self-DoS).
Tuy nhiên, thực tế kiểm thử cũng chỉ ra những giới hạn nhất định, điển hình là sự "tàng hình" của mã độc khi đi qua kênh truyền HTTPS được ép buộc bởi Web Server. Điều này mở ra hướng phát triển tiếp theo cho hệ thống: tích hợp thêm giải pháp Web Application Firewall (WAF) hoặc cấu hình SSL Inspection trực tiếp tại Gateway để bóc tách mã hóa triệt để hơn.
Hy vọng rằng, với những kịch bản thực chiến và phân tích log chuyên sâu trên đây, bài viết đã cung cấp cho các kỹ sư hệ thống một góc nhìn trực quan và lộ trình rõ ràng để tự nâng cấp "hàng rào" bảo mật cho hạ tầng của mình.
Nếu bạn gặp khó khăn trong quá trình cấu hình Rule cho Snort hay có bất kỳ thắc mắc nào về kiến trúc NAT kép, đừng ngần ngại để lại bình luận bên dưới để chúng ta cùng thảo luận và khắc phục nhé!