Tổng quan nghiên cứu

An ninh mạng đang trở thành một trong những vấn đề cấp thiết nhất trong bối cảnh phát triển nhanh chóng của Internet và các hệ thống thông tin hiện nay. Theo ước tính, lượng dữ liệu log file sinh ra từ các hệ thống phát hiện xâm nhập mạng (IDS) có thể lên đến hàng terabyte mỗi ngày, gây áp lực lớn cho việc lưu trữ và xử lý trên các hệ thống máy đơn. Vấn đề chính được đặt ra là làm thế nào để thu thập, lưu trữ và phân tích hiệu quả lượng log file khổng lồ này nhằm phát hiện sớm các nguy cơ xâm nhập mạng, từ đó bảo vệ an toàn cho hệ thống mạng.

Mục tiêu của nghiên cứu là xây dựng một hệ thống phát hiện xâm nhập mạng phân tán sử dụng các công nghệ Snort, Chukwa, Hadoop và Syslog-ng, nhằm xử lý lượng log file lớn một cách phân tán và song song, nâng cao hiệu suất xử lý và khả năng phản ứng thời gian thực. Nghiên cứu tập trung vào việc thiết kế kiến trúc hệ thống, triển khai cụm máy chủ Hadoop với 1 master và 8 slave, thu thập log file từ các cảm biến IDS phân tán, lưu trữ trên hệ thống file phân tán HDFS và phân tích dữ liệu bằng mô hình MapReduce.

Phạm vi nghiên cứu được thực hiện tại Việt Nam trong giai đoạn 2017-2018, với các thử nghiệm trên môi trường máy ảo VMWare cấu hình cụ thể. Ý nghĩa của nghiên cứu được thể hiện qua việc tăng hiệu suất xử lý log file lên đến 10.1 lần so với hệ thống máy đơn, góp phần nâng cao khả năng phát hiện và phản ứng với các cuộc tấn công mạng trong thực tế.


Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

  • Hệ thống phát hiện xâm nhập mạng (IDS): IDS là hệ thống giám sát lưu lượng mạng nhằm phát hiện các hành vi xâm nhập trái phép dựa trên hai phương pháp chính: phát hiện dựa trên dấu hiệu (signature-based) và phát hiện dựa trên sự bất thường (anomaly-based). IDS được phân loại thành Network-based IDS (NIDS) và Host-based IDS (HIDS), mỗi loại có ưu nhược điểm riêng trong việc giám sát và phát hiện tấn công.

  • Snort: Là một NIDS mã nguồn mở phổ biến, có khả năng thu thập và phân tích gói tin mạng, phát hiện các dấu hiệu tấn công dựa trên bộ luật (rules) phong phú. Snort có kiến trúc module gồm các thành phần như giải mã gói tin, tiền xử lý, phát hiện, ghi log và cảnh báo.

  • Hadoop và HDFS: Apache Hadoop là framework xử lý dữ liệu lớn trên cụm máy tính phân tán, với hệ thống file phân tán HDFS cho phép lưu trữ dữ liệu lớn trên nhiều node. HDFS có kiến trúc master/slave với NameNode quản lý metadata và DataNode lưu trữ dữ liệu thực tế.

  • MapReduce: Mô hình lập trình phân tán cho phép xử lý dữ liệu lớn bằng cách chia nhỏ công việc thành các task Map và Reduce chạy song song trên các node trong cụm Hadoop, giúp tăng hiệu suất xử lý.

  • Chukwa và Syslog-ng: Là các công cụ thu thập log file từ các nguồn phân tán, chuyển dữ liệu về hệ thống Hadoop để lưu trữ và phân tích.

Phương pháp nghiên cứu

  • Nguồn dữ liệu: Log file được thu thập từ các cảm biến IDS Snort phân tán trên nhiều nhánh mạng khác nhau, với lượng dữ liệu lớn và đa dạng về định dạng.

  • Phương pháp phân tích: Sử dụng hệ thống thu thập dữ liệu Chukwa hoặc Syslog-ng để tập hợp log file về cụm máy chủ Hadoop. Dữ liệu được lưu trữ trên HDFS và xử lý phân tán bằng mô hình MapReduce để phân tích, loại bỏ dữ liệu dư thừa và trích xuất thông tin quan trọng.

  • Thiết kế hệ thống: Xây dựng cụm máy chủ Hadoop gồm 1 master (NameNode) và 8 slave (DataNode), cấu hình các thành phần Hadoop, Snort, Chukwa và Syslog-ng trên môi trường máy ảo VMWare với cấu hình CPU 1 Core 2.5 GHz, RAM 1GB cho mỗi node.

  • Timeline nghiên cứu: Nghiên cứu và triển khai trong năm 2017-2018, bao gồm các bước khảo sát lý thuyết, thiết kế mô hình, cài đặt hệ thống, thử nghiệm và đánh giá hiệu năng.


Kết quả nghiên cứu và thảo luận

Những phát hiện chính

  • Hiệu suất xử lý tăng 10.1 lần: Thí nghiệm trên cụm máy chủ Hadoop với 1 master và 8 slave cho thấy hiệu suất xử lý log file tăng gấp 10.1 lần so với hệ thống máy đơn, thể hiện qua thời gian xử lý và phân tích dữ liệu.

  • Khả năng thu thập log file phân tán hiệu quả: Sử dụng Chukwa và Syslog-ng để thu thập log file từ nhiều cảm biến Snort phân tán giúp tập trung dữ liệu về cụm Hadoop một cách ổn định và nhanh chóng.

  • So sánh giữa Chukwa và Syslog-ng: Kết quả đánh giá cho thấy cả hai công cụ đều có khả năng thu thập log file tốt, tuy nhiên Chukwa có lợi thế hơn về tích hợp với Hadoop và khả năng xử lý dữ liệu lớn.

  • Tính ổn định và mở rộng của hệ thống: Kiến trúc phân tán của Hadoop và mô hình MapReduce cho phép hệ thống mở rộng dễ dàng khi tăng số lượng node, đồng thời đảm bảo tính ổn định và an toàn dữ liệu nhờ cơ chế lưu trữ dư thừa của HDFS.

Thảo luận kết quả

Nguyên nhân chính của việc tăng hiệu suất xử lý là do hệ thống tận dụng được khả năng xử lý song song và phân tán của Hadoop, giảm tải cho CPU trên từng máy đơn lẻ. So với các nghiên cứu trước đây về xử lý log file trên hệ thống đơn, mô hình phân tán này khắc phục được các hạn chế về hiệu năng và khả năng mở rộng.

Kết quả cũng phù hợp với các nghiên cứu quốc tế về ứng dụng Hadoop và MapReduce trong xử lý dữ liệu lớn, đồng thời cho thấy sự phù hợp của việc tích hợp Snort với các công cụ thu thập và phân tích log file phân tán.

Dữ liệu có thể được trình bày qua biểu đồ so sánh thời gian xử lý log file giữa hệ thống máy đơn và cụm Hadoop, cũng như bảng thống kê hiệu suất thu thập log file của Chukwa và Syslog-ng.


Đề xuất và khuyến nghị

  • Triển khai hệ thống IDS phân tán: Áp dụng mô hình kết hợp Snort, Chukwa/Syslog-ng và Hadoop để thu thập và xử lý log file phân tán, nhằm nâng cao hiệu quả phát hiện xâm nhập mạng trong các tổ chức có quy mô lớn.

  • Tăng cường đào tạo kỹ thuật: Đào tạo đội ngũ kỹ thuật viên về vận hành và bảo trì hệ thống Hadoop, MapReduce và các công cụ thu thập log để đảm bảo hệ thống hoạt động ổn định và hiệu quả.

  • Mở rộng cụm máy chủ Hadoop: Tăng số lượng node trong cụm Hadoop theo nhu cầu xử lý dữ liệu để đảm bảo khả năng mở rộng và đáp ứng lưu lượng log file ngày càng tăng.

  • Tích hợp hệ thống giám sát và cảnh báo: Phát triển giao diện trực quan và hệ thống cảnh báo tự động dựa trên kết quả phân tích log file để hỗ trợ người quản trị nhanh chóng phát hiện và xử lý các sự cố an ninh mạng.

  • Thời gian thực hiện: Các giải pháp nên được triển khai trong vòng 12-18 tháng, bắt đầu từ việc khảo sát hiện trạng, xây dựng mô hình thử nghiệm, đến triển khai chính thức và đào tạo nhân sự.


Đối tượng nên tham khảo luận văn

  • Nhà quản trị mạng và an ninh thông tin: Hưởng lợi từ việc áp dụng hệ thống phát hiện xâm nhập mạng phân tán để nâng cao khả năng giám sát và bảo vệ hệ thống mạng.

  • Các tổ chức, doanh nghiệp có hệ thống mạng lớn: Có thể triển khai mô hình để xử lý lượng log file lớn, đảm bảo an toàn thông tin và giảm thiểu rủi ro từ các cuộc tấn công mạng.

  • Nhà nghiên cứu và sinh viên ngành Truyền thông và Mạng máy tính: Tham khảo kiến thức về các công nghệ lưu trữ và xử lý dữ liệu lớn, cũng như ứng dụng thực tế của Hadoop và MapReduce trong an ninh mạng.

  • Các nhà phát triển phần mềm và kỹ sư hệ thống: Tìm hiểu cách tích hợp các công cụ mã nguồn mở như Snort, Chukwa, Syslog-ng với Hadoop để xây dựng các hệ thống phân tán hiệu quả.


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

  1. Hệ thống phát hiện xâm nhập mạng phân tán là gì?
    Là hệ thống sử dụng nhiều cảm biến IDS phân tán trên mạng để thu thập log file, sau đó tập trung và xử lý dữ liệu trên cụm máy chủ phân tán nhằm phát hiện các hành vi xâm nhập mạng một cách hiệu quả và nhanh chóng.

  2. Tại sao cần sử dụng Hadoop trong xử lý log file IDS?
    Hadoop cung cấp khả năng lưu trữ và xử lý dữ liệu lớn phân tán, giúp xử lý lượng log file khổng lồ từ nhiều nguồn một cách song song, tăng hiệu suất và giảm tải cho hệ thống máy đơn.

  3. Chukwa và Syslog-ng khác nhau như thế nào?
    Chukwa là hệ thống thu thập dữ liệu mã nguồn mở tích hợp chặt chẽ với Hadoop, phù hợp cho xử lý dữ liệu lớn. Syslog-ng là công cụ thu thập log linh hoạt, phổ biến trong quản trị mạng, có thể tích hợp với nhiều hệ thống khác nhau.

  4. Mô hình MapReduce hoạt động ra sao trong phân tích log file?
    MapReduce chia nhỏ công việc phân tích log file thành các task Map xử lý dữ liệu cục bộ và task Reduce tổng hợp kết quả, giúp xử lý dữ liệu lớn hiệu quả trên cụm máy tính phân tán.

  5. Làm thế nào để mở rộng hệ thống khi lượng log file tăng?
    Có thể mở rộng cụm Hadoop bằng cách thêm các node DataNode mới, tận dụng khả năng phân tán và song song của hệ thống để xử lý lượng dữ liệu tăng mà không ảnh hưởng đến hiệu suất.


Kết luận

  • Hệ thống phát hiện xâm nhập mạng phân tán kết hợp Snort, Chukwa, Hadoop và Syslog-ng đã được thiết kế và triển khai thành công, đáp ứng được yêu cầu xử lý lượng log file lớn trong môi trường mạng hiện đại.
  • Hiệu suất xử lý log file tăng 10.1 lần so với hệ thống máy đơn, chứng minh hiệu quả của mô hình phân tán và song song.
  • Hệ thống cho phép thu thập, lưu trữ và phân tích log file phân tán một cách ổn định, hỗ trợ phát hiện sớm các nguy cơ xâm nhập mạng.
  • Các công cụ mã nguồn mở được tích hợp hiệu quả, giảm chi phí triển khai và vận hành cho các tổ chức, doanh nghiệp.
  • Đề xuất mở rộng hệ thống và phát triển các tính năng cảnh báo tự động để nâng cao khả năng giám sát và phản ứng với các sự cố an ninh mạng trong tương lai.

Hành động tiếp theo: Triển khai thử nghiệm thực tế tại các tổ chức có hệ thống mạng lớn, đồng thời đào tạo nhân sự vận hành và bảo trì hệ thống để đảm bảo hiệu quả lâu dài.