Recent from talks
Nothing was collected or created yet.
PfSense
View on Wikipedia
| pfSense | |
|---|---|
| Version of the FreeBSD operating system | |
The main dashboard of pfSense 2.7.0-DEVELOPMENT | |
| Developer | Rubicon Communications, LLC (Netgate) |
| OS family | FreeBSD |
| Working state | Current |
| Source model | Closed source and open source |
| Released to manufacturing | Oct 2006 |
| Latest release | |
| Repository | |
| Supported platforms | 32-bit (discontinued in 2.4.x); 64-bit Intel / AMD |
| Default user interface | Web |
| License | Apache License 2.0[2] (Applies to pfSense CE) |
| Preceded by | m0n0wall |
| Official website | www |
| Support status | |
| |
pfSense is a firewall/router computer software distribution based on FreeBSD. The open source pfSense Community Edition (CE) and pfSense Plus is installed on a physical computer or a virtual machine to make a dedicated firewall/router for a network.[3] It can be configured and upgraded through a web-based interface, and requires no knowledge of the underlying FreeBSD system to manage.[4][5]
Overview
[edit]The pfSense project began in 2004 as a fork of the m0n0wall project by Chris Buechler and Scott Ullrich. Its first release was in October 2006.[6] The name derives from the fact that the software uses the packet-filtering tool, PF.[7]
Notable functions of pfSense include traffic shaping, VPNs using IPsec or PPTP, captive portal, stateful firewall, network address translation, 802.1q support for VLANs, and dynamic DNS (DDNS).[8] pfSense can be installed on hardware with an x86-64 processor architecture. It can also be installed on embedded hardware using Compact Flash or SD cards, or as a virtual machine.[9]
Release cadence and support
[edit]Since 2021,[1] pfSense Plus editions have followed an annual major version release cadence. The CE version of the software has followed an annual minor version release cadence. Based on their list of unsupported software,[10] pfSense only supports the current and previous version of both the CE and Plus editions.
OPNsense
[edit]In January 2015, the OPNsense project was started by forking the version of pfSense at that time.[11]
In November 2017, a World Intellectual Property Organization panel found Netgate, the copyright holder of pfSense, utilized OPNsense' trademarks in bad faith to discredit OPNsense, and obligated Netgate to transfer ownership of a domain name to Deciso.[12][13]
WireGuard protocol support
[edit]In February 2021, pfSense CE 2.5.0 and pfSense Plus 21.02 added support for a kernel WireGuard implementation. Support for WireGuard was temporarily removed in March 2021 after implementation issues were discovered by WireGuard founder Jason Donenfeld.[14][15][16] The July 2021 release of pfSense CE 2.5.2 version re-included WireGuard.[17]
See also
[edit]References
[edit]- ^ a b c "Releases — Versions of pfSense and FreeBSD". netgate.com. Retrieved 2025-05-31.
- ^ "pfSense adopts Apache 2.0 License". Serve The Home (Loyolan Ventures, LLC). 19 June 2016.
- ^ Ot, Anina (2021-02-03). "6 Reasons Why You Should Be Using pfsense Firewall". MUO.
- ^ "You should be running a pfSense firewall". InfoWorld. 22 December 2014. Retrieved 27 July 2015.
- ^ Miller, Sloan (26 June 2008). "Configure a professional firewall using pfSense". Free Software Magazine (22). Archived from the original on 3 October 2011. Retrieved 27 September 2009.
- ^ Fields, Robert (28 October 2016). "Happy 10th Anniversary to pfSense Open Source Software". Netgate Blog.
- ^ Mobily, Tony (14 August 2007). "Interview with Jeff Starkweather, Chris Buechler and Scott Ullrich". Free Software Magazine. Archived from the original on 12 September 2015. Retrieved 5 May 2020.
- ^ "pfSense® CE functions". Miniserver Blog.
- ^ "How to Install pfSense Firewall on Ubuntu and CentOS?". Geekflare. 2020-02-06.
- ^ "Releases — Older/Unsupported Releases". docs.netgate.com.
- ^ Fischer, Werner (2018-11-21). OPNsense: the "open" firewall for your datacenter. Retrieved 2024-10-11 – via media.ccc.de.
- ^ "WIPO Domain Name Decision: D2017-1828". WIPO. November 12, 2017.
- ^ "OPNsense – Forkin' Fork". www.opnsense.com. Archived from the original on 2016-03-14. Retrieved 2025-08-27.
- ^ Salter, Jim (2021-03-15). "In-kernel WireGuard is on its way to FreeBSD and the pfSense router". Ars Technica. Retrieved 2021-03-20.
- ^ "Releases — 21.02/21.02-p1/2.5.0 New Features and Changes". docs.netgate.com. Retrieved 2021-03-20.
- ^ Kumar, Rohit (2021-03-19). "pfSense and FreeBSD Pull Back on Kernel WireGuard Support". ServeTheHome. Retrieved 2021-03-20.
- ^ "pfSense CE 2.5.2-RELEASE Now Available". www.netgate.com.
Further reading
[edit]- Mastering pfSense, Second Edition Birmingham, UK: Packt Publishing, 2018. ISBN 978-1788993173. By David Zientra.
- Security: Manage Network Security With pfSense Firewall [Video] Birmingham, UK: Packt, 2018. ISBN 978-1789538991. By Manuj Aggarwal.
External links
[edit]PfSense
View on GrokipediaHistory
Origins and Early Development
The pfSense project began in 2004 as a fork of the m0n0wall embedded firewall project.[5] It was founded by Chris Buechler and Scott Ullrich, who sought to overcome m0n0wall's constraints, including its reliance on the older ipf packet filter and focus on resource-limited embedded hardware with only 64 MB RAM support.[6][7] The primary motivations were to incorporate the more advanced pf packet filter from OpenBSD, enable broader hardware compatibility beyond embedded systems, and add features like enhanced VPN support, traffic shaping, and proxy capabilities for greater flexibility.[6][8] Initial development emphasized building a customizable, open-source firewall and router solution tailored for small to medium-sized networks, utilizing FreeBSD as the underlying operating system for its stability and performance.[7][5] The first public release occurred in October 2006 as pfSense 1.0, which introduced a web-based graphical user interface to simplify management and configuration.[5] This marked pfSense's emergence as a distinct platform, later evolving into commercial support through Netgate, a company formed by the founders to provide hardware appliances and professional services.[9]Release History and Versions
The pfSense project began releasing stable versions with the 1.x series in 2006, focusing on establishing core functionality and stability based on FreeBSD 6.x. The initial 1.0 release occurred on October 13, 2006, marking the first official version after development as a fork of m0n0wall. Subsequent minor updates, such as 1.2.3 in December 2009, refined firewall rules, NAT handling, and basic VPN support, with the series concluding after three years of iterative improvements to address early production needs.[10][11] The transition to the 2.x series introduced significant architectural changes, starting with version 2.0 on October 28, 2011, which featured a complete overhaul of the web-based graphical user interface (GUI) for enhanced usability and configuration management.[12] This major release shifted to FreeBSD 8.1-RELEASE as the base OS and included improved package management and dashboard customization. Later milestones included 2.3.0 in April 2016, which upgraded to FreeBSD 10 for better hardware compatibility and performance optimizations in routing and filtering. The 2.5.0 release in February 2021 brought FreeBSD 12.2 and native kernel-level WireGuard VPN integration, enabling faster and more secure tunneling options.[13][14] In 2023, the 2.7.x series (starting with 2.7.0 in July) emphasized security enhancements, including an upgrade to OpenSSL 3.0.12 to address end-of-life vulnerabilities in prior versions and deprecation of weak IPsec algorithms for improved cryptographic standards. The most recent major update, 2.8.0 in May 2025, advanced to FreeBSD 15-CURRENT and added support for hardware acceleration via Intel QuickAssist Technology (QAT) 4000 series devices, boosting throughput for encryption-heavy workloads. Minor updates, such as 2.8.1 in September 2025, primarily deliver bug fixes and security patches.[15][16][17]| Major Version | Release Date | FreeBSD Base | Key Milestone |
|---|---|---|---|
| 1.0 | Oct 13, 2006 | 6.2 | Initial stable release for core firewall stability |
| 2.0 | Oct 28, 2011 | 8.1-RELEASE | Major GUI overhaul and package system improvements |
| 2.3.0 | Apr 12, 2016 | 10.3 | Enhanced hardware support and performance tuning |
| 2.5.0 | Feb 17, 2021 | 12.2 | WireGuard integration and OS modernization |
| 2.7.0 | Jul 13, 2023 | 14.0-CURRENT | Security upgrades including OpenSSL 3.0 |
| 2.8.0 | May 28, 2025 | 15.0-CURRENT | Hardware acceleration for crypto operations |
Technical Overview
Underlying Architecture
pfSense is built on FreeBSD, a Unix-like operating system renowned for its stability, robust security mechanisms, and extensive hardware compatibility, which supports deployments in embedded devices and virtualized environments.[7] This foundation enables pfSense to leverage FreeBSD's mature kernel and networking stack, ensuring reliable performance under high network loads while maintaining a small footprint suitable for resource-constrained hardware.[7] The architecture of pfSense is modular, with the core FreeBSD operating system managing kernel-level operations such as packet forwarding and system resource allocation, complemented by user-space tools dedicated to networking tasks. This structure emphasizes a single-purpose design tailored for routing and firewall functions, minimizing overhead and enhancing efficiency by avoiding general-purpose computing features. The web-based configuration interface, constructed using PHP scripts and served by the lightweight Lighttpd web server, facilitates intuitive GUI management of system settings.[22] Configuration data is stored in a centralized XML file, which isolates persistent settings from runtime processes, allowing for straightforward backups, restores, and synchronization across high-availability setups.[23] In the packet processing pipeline, pfSense utilizes FreeBSD's capabilities, including support for jails to isolate optional services and reduce the overall attack surface by compartmentalizing potentially vulnerable components.[6] This integration of the pf packet filter as the core firewall engine ensures stateful inspection and efficient traffic handling at the kernel level.[24]Core Components and Technologies
pfSense relies on the pf packet filter as its primary firewall engine, a stateful packet filtering system originally developed for OpenBSD and ported to FreeBSD in 2004. Integrated directly into the FreeBSD kernel, pf enables efficient processing of network traffic at the operating system level, supporting features such as Network Address Translation (NAT), customizable filtering rules based on criteria like source/destination IP, ports, and protocols, and traffic normalization to scrub malformed packets and ensure consistent rule application. This kernel-level integration allows pfSense to handle high-throughput filtering with minimal overhead, generating rules dynamically from the graphical user interface (GUI) and storing them in temporary files for runtime execution via thepfctl utility.[25]
For essential network services, pfSense incorporates the ISC DHCP server to dynamically allocate IPv4 addresses and related configuration details, such as gateways and DNS servers, from predefined pools to clients on local interfaces, though as of 2025, it is transitioning to the more modern Kea DHCP backend for improved performance and feature parity. The DNS resolver utilizes Unbound, a validating, recursive, and caching DNS server that supports DNSSEC validation and DNS over TLS for secure query forwarding, operating in resolver mode by default to query root servers directly or in forwarding mode to upstream resolvers. Additionally, the NTP daemon (ntpd) provides time synchronization, allowing the firewall to act as a local NTP server for clients while querying upstream pools like ntp.org to maintain accurate system clocks, which is crucial for logging and certificate validation.[26][27][28]
Monitoring and logging capabilities in pfSense leverage several integrated technologies for real-time oversight and event tracking. SNMP (Simple Network Management Protocol) support, powered by the bsnmpd daemon with loadable modules for MIB II, PF firewall stats, and host resources, enables remote polling of metrics like CPU usage, memory, disk I/O, and network traffic via UDP port 161, along with configurable traps for events such as interface changes sent to designated servers. Syslog handles event logging, capturing system, firewall, and service activities in plain-text files under /var/log/ since pfSense Plus 21.02, with options for remote forwarding to external servers for long-term retention and filtering via the GUI for specific processes or time ranges. Real-time statistics are visualized through RRD (Round-Robin Database)-based graphs, which collect and store data on throughput, states, queues, and system utilization, accessible under the Monitoring status page without additional configuration.[29][30][31]
Security hardening in pfSense includes tools for threat detection and mitigation, such as the ClamAV package for antivirus scanning of HTTP traffic when integrated with proxies like Squid, providing signature-based malware detection through its daemon and freshclam updater. Automatic rule updates are facilitated via packages like Snort, which downloads Emerging Threats Open rulesets alongside official Snort VRT rules to enhance intrusion detection with timely signatures against emerging network threats, updated via MD5 hash verification and force options in the GUI. These components build upon the FreeBSD base system to deliver robust, modular functionality.[32][33]
