OPNSense

opnsense.org
OPNSense

Enterprise firewall and router for protecting networks, built on the FreeBSD system.

Open Source

OPNSense Source Code

Author

opnsense

Description

OPNsense GUI, API and systems backend

#api#bsd#captive-portal#firewall#gui#hacktoberfest#ips#proxy#routing#shaping#vpn

Homepage

https://opnsense.org/

Repository

  • LicenseBSD-2-Clause
  • Created13 Dec 14
  • Primary languagePHP
  • Size103,743 KB
  • Stars4,712
  • Forks1,001
  • Watchers4,712

Language Usage

Language Usage

Project Health

  • Last commit6 days ago
  • Open issues297
  • Latest release27.1.a

Recent Commits

  • Konstantinos Spartalis(07 Oct 26)

    VPN: IPsec: Deprecate IKEv1 (#10925)

  • Ad Schellevis(07 Oct 26)

    Firewall: NAT: Destination NAT - fix "Warning: Undefined variable $port in .."

  • Franco Fichtner(07 Oct 26)

    interfaces: remove direct $config access and improve device handover in legacy apply

  • Franco Fichtner(07 Oct 26)

    interfaces: remove PPTP support; closes #10973 To ease future migrations from PPP to MVC/API and reduce the config field "localip" misuse we want to phase out PPTP and reduce complexity of the implementation. While L2TP may be still around the PPTP tunneling is very likely not used anymore. A bit of a message to everyone still using this. Only one way to find out.

  • Stephan de Wit(07 Oct 26)

    Revert "interfaces: fallback here to prevent php warnings" This reverts commit cda3b2f717fce26add61c147d1da0b0a0812c3eb. these are stored by default now after save

  • Stephan de Wit(07 Oct 26)

    interfaces: fallback here to prevent php warnings PHP Warning: Undefined array key "localip" in /usr/local/etc/inc/interfaces.inc on line 1192 PHP Warning: Undefined array key "gateway" in /usr/local/etc/inc/interfaces.inc on line 1196

  • Stephan de Wit(07 Oct 26)

    reporting: unbound: capitalize DNSSEC status column header

  • Franco Fichtner(06 Oct 26)

    interfaces: backend call for interfaces_ppps_configure(); closes #9352

  • Stephan de Wit(06 Oct 26)

    gateways: null is not going to be a UUID either ErrorException: Using null as an array offset is deprecated, use an empty string instead in /usr/local/opnsense/mvc/app/controllers/OPNsense/Routing/Api/SettingsController.php:162 Stack trace:

  • Franco Fichtner(06 Oct 26)

    interfaces: priv-sep script for interface apply the legacy way #9352

  • Franco Fichtner(06 Oct 26)

    interfaces: remove system_routing_configure() #9352 The function is called via $reload hook so adding another hook makes no sense. This may have changed since the original commit below and since we need to priv-sep these calls the easiest way is to remove it. ;) See also: https://github.com/pfsense/pfsense/commit/8e11b23f541d

  • Franco Fichtner(06 Oct 26)

    system: $config is unused in core.inc

  • Franco Fichtner(06 Oct 26)

    interfaces: move legacy apply to /var/lib/php/tmp for #9352

  • Jorio(06 Oct 26)

    reporting: unbound: add dnssec status column in details grid (#10940) Fixes https://github.com/opnsense/core/issues/10704 --------- Co-authored-by: Stephan de Wit <[email protected]>

  • Franco Fichtner(06 Oct 26)

    firewall: less parenthesis for previous

  • Ad Schellevis(06 Oct 26)

    Firewall: Aliases - deny invalid port ranges, closes https://github.com/opnsense/core/issues/10954

  • Ad Schellevis(06 Oct 26)

    VPN: OpenVPN: Instances - improve keepalive validation, mentioned in https://github.com/opnsense/core/pull/10174

  • Ad Schellevis(06 Oct 26)

    VPN: OpenVPN: Instances - default keepalive to 10 60 in server mode and explain in the help text. closes https://github.com/opnsense/core/pull/10174

  • Franco Fichtner(06 Oct 26)

    src: style sweep

  • Franco Fichtner(06 Oct 26)

    system: refactor route deletion and use priv-sep in general settings page #9352 (#10962)

  • Franco Fichtner(06 Oct 26)

    system: make "noroot" the standard option with 27.1 #9352 As discussed internally, we want to aim for this to be the new standard, but we will not migrate any existing setups just yet. This may need more documentation/annotation for components (mostly legacy plugins) where this won't work, but it's a very good start to root these out via user reports.

  • ExpRam(06 Oct 26)

    interfaces: remove stale VIP address after update (#10883)

  • Franco Fichtner(06 Oct 26)

    mvc: also fix overrides of reconfigureForceRestart() regarding return type

  • Ad Schellevis(05 Oct 26)

    Firewall: NAT: Destination NAT - fix destination for no-rdr rules, related to https://github.com/opnsense/core/pull/10945 Reported by: @fa1k3

  • Ad Schellevis(05 Oct 26)

    lockout: type safety fix.

  • Franco Fichtner(05 Oct 26)

    interfaces: add proper local/remote IP support to PPPoE IPCP; closes #10966 I added the remotenet field specifically so that we can do a remote IP /32 selection for people with HA issues getting the wrong gateway from the ISP.

  • IvanTheGeek(01 Oct 26)

    monit: log from the first line, reconfigure through the base class The local reconfigureAction() only started or reloaded monit when the whole output of "monit -t" was exactly "Control file syntax OK", so the first Apply on a new install ("New Monit id: ...") and any deprecation warning left monit stopped or not reloaded while reporting "ok". Drop it, and checkAction(), in favor of ApiMutableServiceControllerBase. Move "set log" to the top of monitrc: monit only logs a parse error after it has parsed "set log", so an invalid control file now leaves its reason in the monit log, whether rc refused the reload or monit refused to start. Fixes https://github.com/opnsense/core/issues/10928

  • Ad Schellevis(04 Oct 26)

    Config: missing chown in backup call to prevent backend processes leaving unaccessible files for the frontend. closes https://github.com/opnsense/core/pull/10963

  • Franco Fichtner(03 Oct 26)

    mvc: trailing commas are cool so let's keep them

  • Franco Fichtner(03 Oct 26)

    mvc: PortField: always return a string for normalizedPort()

OPNSense Security

4.8/10

Repo Security Summary

Updated 24 Aug 26

  • PackagingN/A
  • Code-Review2/10
  • Security-Policy10/10
  • Maintained10/10
  • Token-PermissionsN/A
  • Dangerous-WorkflowN/A
  • CII-Best-Practices0/10
  • Binary-Artifacts10/10
  • License10/10
  • Signed-ReleasesN/A
  • Pinned-DependenciesN/A
  • Branch-Protection0/10
  • Fuzzing0/10
  • SAST0/10

Security Advisories (31)

  • mediumPatchedCVSS 4.3

    GHSA-x3q7-cc7h-gj3vPassword-policy lock is cleared by an empty-password Save on system_usermanager_passwordmg.php (CWE-863/696)

  • mediumPatchedCVSS 5.3

    GHSA-jjm2-jg4p-3v9qAudit log injection via login username in auth_log()

  • lowUnpatched

    GHSA-9h93-hhcx-957cMultiple cross-site scripting (XSS) in OPNsense 26.7.1_1 Architecture amd64 08d6a7847

  • mediumPatchedCVSS 5.4

    GHSA-864r-q4j5-5mjqCaptive Portal roaming authorizes attacker-controlled IPs through forged ARP bindings

  • mediumPatchedCVSS 4.8

    GHSA-6vv6-fpw9-8r2gCertificate and CA descriptions render unescaped in the wireless EAP selectors on interfaces.php

  • mediumPatchedCVSS 6.5

    GHSA-fqmm-g6xw-qhm4OpenVPN session kill endpoint executes arbitrary management protocol commands through unvalidated `session_id` (delegated status user to daemon control)

  • mediumPatchedCVSS 5.2

    GHSA-75fw-j788-j4hjStored XSS via Unsafe Attribute Construction and `info` Field HTML Insertion

  • mediumPatchedCVSS 5.3

    GHSA-h4qj-j2x9-q553Unauthenticated lighttpd request-body disk exhaustion

  • highPatchedCVSS 7.6

    GHSA-vw8q-pqq7-2q7vManual Config::save() paths bypass user-config-readonly enforcement

  • mediumPatchedCVSS 5.9

    GHSA-rw63-4hw9-p4v7OpenVPN Client Export Utility users can export private keys for unlisted certificate refs

  • mediumPatchedCVSS 6.3

    GHSA-jm2f-ch62-rpxrMultiple Stored XSS

  • highPatchedCVSS 7.1

    CVE-2026-71490Direct comma-separated user privileges bypass OPNsense MVC read-only write protection

  • highPatchedCVSS 8.1

    CVE-2026-63442Log Forgery via Login Username CRLF in WebGUI Authentication → Pf Table IP Blocking

  • mediumPatchedCVSS 5.2

    CVE-2026-58394Stored XSS in Administration Settings via Certificate Description

  • mediumPatchedCVSS 4.3

    CVE-2026-58395XPath injection in MVC safe-delete

  • mediumPatchedCVSS 5.4

    CVE-2026-58392Stored XSS in Services: NTP GPS

  • mediumPatchedCVSS 5.4

    CVE-2026-58391Stored XSS in Firewall Rules/NAT pages via a HTML-attribute breakout

  • criticalPatchedCVSS 9.9

    CVE-2026-57155Root RCE via Arbitrary File Write in GeoIP Alias Importer

  • highPatchedCVSS 8

    CVE-2026-58390Stored XSS to root RCE via OpenVPN client common_name in status views

  • highPatchedCVSS 8.1

    GHSA-m4m3-v627-wgc2 Stored Cross-Site Scripting (XSS) via TrafficShaper description in legacy PHP firewall rules page

  • mediumPatchedCVSS 5.9

    CVE-2026-58393OpenVPN Client Specific Override common_name allows path traversal in generated CSO files

  • highPatchedCVSS 8.1

    GHSA-33q4-wcv7-r8frTrust certificate and CA refids allow path traversal during IPsec file generation

  • highPatchedCVSS 8.1

    CVE-2026-57154Configuration line injection via multiple GUI text fields

  • highPatchedCVSS 7.1

    CVE-2026-53582XPATH Injection can disclose any secret in config.xml

  • criticalPatchedCVSS 9

    CVE-2026-53581ntp: write path traversal

  • criticalPatchedCVSS 9.1

    CVE-2026-44194RCE on user managment

  • criticalPatched

    CVE-2026-45158Command Injection via Attacker-Controlled DHCP Config

  • criticalPatchedCVSS 9.1

    CVE-2026-44193RCE via XMLRPC endpoint using `opnsense.restore_config_section` method

  • mediumPatchedCVSS 5.3

    CVE-2026-44195Authentication lockout bypass

  • highPatchedCVSS 8.2

    CVE-2026-34578LDAP Injection via Unsanitized Username in Authentication

  • mediumPatchedCVSS 6.3

    CVE-2026-30868Cross-Site Request Forgery (CSRF) in opnsense/core

OPNSense Website

Website

OPNsense® is an open source, feature rich firewall and routing platform, offering cutting-edge network protection. - OPNsense

We’ve made digital security accessible to everyone. With our free OPNsense® platform, you get all the features of expensive commercial firewalls and more. Enjoy open and verifiable sources in a product developed with and for a large user community.

Redirects

Does not redirect

Security Checks

All 65 security checks passed

Server Details

  • IP Address89.149.225.137
  • LocationAmsterdam,Noord-Holland,Netherlands (Kingdom of the),EU
  • ISPLeaseweb Netherlands B.V.
  • ASNAS60781

Associated Countries

  • USUS
  • NLNL

Safety Score

Website marked as safe

100%

Trackers

Loads 2 third-party trackers

  • google-analytics.comGoogle Analytics
  • googletagmanager.comGoogle Ads

Blacklist Check

opnsense.org was found on 0 blacklists

  • AntiSocial Blacklist
  • Artists Against 419
  • Badbitcoin
  • Bambenek Consulting
  • CERT Polska
  • CoinBlockerLists
  • CRDF
  • CryptoScamDB
  • EtherAddressLookup
  • EtherScamDB
  • Fake Website Buster
  • MetaMask EthPhishing
  • NABP Not Recommended Sites
  • OpenPhish
  • PetScams
  • PhishFeed
  • PhishFort
  • Phishing.Database
  • PhishStats
  • PhishTank
  • Phishunt
  • RPiList Not Serious
  • Scam.Directory
  • SecureReload Phishing List
  • Spam404
  • StopGunScams
  • Suspicious Hosting IP
  • ThreatFox
  • ThreatLog
  • TweetFeed
  • URLhaus
  • ViriBack C2 Tracker

Website Preview

Website preview

OPNSense Reviews

More Firewalls

About the Data: OPNSense

Change History

  • Amended (github) by @lissy93 #608
  • Renamed previously: OpenSense from Networking › Firewalls by @HammyHavoc #202

Edit OPNSense Data

You can edit OPNSense's entry in this section of awesome-privacy.yml by submitting a PR to our GitHub repo.
Note that some of the information shown above has been aggregated from external sources, a list of these can be found data documentation.

Origin Data

Modify Data

API

You can access OPNSense's data programmatically via our API. Simply make a GET request to:

https://api.awesome-privacy.xyz/v1/services/opnsense

The REST API is free, no-auth and CORS-enabled. To learn more, view the API Docs or read the API Usage Guide.

Share OPNSense

Help your friends compare Firewalls, and pick privacy-respecting software and services.
Share OPNSense and Awesome Privacy with your network!