Modern fwbuilder successor: Qt GUI for managing iptables/nftables policies. Centralized policy DB with reusable objects, scales to hundreds of firewalls, generates deployment-ready shell scripts.
Project description
Linuxfabrik's FirewallFabrik
FirewallFabrik • made by Linuxfabrik
FirewallFabrik
FirewallFabrik is a modern successor to Firewall Builder (fwbuilder), preserving its core design philosophy while updating it for current firewall technologies. It is a Qt-based GUI that manages firewall policies for multiple platforms, including iptables and nftables, from a single unified interface. All objects, rules, and device definitions are stored in a centralized policy database, allowing consistent reuse of services, networks, and rule sets. This architecture scales cleanly from a handful of devices to hundreds of firewalls, all managed from one policy file and one UI, with platform-specific configuration generated automatically.
This project was developed with the assistance of Claude Code by Anthropic.
Quick Start
# Run FirewallFabrik without installing (requires uv)
uvx --from 'firewallfabrik[gui]' fwf
# Or install it
uv tool install 'firewallfabrik[gui]'
For the full installation guide (pipx, pip, development setup, native themes, desktop integration), see the User Guide: Installing FirewallFabrik.
Documentation
- User Guide -- installation, GUI overview, working with objects, firewall policies, cookbook, and more.
- Migrating from Firewall Builder -- import .fwb files and differences.
- Developer Guide -- database manager, debugging, rule processors, testing, and design decisions.
- Changelog -- release history.
- Contributing -- how to contribute.
- Issue Tracker -- bug reports and feature requests.
Building the Documentation
The documentation is built with Sphinx using the Read the Docs theme. To build it locally:
pip install sphinx sphinx-rtd-theme myst-parser
cd docs
make html
The generated HTML will be in docs/_build/html/. Open docs/_build/html/index.html in a browser to view it.
Source Code Documentation
To generate browsable API documentation for all Python modules:
pip install pdoc
pdoc --output-dir docs/source-code src/firewallfabrik
Open docs/source-code/index.html in a browser to view it.
License
# Copyright (C) 2026 Linuxfabrik <info@linuxfabrik.ch>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# On Debian systems, the complete text of the GNU General Public License
# version 2 can be found in /usr/share/common-licenses/GPL-2.
# SPDX-License-Identifier: GPL-2.0-or-later
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file firewallfabrik-1.0.0.tar.gz.
File metadata
- Download URL: firewallfabrik-1.0.0.tar.gz
- Upload date:
- Size: 1.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5d6c6f1f2dcc696bcc685f022be4fde4c2ae07ef6f761fb1a9ef0e4d91f9ba0
|
|
| MD5 |
dcd7319bfaa9b6bd0bc54a070a3ffb9f
|
|
| BLAKE2b-256 |
4d3651ebf496c24e932ba6c95f12f30876472b5a0c1befc4200919ca398294ef
|
File details
Details for the file firewallfabrik-1.0.0-py3-none-any.whl.
File metadata
- Download URL: firewallfabrik-1.0.0-py3-none-any.whl
- Upload date:
- Size: 1.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
158980dd6e8f73ab09ff2e93c99414fb51787d4c00ae1955342116f66af358ae
|
|
| MD5 |
e296972a00e52c02c61fcd50338e775d
|
|
| BLAKE2b-256 |
6baf0395edc81ad3e83eaf4b8a3cf3598b34d680bb9f672eab300e9de27385c5
|