Your country

Tools that support it use your country for local currency, number formats, units and paper size. Your choice is saved only in this browser.

Type a name or a two-letter code. Use the up and down arrow keys to move through the countries, Enter to choose one and Escape to close.

Firewall Rule Analyzer for iptables, nftables, pfSense, OPNsense, FortiGate, Cisco ASA and Palo Alto Networks

Every rule of your firewall compared on your device, with a clean-up plan and a report.

Free preview, no sign-upIncluded in your pass Ultimate tool Ultimate pass: ₹1,199 / $24.99 for 30 days On this device: nothing is sent
+3 +1 more details No uploadWorks offline once opened Security

Free preview: every count, the rule lists read and the first findings of each table (up to 10); the full tables, the report and the exports need a pass. Locked until you unlock it: download and copy.

Ultimate pass ₹1,199 for 30 days or ₹449 for 1 week, one‑time. Ultimate pass $24.99 for 30 days or $9.99 for 1 week, one‑time. How to unlock

Try before you buy.

  • Free preview: every count, the rule lists read and the first findings of each table (up to 10); the full tables, the report and the exports need a pass.
  • Locked until you unlock it: download and copy.
  • Unlock: Ultimate pass, ₹1,199 for 30 days or ₹449 for 1 week, a one-time payment unless you choose automatic renewal. Unlock: Ultimate pass, $24.99 for 30 days or $9.99 for 1 week, a one-time payment unless you choose automatic renewal.

Ways to unlock shows how to get the full result.

See passes (opens in a new tab)

Printing this result is locked in the free preview.

Before you start

  • Save the configuration as text: the output of iptables-save or nft list ruleset, the config.xml backup of pfSense or OPNsense, a FortiGate configuration backup, the ASA’s show running-config, or a PAN-OS configuration exported as XML. Save backups without encryption.
  • Configurations hold secrets (password hashes, pre-shared keys): the file is read on your device and never uploaded. The page never connects to the firewall and never changes it.

Open the configuration

The format is detected from the text; choose it when the file is not recognised.

Configuration file

Pasting checks the rules at once; after typing, press the button (or Ctrl+Enter).
A made-up configuration of the format chosen above (iptables when it is detected).

Next steps Done. What next?

Start over

An Ultimate pass unlocks the full result. See passes

All security & privacy tools

About the Firewall Rule Analyzer for iptables, nftables, pfSense, OPNsense, FortiGate, Cisco ASA and Palo Alto Networks

A firewall’s rule base grows with every change: a rule added for a project and never removed, a copy of an existing rule, a block placed under the allow that already lets the same traffic through, an address group nobody uses any more. Each one makes the next review longer and the next mistake easier.

Open the configuration here and the page reads every rule on your device into one model, whatever the firewall: iptables, nftables, pfSense and OPNsense, FortiGate, Cisco ASA and PAN-OS. It compares the rules of each list in the order the firewall checks them, and finds shadowed rules that never apply, redundant and duplicate rules, any-any and overly wide permits (remote administration and database ports open to everyone among them), unused objects, disabled rules left in place and rules that do not log. Each finding names the rules involved and suggests the tidy-up, and the summary gives the rule base before and after it. Nothing is uploaded.

Without a pass the whole configuration is read and every rule compared: every count and each table’s first findings show in the free preview. The full tables, the PDF report, the workbook and the CSV of every finding come with an Ultimate pass: a starting pack for your auditor.

How to use it

  1. Save the configuration as text: the output of iptables-save (or ip6tables-save) or nft list ruleset, the config.xml backup of pfSense or OPNsense, a FortiGate configuration backup, the ASA’s show running-config, or a PAN-OS configuration exported as XML. Save backups without encryption: the page reads them on your device and never uploads them.
  2. Drop the file here or paste its text; the format is detected, or choose it in the list. Press Try the example to see a made-up configuration of the format you choose first.
  3. Read the counts: the rules and the lists they are in, what happens to traffic no rule decides, and how many findings of each kind there are, with the rule base before and after the suggested clean-up.
  4. Go through the findings, the most serious first: each row names the rule, the rule it is compared with, what that means for traffic and the suggested tidy-up. Make the changes on the firewall itself, through its own change process.
  5. With an Ultimate pass, see every finding and download the PDF report, the workbook with a sheet per kind of finding and every rule as read, or the CSV of every finding; without one these stay part of the free preview.

Examples

