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 FirewallFabrik
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. • 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.
Installation
Make sure to include the [gui] extra to pull in PySide6 for the graphical interface.
Using uv (recommended)
The recommended way to install FirewallFabrik. You can run it without a permanent install:
uvx --from 'firewallfabrik[gui]' fwf
Or install it as a tool:
uv tool install 'firewallfabrik[gui]'
Installing a Release Candidate
To test a pre-release version, either allow pre-releases or pin a specific RC version:
uvx --from 'firewallfabrik[gui]' --prerelease allow fwf
uv tool install 'firewallfabrik[gui]' --prerelease allow
uv tool install 'firewallfabrik[gui]==<version>' --prerelease allow
For the full installation guide (pipx, pip, development setup, native themes, desktop integration), see the User Guide: Installing FirewallFabrik.
Documentation
Full documentation is available at linuxfabrik.github.io/firewallfabrik. It is automatically built and deployed on every push to main.
Feedback from our Community
Some comments from the community about our successor to FirewallBuilder:
... Danke, das Du/Ihr FirewallFabrik ins Leben gerufen habt! Ich liebe FirewallBuilder und finde es wirklich ganz toll, ein Nachfolgeprodukt in FirewallFabrik gefunden zu haben. nftables-Unterstützung ist SUPER!
Thank you for this software, I loved FirewallBuilder, I imagine I'll love this one too.
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.4.7rc4.tar.gz.
File metadata
- Download URL: firewallfabrik-1.4.7rc4.tar.gz
- Upload date:
- Size: 1.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
18e4cbf0dee15d0ffb0599bdc1b8f063d557ece2931e2327bb69c358ada9380e
|
|
| MD5 |
c30e958ec9dacf3407f1f7338c5fc811
|
|
| BLAKE2b-256 |
a003d357b17acebe1d9b422f2aef90d5dd7035db76ecd7997d42447ec425ed2f
|
Provenance
The following attestation bundles were made for firewallfabrik-1.4.7rc4.tar.gz:
Publisher:
release.yml on Linuxfabrik/firewallfabrik
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
firewallfabrik-1.4.7rc4.tar.gz -
Subject digest:
18e4cbf0dee15d0ffb0599bdc1b8f063d557ece2931e2327bb69c358ada9380e - Sigstore transparency entry: 1317102111
- Sigstore integration time:
-
Permalink:
Linuxfabrik/firewallfabrik@942ed9eaf49de1c1d26a5efb49d46afe0e90cf04 -
Branch / Tag:
refs/tags/v1.4.7rc4 - Owner: https://github.com/Linuxfabrik
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@942ed9eaf49de1c1d26a5efb49d46afe0e90cf04 -
Trigger Event:
release
-
Statement type:
File details
Details for the file firewallfabrik-1.4.7rc4-py3-none-any.whl.
File metadata
- Download URL: firewallfabrik-1.4.7rc4-py3-none-any.whl
- Upload date:
- Size: 1.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bd6551d03128cd765e085a6a017bf9ea18488e55995cc0d5eec48b782401edeb
|
|
| MD5 |
d138407fdd244246afa2136760432805
|
|
| BLAKE2b-256 |
d0f3f42a328b7b50a8bb0bdcf0e8b94d3de6430c354ddeb5ee700cfec1da22d2
|
Provenance
The following attestation bundles were made for firewallfabrik-1.4.7rc4-py3-none-any.whl:
Publisher:
release.yml on Linuxfabrik/firewallfabrik
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
firewallfabrik-1.4.7rc4-py3-none-any.whl -
Subject digest:
bd6551d03128cd765e085a6a017bf9ea18488e55995cc0d5eec48b782401edeb - Sigstore transparency entry: 1317102117
- Sigstore integration time:
-
Permalink:
Linuxfabrik/firewallfabrik@942ed9eaf49de1c1d26a5efb49d46afe0e90cf04 -
Branch / Tag:
refs/tags/v1.4.7rc4 - Owner: https://github.com/Linuxfabrik
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@942ed9eaf49de1c1d26a5efb49d46afe0e90cf04 -
Trigger Event:
release
-
Statement type: