Để xây dựng các Templates này chúng tôi đã thực hiện việc phân tích tệp cấu hình gốc của PFSense theo phƣơng pháp “thử kiểm tra sự thay đổi”. Phƣơng pháp đó gồm các bƣớc:
Bƣớc 1: Ghi nhận cấu trúc, giá trị các thẻ trong tệp cấu hình của PFSense tại một thời điểm.
Bƣớc 2: Thay đổi từng giá trị trực tiếp liên quan đến việc cấu hình truy cập mạng cho vài ngƣời sử dụng.
Bƣớc 3: Kiểm tra sự thay đổi cấu trúc, giá trị các thẻ trong tệp cấu hình của PFSense tại thời điểm sau khi thay đổi.
Bƣớc 4: Ghi nhận sự thay đổi và phân tích tính lặp của cấu trúc, giá trị các thẻ trong tệp cấu hình của PFSense, từ đó xây dựng các Template XML mẫu bằng cách thêm các biến vào Template mẫu (Hình 3.5). Bƣớc 5: Trích lọc thông tin, xây dựng Template XLS mẫu để ngƣời
quản trị dễ dàng thay đổi quyền truy cập bằng cách thay đổi địa chỉ IP dễ dàng, hàng loạt bằng công cụ Micosoft Excel.
Cùng với việc phân tích đặc điểm của từng nhóm ngƣời sử dụng khác nhau trong hệ thống mạng của Học viện Cảnh sát nhân dân. Bằng phƣơng pháp trên chúng tôi xác định đƣợc cấu trúc của 4 Template quan trọng cho công cụ PFSenseMan đó là:
Cấu trúc Template <LAN> (Hình 3.5)
Cấu trúc Template <OTP> (Hình 3.6)
Hình 3.6: Cấu trúc <OTP> template
Cấu trúc Template <Alias> (Hình 3.7)
Cấu trúc Template <STATICMAP> (Hình 3.8)
Hình 3.8: Cấu trúc <STATICMAP> template
Cấu trúc Template Thông tin người sử dụng (Hình 3.9)
Cấu trúc Template này nhằm mục đích xây dựng cấu trúc dữ liệu đầu vào, đầu ra trong tệp tin excel bao gồm: MACAddr, IPAddr, Description có thể mở rộng thêm các thành phần khác nhƣ DNSServer, Getway… nhằm mục đích xây dựng các luật truy cập đến tài nguyên trong hệ thống mạng theo quy định của ngƣời quản trị hệ thống.
MacAdr IPAddr Description
3C:97:0E:33:74:D6 192.179.1.100 D380701 50:46:5D:2F:20:53 192.179.1.101 D380702 54:53:ED:AC:9D:D9 192.179.1.102 D380704 00:FF:1E:F3:14:FB 192.179.1.103 D380715 54:53:ED:2D:7D:DE 192.179.1.104 D380044 10:BF:48:31:B3:72 192.179.1.105 D380265 E0:DB:55:83:37:3E 192.179.1.106 D380261 E0:DB:55:85:DF:80 192.179.1.107 D380352 3C:97:0E:2E:9B:6F 192.179.1.108 D380386 00:16:D4:9E:84:24 192.179.1.109 D380133 B8:70:F4:37:A7:30 192.179.1.110 D380355 B8:88:E3:A4:81:E2 192.179.1.111 D380531 78:84:3C:90:FF:17 192.179.1.112 D380183 E8:03:9A:9C:BA:69 192.179.1.113 D380180
Ngoài ra còn một số Template khác như:
Template_Sheet, Template_Sheet_Row nhằm mục đích định dạng cấu trúc xuất dữ liệu ra định dạng excel để tiện cho quá trình xử lý dữ liệu của ngƣời quản trị hệ thống.
3.6Phiên làm việc của PFSenseMan
PFSenseMan hoạt động trên nền Web. Các thao tác thay đổi cấu hình của PFSense thông qua PFSenseMan đƣợc thực hiện theo từng phiên làm việc (session) của ngƣờng dùng với ứng dụng PFSenseMan.
Công cụ ứng dụng PFSenseMAN sử dụng các session để lƣu thông tin dữ liệu của các tệp tin template phục vụ cho việc truy xuất khai thác, xử lý (thêm mới, cập nhật, xóa) và kết xuất dữ liệu cho ngƣời sử dụng trong một session do các đặc điểm: Tệp cấu hình của hệ thống PFSense có kích lớn, quan hệ giữa các thẻ trong XML phức tạp cho quá trình xây dựng các bảng lƣu trữ
Phiên làm việc (session) là khoảng thời gian ngƣời sử dụng giao tiếp với một ứng dụng. Session bắt đầu khi ngƣời sử dụng truy cập vào ứng dụng lần đầu tiên, và kết thúc khi ngƣời sử dụng thoát khỏi ứng dụng. Mỗi session sẽ có một định danh (ID), mỗi session khác nhau sẽ có ID khác nhau. Trong ngữ cảnh ứng dụng web website sẽ quyết định khi nào session bắt đầu và kết thúc. Trong một session, website có thể lƣu trữ một số thông tin nhƣ đánh dấu bạn đã login hay chƣa, các kết quả trung gian...
Trong một phiên làm việc, PFSenseMan sử dụng các biến session của web để lƣu trữ dữ liệu tạm. Các biến session quan trọng này bao gồm:
Session để lưu trữ thông tin thẻ lan
Session["LAN_FROM"]: Lƣu trữ thông tin từ địa chỉ trong thẻ <lan>
Session["LAN_TO"]: Lƣu trữ thông tin tới địa chỉ trong thẻ <lan>
Session để lưu trữ thông tin thẻ <opt>
Session["OPT_FROM"]: Lƣu trữ thông tin từ địa chỉ trong thẻ <opt>
Session["OPT_TO"]: Lƣu trữ thông tin tới địa chỉ trong thẻ <opt>
Session["OPT_STATICMAP"]: Lƣu trữ thông tin danh sách các địa chỉ IP trong thẻ <staticmap>
Việc sử dụng các biến session giúp thời gian thao tác và xử lý dữ liệu cho
ngƣời sử dụng nhanh chóng, chính xác và không phải lập lại các thông tin nhiều lần. Ngoài ra dữ liệu đƣợc lƣu trữ tạm thời nên không gây ảnh hƣởng đến hệ thống đang chạy hiện tại.Session chỉ có thời gian sử dụng nhất định, sau khoảng thời gian này dữ liệu hiện tại của ngƣời sử dụng sẽ mất hoàn toàn.
CHƢƠNG 4 CÁC KẾT QUẢ ĐẠT ĐƢỢC
4.1Hiệu quả về mặt thời gian
PFSenseMan là một công cụ hỗ trợ hiệu quả cho hệ thống firewall PFSense trong việc tổ chức quản lý cấp phát địa chỉ IP động. Với bất kỳ hệ thống nào khi sử dụng tính năng MAC filter thì việc lập danh sách địa chỉ MAC (blacklist or whitelist) đều mất rất nhiều thời gian của ngƣời quản trị.
Ví dụ đối với hệ thống mạng của Học viện CSND có khoảng 4.000 người số người sử dụng thay đổi hàng năm khoảng 1000 người.
Trƣớc khi có PFSenseMan ngƣời quản trị hệ thống PFSense phải xử lý theo quy trình sau:
Thêm, sửa, xóa từng bản ghi thông tin ngƣời sử dụng offline
Apply cấu hình offline thành online
Xây dựng luật truy xuất tài nguyên cho mỗi ngƣời hoặc nhóm ngƣời sử dụng thông qua địa chỉ IP đã cấp phát.
Thời gian cho việc tạo lập mới danh sách cho phép ngƣời sử dụng kết nối mạng và quản lý truy xuất mất khoảng (4 ngƣời) * (6 tuần); Thời gian cho việc thay đổi lƣợng ngƣời sử dụng (1000 ngƣời) mất khoảng (4 ngƣời) * (3 tuần). Sau khi có PFSenseMan ngƣời quản trị hệ thống xử lý theo quy trình:
Gửi link file Excel theo nhóm cho ngƣời sử dụng (học viên), yêu cầu ngƣời sử dụng tự điền các thông tin của ngƣời sử dụng đầu cuối gồm: {MAC address, các thông tin về tên, khóa, lớp… theo cấu trúc đƣợc cho sẵn}
Tiền sử lý file Excel dữ liệu đầu vào gồm: Gán địa chỉ IP theo luật truy xuất tài nguyên đã đƣợc xây dựng trƣớc theo ánh xạ 1-1 giữa địa chỉ IP và địa chỉ MAC, kiểm tra tính hợp lệ của địa chỉ MAC,…
Backup tệp cấu hình hệ thống PFSense (định dạng XML) và mở chúng bằng công cụ PFSenseMan.
Import file cấu hình thông tin ngƣời sử dụng vào PFSense thông qua PFSenseMan bao gồm các bƣớc:
o Kiểm tra tính trùng lặp địa chỉ MAC, địa chỉ IP bằng công cụ PFSenseMan (tự động loại bỏ trùng lặp thông qua các hàm kiểm tra đƣợc xây dựng sẵn).
o Sinh các thẻ XML theo chuẩn cấu hình của hệ thống PFSense thông qua công cụ PFSenseMan
o Xuất ra tệp cấu hình XML theo cấu trúc tệp cấu hình của PFSense bằng công cụ PFSenseMan
Restore file cấu hình vào hệ thống firewall PFSense và khởi động lại hệ thống firewall PFSense
Thời gian thực hiện theo quy trình trên cho việc thêm mới hoặc thay đổi ngƣời sử dụng hàng năm mất thời gian khoảng (1 ngƣời) * (3 ngày).
Bảng 4.1 so sánh hiệu quả về thời gian chi tiết cho các thao tác thêm, sửa, xóa giữa sử dụng công cụ trực tiếp của hệ thống firewall PFSense và sử dụng xóa giữa sử dụng công cụ trực tiếp của hệ thống firewall PFSense và sử dụng công cụ PFSenseMan. So sánh hiệu quả về thời gian Sử dụng công cụ có sẵn của PFsense Sử dụng công cụ PFSenseMan
Thêm 01 danh sách Số bản ghi trong danh sách x 60s 10 phút cho cả danh sách Cập nhật 01 danh sách Số bản ghi trong danh sách x 60s 10 phút cho cả danh sách Xóa 01 danh sách Số bản ghi trong danh sách x 30s 10 phút cho cả danh sách
Bảng 4.1: So sánh hiệu quả về thời gian
4.2Hiệu quả về mặt tổ chức quản lý
PFSenseMan không những là một công cụ hỗ trợ PFSense hiệu quả về mặt thời gian mà còn là một công cụ hiệu quả về mặt điều hƣớng truy xuất tài nguyên trong hệ thống mạng đối với ngƣời sử dụng đầu cuối thông qua việc tổ chức cấp phát địa chỉ IP một cách hợp lý, dễ dàng triển khai.
PFSense thông qua bộ kiểm tra và tự động loại bỏ các lỗi cấu trúc, lỗi trùng lặp địa chỉ MAC, địa chỉ IP đƣợc xây dựng trong công cụ.
Thứ hai: Đó là khả năng tổ chức địa chỉ IP theo nhóm một cách dễ dàng, bằng các thao tác xử lý địa chỉ IP trên phần mềm Microsoft Excel, từ đó ngƣời quản trị dễ dàng gộp nhóm các địa chỉ IP thành các nhóm phù hợp với các alias trong quá trình xây dựng các luật truy xuất tài nguyên trên mạng.
Thứ ba: Đó là hỗ trợ khả năng tìm kiếm, hiển thị các bản ghi theo dải địa chỉ IP để ngƣời quản trị dễ dàng hơn trong các thao tác sửa, xóa các bản ghi.
Thứ tƣ: Đó là khả năng hỗ trợ kết xuất các bản ghi ra định dạng Excel để dễ dàng cho ngƣời quản trị trong công tác thông kê số lƣợng ngƣời sử dụng đầu cuối trong từng VLAN để từ đó xây dựng các chính sách phân bổ băng thông trên mạng một cách hợp lý nhất có thể.
Bảng 4.2 so sánh hiệu quả về mặt tổ chức quản lý giữa công cụ hiện tại của hệ thống firewall PFSense và công cụ PFSenseMan
So sánh hiệu quả về tổ chức có sẵn của PFsense Sử dụng công cụ Sử dụng công cụ PFSenseMan
Tính năng kiểm tra trùng lặp địa chỉ Mac
Có Có
Tính năng kiểm tra trùng lặp địa chỉ IP
Không Có
Tính năng tìm kiếm thông tin của 01 thiết bị
Có Có
Tính năng tìm kiếm theo dải địa
chỉ IP Không Có
Tùy chọn hiển thị số bản ghi Không Có Hỗ trợ kết xuất dữ liệu ra định
dạng Excel
Không Có
KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN
Nội dung của Luận văn này tập chung tìm hiểu và làm rõ một số khái niệm, yếu tố của bài toán tổng quát “Quản lý truy cập mạng”. Đồng thời cũng nêu ra một số giải pháp quản lý truy cập mạng phổ biến hiện nay (nội dung chƣơng 1). Trong các giải pháp đó giải pháp quản lý truy cập mạng bằng hệ thống tích hợp PFSense là một giải pháp tốt với các đặc điểm: miễn phí, mạnh mẽ, đa dạng đƣợc chứng minh qua thực tế với hàng triệu lƣợt tải về và sử dụng trong nhiều môi trƣờng khác nhau. Trong chƣơng 2 chúng tôi trình bày nội dung đã tìm hiểu và ứng dụng các dịch vụ của hệ thống firewall PFSense vào môi trƣờng công tác thực tế tại Học viện Cảnh sát nhân dân và đem lại những hiệu quả tích cực, đồng thời cũng đƣa ra những nhận định về những hạn chế của hệ thống PFSense khi ứng dụng triển khai.
Nội dung chƣơng 3 chúng tôi đề xuất xây dựng công cụ PFSenseMan thay thế cho một số công cụ có sẵn (nhƣng còn hạn chế) trong bài toán tổ chức cấp phát địa chỉ IP – yếu tố cốt lõi cho xây dựng bài toán quản lý truy cập mạng của PFSense với nhiều yếu tố cải tiến hơn nhằm mục đích nâng cao hiệu quả về mặt thời gian, tổ chức quản lý. Các kết quả bằng thực tế triển khai đã đƣợc chúng tôi nêu lên trong nội dung chƣơng 4.
Tuy vậy công cụ vẫn còn những hạn chế. Hạn chế lớn nhất của PFSenseMan là PFSenseMan hiện đƣợc thiết kế nhƣ một ứng dụng “out-of-the- box” đối với PFSense. Điều này dẫn đến các hạn chế sau. Thứ nhất, ngƣời quản trị cần lần lƣợt sử dụng qua lại 2 hệ thống phần mềm độc lập là PFSenseMan và PFSense. Điều này khiến cho các thao tác nghiệp vụ cấu hình hệ thống dù đã hiệu quả hơn nhƣng vẫn chƣa phải là giải pháp tối ƣu nhất. Thứ hai, sau khi thực hiện cấu hình thành công, ngƣời quản trị cần khởi động lại hệ thống sau khi cập nhật các thiết bị sử dụng. Sẽ là tốt hơn nếu PFSenseMan đƣợc “tích hợp sâu” với PFSense để thành một hệ thống hoàn chỉnh. Điều này giúp việc sử dụng hệ thống để cấu hình trở nên trong suốt và đơn giản hơn. Ngoài ra nó cũng có thể giúp hỗ trợ thực hiện cấu hình ngay khi hệ thống đang online mà không cần phải khởi động lại hệ thống.
FreeBSD để từ đó sẽ xây dựng các module trực tiếp trong hệ thống firewall PFSense nhằm loại bỏ các hạn chế nêu trên. Đồng thời cũng mở rộng cho các dịch vụ khác của PFSense nhƣ Captive Portal, quản lý alias, vân vân.
TÀI LIỆU THAM KHẢO
[1] Jim Geier, “Implementing 802.1x Security Solutions for Wired and Wireless Networks”, Wiley Publising, 2008
[2] Sergey Poznyakoff, “Gnu Radius Reference Manual”, Published by Free
Software Foundation, 2003
[3] Ralph Droms, Ted Lemon, “The DHCP Handbook”, 2nd
Edition, SAMS, November 2002
[4] R. Droms, W. Arbaugh, “Authentication for DHCP Messages”, RFC 3118,
June 2001
[5] Chirag Sheth, Rajesh Thakker, “Performance Evaluation and Comparative
Analysis of Network Firewalls”, 2011 IEEE
[6] Christopher M. Buechler, Jim Pingle, “The Definitive Guide to the PFSense Open Source Firewall and Router Distribution”, 2009
[7] Matt Williamson, “PFSense 2 Cookbook”, 2011 Packt Publishing
[8] FreeBSD Handbook, “The FreeBSD Documentation Project”, 1995-2014
https://www.freebsd.org/doc/handbook/
[9] The FreeRADIUS Server Project and Contributors, 2014,
http://freeradius.org/doc/
[10] Duane Wessels, “Squid: The Definitive Guide”, 2004, O'Reilly and Associates Publishing
[11] http://www.nongnu.org/quagga/docs/quagga.html, Copyright © 1999-2005
Kunihiro Ishiguro, et al.
[12] Ofir Akin, CTO Blackhat USA 2006,
http://www.blackhat.com/presentations/bh-usa-06/BH-US-06-Arkin.pdf
[13]
Benny Czarny, “Network Access Control Technologies”, OPSWAT Inc,
https://www.opswat.com/sites/default/files/Network_Access_Control_Technol ogies.pdf
[14] http://en.wikipedia.org/wiki/Network_Admission_Control
[15] http://en.wikipedia.org/wiki/Network_Access_Protection [16] http://en.wikipedia.org/wiki/Trusted_Network_Connect
PHỤ LỤC
Phụ lục 1: Biểu đồ use case quản lý DHCP
uc Use case QL DHCP
QL DHCP
Nguoi quan tri
Them moi nguoi dung
Cap nhat nguoi dung
Loai bo nguoi dung Xuat du lieu
Xuat du lieu XML Xuat du lieu Excel
Tim kiem
PFSense Doc DS nguoi dung tu file
excel
Hien thi danh sach nguoi dung «include» «include» «extend» «extend» «include»
Mã use case UC_use_case_them_moi_nguoi_dung. Tên use case Thêm mới ngƣời dùng.
Mô tả Cho phép ngƣời quản trị thêm mới một nhóm ngƣời dùng bằng cách import danh sách thông tin nhóm ngƣời dùng đó từ file excel khai báo trƣớc theo định dạng mẫu.
Tác nhân Ngƣời quản trị. Điều kiện
trƣớc
Ngƣời quản trị phải đang ở giao diện PFSenseMan hiển thị danh sách ngƣời dùng trên mỗi VLAN có trƣớc.
Điều kiện sau Hiển thị thông tin danh sách ngƣời sử dụng vừa đƣợc tạo mới. Dòng sự kiện
chính
Ngƣời dùng thực hiện các thao tác chính sau:
Bƣớc 1: Nhân viên thiết kế chọn chức năng cấu hình DHCP.
Bƣớc 2: Chọn chức năng thêm mới danh sách tự động.
Bƣớc 3: Chọn đƣờng dẫn đến tệp lƣu trữ danh sách ngƣời sử dụng (định dạng xls).
Bƣớc 4: Chọn chức năng xem tệp tin để phát hiện các lỗi trùng lặp IP, MAC, lỗi cấu trúc IP, MAC.
Bƣớc 5: Chọn chức năng chấp nhận để ghi thông tin danh sách ngƣời sử dụng vào hệ thống PFSenseMan.
Bƣớc 6: Hệ thống tiến hành lƣu dữ liệu vào CSDL XML và thông báo, hiển thị kết quả trên màn hình.
Dòng sự kiện thay thế
Phụ lục 2: Biểu đồ use case quản lý Aliases
uc QL Aliases
QL nhom tap quyen (Aliases)
Nguoi quan tri
Them nguoi dung v ao nhom quyen
Loai bo nguoi dung khoi nhom quyen
PFSense Rule
Xuat du lieu XML Doc DS nguoi dung tu file
excel
Hien thi nhom quyen
Phụ lục 3: Biểu đồ tuần tự thêm mới nhóm NSD vào quản lý DHCP
sd Logical Vi...
Nguoi quan tri QL DHCP Form XML Templates Excel file DHCP Entity
Control
XLM file Exccel Template Control
DHCP Control
alt Loi cau truc MAC, trung IP
Mo form() Chon file cau hinh goc cua PFSense()
Nhan dang mau theo Templates()
Doc file XML() Hien thi danh sach nguoi dung()
Them moi danh sach nguoi dung()
Nhan dang theo mau()
Doc file excel()
Goi thu vien kiem tra loi() Tra ve thong bao loi()
Khoi tao danh sach nguoi dung()