A block that comes too late
Input
iptables-save: `-A INPUT -p tcp --dport 22 -j ACCEPT`, then `-A INPUT -s 203.0.113.0/24 -p tcp --dport 22 -j DROP`
Result
Shadowed rules: #4 is shadowed by #3, an earlier allow: it never blocks anything, so the traffic it was meant to stop gets through. Suggested: move it above #3, or remove it. Wide permits: #3 opens SSH (22) to any address.

The example of this page; its addresses come from the ranges kept for documentation.

A copied policy and an unused address
Input
FortiGate: policies 2 and 3 both accept HTTPS from port1 to web-server; address old-vendor is defined but no policy uses it
Result
Redundant and duplicate rules: ID 3 is a duplicate of ID 2. Unused objects: old-vendor (198.51.100.0 255.255.255.0). After the clean-up: 3 of 6 policies, 6 of 8 objects.
An access list that opens a database
Input
Cisco ASA: `access-list OUTSIDE_IN extended permit tcp any object APP-NET eq 1433`, applied inbound on outside
Result
Any-any and overly wide permits: SQL Server (1433) is reachable from any address. Suggested: allow it only from the addresses that use it.

Common uses

  • Preparing an audit: a review of the rule base with what each rule does, ready for the auditor to work from.
  • Cleaning up a firewall that several people changed over the years, with the rules and objects that can go.
  • Checking a change before it goes live: does the new rule ever apply, or does an earlier one take its traffic?
  • Taking over a firewall from a provider or a previous administrator, and seeing at once what it lets through.
  • Regular rule base reviews, which NIST SP 800-41 Rev. 1 asks for, with the same checks every time.

What it reads

  • iptables: the output of iptables-save and ip6tables-save (with or without the counters of -c, and both in one file), every table and chain, the chain policies, jumps to your own chains and the matches people use most (addresses, interfaces, protocols, ports, multiport, connection state, comments). A built-in chain’s policy decides when no rule does (iptables manual page).
  • nftables: the output of nft list ruleset, with tables, base chains and their hooks and policies (accept unless set to drop, nftables wiki), named sets and defines.
  • pfSense and OPNsense: config.xml backups, with each interface’s rules, floating rules, OPNsense’s automation rules and the aliases of both. Floating rules come first, and traffic entering an interface that no rule matches is blocked (pfSense, OPNsense).
  • FortiGate: configuration backups and show output, with VDOMs, firewall policies in the order they are checked, addresses, services and their groups; traffic no policy matches is denied (Fortinet).
  • Cisco ASA: the running configuration, with extended access lists, the objects, object groups and names they use, and the access-group that applies each list; entries are tested in order and an implicit deny ends each list (Cisco).
  • PAN-OS: XML configurations of a firewall or of Panorama, with the security rules of each virtual system or device group, the shared pre- and post-rules, addresses, services and their groups; rules are evaluated from the top and the first match decides (Palo Alto Networks). A firewall’s own rules come between Panorama’s pre- and post-rules and are not in a Panorama export, so no rule is said to be redundant across them.

What it finds

  • Shadowed rules: an earlier rule with another action matches every packet the rule matches, so it never applies. A shadowed block is the dangerous kind: the traffic it was meant to stop gets through.
  • Redundant and duplicate rules: an earlier rule with the same action matches everything the rule matches (a duplicate when both match the same packets), or a later rule with the same action does and no rule between them decides otherwise. Removing it changes nothing.
  • Any-any and overly wide permits: allow rules for every address and every service, for every service from or to any address, and remote administration and database ports (SSH, Remote Desktop, SMB, SQL Server, MySQL, PostgreSQL, Redis, MongoDB and others) open to any address; also chains whose own policy accepts what no rule decides.
  • Unused objects: addresses, services, groups, aliases and sets nothing else in the configuration names.
  • Disabled rules left in place, and rules that do not log, in the firewall’s own terms (an ASA entry without the log keyword, a FortiGate policy left at logtraffic utm, a PAN-OS rule with log at session end off).

Shadowing and redundancy are the classic anomalies of rule bases; deny by default, removing rules that are no longer needed and choosing what to log are the checks of NIST SP 800-41 Rev. 1, which also asks for the firewall policy to be reviewed often, with tools that look for redundant rules where they exist (section 5.5).

Before and after the clean-up

Every shadowed, redundant and disabled rule and every unused object is counted as one that can go: the summary gives the rule base as it is and as it would be without them. A shadowed rule may instead be an exception placed too low: then move it above the rule that takes its traffic, and keep it. The page never changes the firewall; make each change through your own change process, and keep the report with it.

