PVE Flow Explorer

PVE Flow Explorer

GitHub
Allowed Blocked Inactive
Rules

Import a firewall bundle

Export the configuration on a PVE node

Run this on any node of the cluster, as root. It only needs Python 3.6+, nothing to install.

curl -fsSLO https://raw.githubusercontent.com/mrwazaby/pve-flow-explorer/main/pve_fw_export.py
python3 pve_fw_export.py

It writes pve-fw-<cluster>-<date>.json in the current directory, with power states and the IPs reported by the QEMU guest agent, so rules written with bare IPs point to the right VM. Asking the guest agents takes a few seconds, up to a minute on a large cluster. Copy the file to your computer, for example with scp root@pve1:pve-fw-*.json .

Other ways to get the export
Print the JSON, then copy it from the terminal and paste it below
python3 pve_fw_export.py -o -
Run it from your computer, without copying the script to the node
ssh root@pve1 python3 - -o - < pve_fw_export.py > pve-fw-export.json
Read an offline copy of /etc/pve
python3 pve_fw_export.py --pve-dir ./etc-pve
Only have .fw files?
Drop them below. The rules are shown, but IP addresses are not mapped to guests.

The bundle holds the firewall and SDN files, plus the name, net*, ipconfig* and tags lines of each guest config. No passwords, SSH keys, disks or users. What goes into the bundle

Load it here

or drop the .json bundle (or .fw files) here
or paste the JSON
or Ctrl+Enter
The bundle is read in your browser and never uploaded. The last import is kept in this browser's local storage so it reloads with the page.