DHCP trong PFSense cho phép cấu hình tối đa 2 máy chủ chạy dịch vụ WINS Server, 2 máy chủ này không nhất thiết phải đặt trong cùng một subnet. Nhƣng để điều hƣớng các thiết bị clients đến các máy chủ đó thì phải đƣợc cấu hình định tuyến giữa subnet đó với địa chỉ IP của các máy chủ chạy dịch vụ WINS Server.
Nếu dịch vụ DNS Forwarder đang đƣợc sử dụng thì khi cấp phát địa chỉ IP cho các clients dịch vụ DHCP Server mặc định sẽ gán địa chỉ của máy chủ DNS cho các clients này khi trƣờng này bị bỏ trống.
DNS Forwarder đƣợc kích hoạt mặc định trên hệ thống firewall PFSense, sử dụng những máy chủ DNS đƣợc cấu hình trong hệ thống hoặc thu đƣợc tự động từ các ISP thu đƣợc từ các cấu hình WAN Interface (DHCP, PPPoE, PPTP) trong hệ thống và đƣợc lƣu lại trong bộ nhớ đệm.
Ở các phiên bản trƣớc việc kết nối đến các máy chủ DNS theo nguyên tắc: Thử kết nối đến từng máy chủ, nếu thất bại thì chuyển sang máy chủ khác. Điều này dẫn đến độ trễ khi một hay nhiều máy chủ DNS không thể kết nối đƣợc. Từ phiên bản PFSense 1.2.3 trở đi việc truy vấn các máy chủ DNS đƣợc thực hiện cùng một lúc và nếu kết nối đƣợc đến mày chủ nào sẽ lƣu cấu hình của máy chủ đó trong bộ nhớ đệm, điều này đã cải thiện đáng kể tốc độ kết nối mạng.
2.2.3 Dịch vụ cân bằng tải (Load balancing)
Chức năng cân bằng tải của PFSense đƣợc cung cấp bởi dummynet [8] nó hỗ trợ triển khai theo cả 2 hƣớng Inbound và Outbound. Hƣớng Outbound có thể triển khai chức năng này bằng cách kết hợp nhiều đƣờng WAN vào nhằm đáp ứng băng thông lớn hơn cho các thiết bị trong mạng internal ra ngoài Internet. Hƣớng Inbound đƣợc sử dụng bởi các nhà cung cấp dịch vụ nhƣ Webservice để có thể đáp ứng yêu cầu truy cập đồng thời vào hệ thống với số lƣợng lớn.
PFSense cung cấp hai tùy chọn cho chức năng cân bằng tải đó là failover và load balancer.
Tùy chọn failover cho phép triển khai các đƣờng WAN dự phòng với các thứ tự ƣu tiên từ 1..n. Khi đƣờng WAN thứ nhất bị lỗi hoặc hết băng thông sẽ tự động chuyển xuống các đƣờng WAN có mức ƣu tiên thấp hơn.
Tùy chọn load balancer cho phép hệ thống tự động chia tải đều trên các WAN dựa vào thời gian trả lời các request yêu cầu từ phía các client. Nếu thời gian phản hồi các yêu cầu từ WAN thứ nhất chậm trễ thì yêu cầu sẽ đƣợc tự động chuyển sang các đƣờng WAN khác. Với tùy chọn này bắt buộc phải đặt một đƣờng WAN làm mặc định. Trong thực tế tùy thuộc vào nhu cầu thiết kế hệ thống mạng mà ngƣời quản trị có thể áp dụng một trong hai tùy chọn trên hoặc kết hợp cả hai tùy chọn với nhau để đạt đƣợc hiệu quả cần thiết.
2.2.4 Ứng dụng định tuyến trong PFSense
Một tính năng cơ bản khác của PFSense đó là chức năng làm công cụ định tuyến. Trong mô hình mạng cho các tổ chức nhƣ trƣờng đại học, doanh nghiệp cỡ vừa, lớn đòi hỏi hệ thống mạng phải đƣợc phân tách thành nhiều vùng riêng biệt nhƣ vùng DMZ, vùng Database Server, Aplication Server, vùng mạng LAN. PFSense đáp ứng đầy đủ các yêu cầu về định tuyến với 2 cách thức triển khai dƣới đây:
Static Routes: Thiết lập bảng định tuyến tĩnh giữa các thiết bị router với các mạng con, các máy chủ cài đặt dịch vụ, vân vân, theo những cổng đƣợc khai báo trên hệ thống PFSense.
Routing Public IPs: Cấu hình định tuyến các địa chỉ IP công cộng khi muốn cấu hình một subnet cho một interface mạng bên trong hệ thống firewall. Giao thức CARP thƣờng đƣợc sử dụng trong cách thức triển khai này. Cần ít nhất hai địa chỉ IP public một gán cho địa chỉ của WAN và một địa chỉ còn lại gán cho một cho các mạng con bên trong hệ thống firewall.
Các giao thức định tuyến đƣợc hỗ trợ trong PFSense gồm RIP (Routing Information Protocol), BGP (Border Gateway Protocol) ngoài ra PFSense còn hỗ trợ giao thức OSPF (Open Shortest Path First) đƣợc cài đặt nhƣ một packages tại một số điểm.
2.2.5 Dịch vụ Captive Portal
Nội dung chƣơng một đã đề cập đến một giải pháp quản lý truy cập dựa trên kỹ thuật Captive Portal, đó là phƣơng pháp tự động chuyển hƣớng ngƣời sử dụng đến một trang xác thực đƣợc xây dựng bằng cách chặn bắt tất cả các gói tin (bất kể địa chỉ IP và port nào) cho đến khi nào ngƣời sử dụng vƣợt qua đƣợc chứng thực trên trang web mà hệ thống chuyển hƣớng đến. PFSense cung cấp dịch vụ Captive Portal với những đặc điểm [6][7] nhƣ:
Có thể cấu hình cho nhiều interface hoặc trên mỗi interface độc lập. Captive Portal hỗ trợ xác thực với chính PFSense hoặc thông qua máy
chủ FreeRadius.
Có 2 phƣơng pháp xác thực: dựa vào cặp Username/Password hoặc Voucher key.
Hỗ trợ MAC filter trong xác thực.
Hỗ trợ xác thực theo thời gian thực hoặc theo phiên.
2.2.6 Chức năng VPN trong PFSense
VPN là một tính năng hết sức quan trọng trong một hệ thống mạng, nó cung cấp dịch vụ truy cập thông tin nội bộ từ mọi nơi một cách an toàn, ít tốn kém trong xu thế hiện nay. Từ những phiên bản 1.2.x về trƣớc PFSense chỉ cung cấp một giao thức VPN duy nhất đó là PPTP với xác thực bằng cặp username/password nên tính năng VPN kém an toàn và dễ bị đánh cắp mật khẩu bằng nhiều cách khác nhau. Do vậy từ phiên bản 2.0 trở đi PFSense cung cấp thêm 02 cách triển khai VPN gồm: IPSec, OpenVPN với các chứng thực an toàn
và hiệu quả hơn. Mặc dù còn nhiều hạn chế trong việc thiết lập các cấu hình và tối ƣu hóa các hỗ trợ xác thực đối với ngƣời sử dụng.
Giao thức IPSec sử dụng các khóa công khai để sinh ra cặp username/password làm xác thực, IPSec chia làm 2 pha, ở pha 1 sử dụng Internet and Key Management Protocol (ISAKMP) để tạo các khóa bí mật (PSK). Ở pha 2 sau khi việc xác thực thành công việc truy cập đến các vùng tài nguyên trên mạng phụ thuộc vào các luật đƣợc thiết lập trƣớc đó. Thời gian sống[6] của các xác thực đƣợc cài đặt mặc định cho pha 1 là 28800s và pha 2 là 3600s. Kỹ thuật mã hóa trong IPSec sử dụng MD5 và SHA1.
Ngƣợc lại vời IPSec giao thức OpenVPN sử dụng khóa công khai PKI bằng cách sử dụng khóa X.509 để xác thực cùng với cặp username/password. PFSense có sẵn các công cụ để sinh các khóa công khai và bí mật trong việc xác thực bằng các câu lệnh.
2.3XML trong quản lý cấu hình của PFSense
Gần đây XML đã đƣợc áp dụng cho nhiều công nghệ quản trị mạng và nó cũng đã đƣợc đề xuất nhƣ là một cách thay thế cho các công cụ quản trị mạng hiện có. Hơn nữa hầu hết các thiết bị mạng hiện nay đã đƣợc nhúng vào các SNMP agent và đƣợc quản trị bởi SNMP manager; Nhƣng với sự phát triển mạnh mẽ của các mạng, đặc biệt là mạng Internet cùng với sự phát triển của các thiết bị mạng kèm theo, thì quản trị mạng dựa trên SNMP là khó khăn và không hiệu quả. Để khắc phục những hạn chế của quản trị mạng dựa trên SNMP, quản trị mạng dựa trên XML đƣợc xem là một giải pháp tốt.
XML (Extensible Markup Language) là siêu ngôn ngữ đánh dấu mở rộng, đƣợc chuẩn hóa bởi W3C cho việc chuyển đổi dữ liệu trên Web, đƣợc sử dụng rộng rãi trong kinh doanh, chuyển đổi dữ liệu, thƣơng mại điện tử và tạo các ứng dụng cụ thể. Nó hỗ trợ một vài chuẩn cụ thể nhƣ lƣợc đồ XML, mô hình đối tƣợng tài liệu (DOM), API(Application Programming Interfaces), XPath (XML Path Language), XSL (Style-sheet Language), vân vân. Có rất nhiều giải pháp mang tính hiệu quả cho việc áp dụng các kỹ thuật liên quan đến XML cũng nhƣ những bổ sung để việc mở rộng quản trị mạng có thể thực hiện đƣợc. Việc sử dụng XML trong quản trị mạng hiện nay có rất nhiều lợi ích nhƣ:
Giao thức của XML phát triển rộng giống nhƣ HTTP đƣợc sử dụng để truyền dữ liệu chính xác.
DOM APIs đƣợc sử dụng để dễ dàng truy cập và quản lý đa dạng dữ liệu từ các ứng dụng.
Biểu thức Xpath đƣợc sử dụng để truy cập các đối tƣợng địa chỉ hiệu quả mà không cần quản lý dữ liệu.
XSLT đƣợc sử dụng để xử lý dữ liệu quản trị một cách dễ dàng và tạo ra các tài liệu HTML với đa dạng các giao diện ngƣời dùng.
WSDL và SOAP đƣợc sử dụng để định nghĩa dịch vụ Web với các thao tác quản trị ở bậc cao.
PFSense tích hợp công nghệ XML cho việc quản lý cấp phát địa chỉ động cũng nhƣ các dịch vụ khác của nó nhƣ một giải pháp về Database. Quá trình truy xuất dữ liệu từ XML đƣợc mô hình hóa nhƣ (Hình 2.5, Hình 2.6).