-
-
Notifications
You must be signed in to change notification settings - Fork 0
Quick Start Guide
Get Apotropaios running in 2 minutes. No installation required.
- Python 3.12 or later (
python3 --versionto check) - Linux with at least one firewall installed (iptables, nftables, firewalld, ufw, or ipset)
- Root privileges (sudo) for firewall operations
git clone https://github.com/Sandler73/Apotropaios-Firewall-Manager-Python-Variant.git
cd Apotropaios-Firewall-Manager-PythonNo install needed -- run directly from the project root:
sudo python3 apotropaios.py detectThis displays your OS details (name, version, family, package manager) and all installed firewall backends (version, running/stopped, enabled/disabled). The framework auto-selects the first available backend (preference: iptables → nftables → firewalld → ufw).
sudo python3 apotropaios.py statusShows the active backend's service state (running/stopped, enabled/disabled, version, binary path), a summary of all detected firewalls, and the count of Apotropaios-tracked rules.
# Allow HTTPS traffic
sudo python3 apotropaios.py add-rule --protocol tcp --dst-port 443 --action accept \
--description "Allow HTTPS"Output: Rule created: a1b2c3d4-e5f6-7890-abcd-ef1234567890
The rule is applied to the firewall immediately and tracked by UUID in the rule index.
# Show Apotropaios-tracked rules
sudo python3 apotropaios.py list-rules
# Show native firewall rules (all rules, not just ours)
sudo python3 apotropaios.py system-rulessudo python3 apotropaios.py backup initial-setupCreates a compressed archive with all backend configs, rule index, and state file. SHA-256 checksum sidecar generated automatically.
sudo python3 apotropaios.py --interactive8 categories: Firewall Management, Rule Management, Quick Actions, Backup & Recovery, System Information, Install & Update, Help & Documentation, Exit.
Cancel any prompt by typing q, quit, cancel, back, or b.
Default console shows only warnings and errors. For diagnostic output:
# Show informational messages
sudo python3 apotropaios.py detect --log-level info
# Maximum verbosity (trace level)
sudo python3 apotropaios.py detect --log-level traceThe log file (in data/logs/) always captures all levels regardless of console setting.
- Usage Guide -- Complete CLI and menu reference with all 18 commands
- Configuration Reference -- Every tunable constant
- Operational Scenarios -- Real-world usage examples
- Architecture and Design -- System internals with diagrams
Apotropaios Firewall Manager -- Python Variant · Home · Quick Start · Architecture · Security · Bash Variant
Apotropaios -- Python Variant
Getting Started
Architecture
Operations
Project
35 files · 14,545 lines · 322 tests