A starting pack for your auditor

The PDF report names the configuration file and its SHA-256, lists the rule lists read and what happens to traffic no rule decides, gives every finding with the rules involved and the suggested tidy-up, and ends with the method and its limits. The workbook has a sheet for each kind of finding and every rule as read, so the review can go on in a spreadsheet. The report says what the configuration does; whether the rule base meets a standard or a policy is for your auditor to judge.

Large rule bases, and what the device needs

The configuration is read and compared in a background worker, so the page stays responsive. Within each list every rule is compared with the rules before and after it, quickly set aside where their addresses and ports cannot overlap. In tests on a recent laptop, a list of 20,000 rules was read and compared in about 5 seconds, using about 250 MB of memory; an older computer takes a few times longer. Files of up to 64 MB are read.

Limitations

  • Only the configuration file is read: rules added from elsewhere (a management server, scripts run at start-up, another device) and the traffic itself are not seen.
  • A rule covered only by several earlier rules together is not found, and conditions the page does not compare (connection state, rate limits, schedules, URL categories) make a rule narrower: a rule with one is never said to cover a rule without it.
  • Names whose addresses the configuration does not give (FQDN objects, URL tables, dynamic groups, countries, applications) are compared by their name only; a rule with parts the page could not read is listed, never said to cover another.
  • A finding is a lead for the review, not a verdict: a duplicate may be kept for its counters, and a wide permit may be the intended policy.
  • Configuration files hold secrets (password hashes, pre-shared keys): the page reads them on your device and never uploads them, but keep the file and the reports with the same care.
  • MySmartCoPilot is not affiliated with or endorsed by Netgate (pfSense), Deciso (OPNsense), Fortinet (FortiGate), Cisco (ASA), Palo Alto Networks (PAN-OS) or the netfilter project (iptables and nftables).

Privacy

On this device: nothing is sent

The configuration is read by your browser on your device; nothing from it is sent anywhere, and the page works offline once it has loaded. Firewall configurations describe your network and may hold secrets: keep the reports with the same care as the configuration.

How to check that nothing is uploaded

Frequently asked questions

What do I get without a pass?

Without a pass, Firewall Rule Analyzer for iptables, nftables, pfSense, OPNsense, FortiGate, Cisco ASA and Palo Alto Networks shows every count, the rule lists read and the first findings of each table (up to 10); the full tables, the report and the exports need a pass. Until you unlock it, the result can’t be downloaded or copied. An Ultimate pass, a one-time payment unless you choose automatic renewal, unlocks the full result. The pricing page lists the passes and their prices.

What does the Ultimate pass add here?

This tool in full, and every other Pro, Premium and Ultimate tool, for 7 days, 30 days or a year (a pass bought with PayPal leaves out email-address extractors). The pass is a one-time payment unless you choose automatic renewal.

Which files can I open?

The output of iptables-save, ip6tables-save or nft list ruleset; a pfSense or OPNsense config.xml backup; a FortiGate configuration backup or show output; a Cisco ASA show running-config; and a PAN-OS or Panorama configuration exported as XML. Save backups without encryption. The format is detected from the text, or choose it in the list.

What is the difference between a shadowed and a redundant rule?

Both are rules that never decide anything, because an earlier rule matches all of their traffic. A rule is shadowed when that earlier rule has the other action (an allow above a block, so the block never blocks), and redundant when it has the same action (removing it changes nothing). Shadowed rules come first in the report, since they are where the firewall does something else than intended.

Does a clean report mean my firewall passes an audit?

No. The page reports what the configuration does and what may be tidied up: a starting pack for your auditor. Whether the rules match your organisation’s policy, and whether the firewall meets a standard, is for the review and your auditor to decide.

Why is a rule listed as not read?

It uses a match, an object or a setting the page does not read (an object defined on another device, a rare iptables match). The rule is listed with what was not read, and it is never said to cover another rule, so no finding rests on a guess.

Does it change my firewall?

No. It only reads the file you open. Make the suggested changes on the firewall through your own change process, and check each one: a duplicate may be kept on purpose, and a shadowed rule may be an exception that belongs higher up.

Is my configuration uploaded?

No. It is read in your browser, and the page works without a connection once it has loaded.

Quick answers and tool search

Type to search tools or to get a quick answer, for example 18% of 2500. Use the up and down arrow keys to move through the results, Enter to choose, and Escape to close.