Firewall (PF)

Structured PF rules, validated with pfctl -nf before any apply.

{{#DRIFT_BADGE}}{{#B_UNSAVED}}Unsaved edits{{/B_UNSAVED}}{{#B_DRIFT}}{{B_LABEL}}{{/B_DRIFT}}{{#B_ERROR}}Drift state unknown{{/B_ERROR}}{{#B_OK}}In sync{{/B_OK}}{{/DRIFT_BADGE}}
{{#ERROR}}
{{ERROR}}
{{/ERROR}} {{#FLASH}}
{{FLASH}}
{{/FLASH}} {{#PF_UNADOPTED}}

Existing firewall detected

An existing /etc/pf.conf ruleset is present that OgmaProtect does not yet manage. Until you import it, the firewall shown here is empty and drift alarms may fire. Importing brings your existing rules under OgmaProtect management (your current /etc/pf.conf is saved to /var/db/ogmaprotect/config/pf.conf.preadopt first) and applies them with the usual auto-revert window so you can review and Keep or Revert.

A ruleset that uses anchors, includes or ! commands cannot be imported automatically — you will get a message to migrate it by hand (see the INSTALL guide).

{{#WRITE}}
{{#PF_LOCKOUT_REARM}}
Importing these rules would drop your management access. The declared management path (SSH/HTTPS to this box) is not preserved by the existing ruleset. If you have out-of-band recovery, tick the box to import anyway.
{{/PF_LOCKOUT_REARM}}
{{/WRITE}}
{{/PF_UNADOPTED}} {{#PENDING}}

Confirm firewall change

A live PF change by {{PENDING_ACTOR}} is awaiting confirmation and reverts automatically in {{PENDING_REMAINING}} seconds unless you keep it.

If this page stops loading after an apply, do nothing — the firewall reverts by itself at the deadline.

{{#PENDING_REVERT_FAILED}}
Automatic revert failed — manual recovery required. From the console: ogmaprotectctl pf cancel {{PENDING_TXN_ID}}
{{/PENDING_REVERT_FAILED}} {{#WRITE}} {{/WRITE}}
{{/PENDING}}
Configured {{ENABLED_LABEL}} Live PF {{LIVE_ENABLED_LABEL}} At boot {{RC_ENABLED_LABEL}}
{{#WRITE}} {{#NOT_PENDING}}
{{/NOT_PENDING}} {{/WRITE}}
{{#WRITE}}

Enabling PF live arms a confirmation window: unless you confirm over this page within the window, the change reverts automatically — no console needed. Rules that block management access can still lock out this session until the revert fires.

{{/WRITE}}
{{#LEGACY_LOCKED}}

Raw pf.conf rules in use

This firewall was configured with raw pf.conf text, which the visual editor cannot represent. The current rules are shown read-only in the Preview tab below. The raw editor has been removed — to manage this firewall here, convert it to the visual editor. Converting discards the raw rules; the live firewall keeps running unchanged until you build and apply a new ruleset.

{{#WRITE}} {{/WRITE}}
{{/LEGACY_LOCKED}} {{PF_MGMT_NOTICE}}
{{#CONVERT}}{{/CONVERT}} {{#PF_LOCKOUT_REARM}}
This ruleset would drop your management access. The firewall refused it because the declared management path (SSH/HTTPS to this box) is not preserved. Fix the rules or your management declaration on the Safety tab — or, if you have out-of-band recovery, tick the box below to apply it anyway. {{#WRITE}} {{/WRITE}}
{{/PF_LOCKOUT_REARM}}
{{#WRITE}} {{/WRITE}}

Click a rule to edit its fields. Rules are evaluated top-to-bottom and the last match wins unless you set quick.

{{PF_FILTERS_HTML}}
{{#EDIT_ACTIONS}} {{/EDIT_ACTIONS}} {{#PENDING}}

Editing is locked while a change by {{PENDING_ACTOR}} awaits confirmation (deadline above).

{{/PENDING}} {{#LEGACY_LOCKED}}

The visual editor is read-only until you convert this firewall (above).

{{/LEGACY_LOCKED}}
Live packet log (pflog)
Open to stream pflog packets.
TimeActionIfaceRulePacket

Decoded from the binary /var/log/pflog via tcpdump -r. Enter a rule number to watch hits for one rule. This shows only packets matched by rules that carry the log keyword, and may be empty on a stock configuration. Requires pf:*:read + log:*:read.