Installation
The recommended way to install Foomuuri is through your Linux distribution's package manager, using the instructions for your platform below.
For a sample configuration, see the host firewall
example, which documents a typical
/etc/foomuuri/foomuuri.conf file.
Fedora, RHEL, and CentOS Stream
Foomuuri is included in Fedora and EPEL.
Continue with post-installation configuration.
Debian and Ubuntu
Foomuuri is included in Debian sid, forky, and trixie (13), as well as bookworm-backports (12), and in Ubuntu 23.10 (Mantic) and 24.04 (Noble).
Continue with post-installation configuration.
Arch Linux
Foomuuri is available in the Arch User Repository (AUR).
# Build and install the package
git clone https://aur.archlinux.org/foomuuri.git
cd foomuuri
makepkg
pacman -U foomuuri-*-x86_64.pkg.tar.zst
Continue with post-installation configuration.
Building from Source
Source tarballs are available on the releases page.
Requirements
nftablesversion 1.0.0 or higher, built with JSON supportpythonversion 3.9 or higher
Recommended
python3-dbusandpython3-gobject(python3-gion some distributions), for D-Bus support
Optional
python3-systemd, for systemd notify supportpython3-urllib3, for iplist URL download supportpython3-lxml, for iplist HTML/XML filteringjq, for iplist JSON filteringfping, for network connectivity monitor
# Extract the source
tar xf foomuuri-0.??.tar.gz
cd foomuuri-0.??
# Install to the root filesystem
make install DESTDIR=/
systemctl daemon-reload
sysctl --system
Continue with post-installation configuration.
Post-Installation Configuration
These steps apply regardless of how Foomuuri was installed.
-
Configure and validate:
For a sample configuration, see the host firewall example.
-
Disable and stop any existing firewall service, for example:
systemctl disable --now ferm.service systemctl disable --now firehol.service systemctl disable --now firewalld.service systemctl disable --now netfilter-persistent.service systemctl disable --now nftables.service systemctl disable --now ufw.service systemctl disable shorewall-init.service systemctl disable shorewall.service systemctl disable shorewall6.service nft flush ruleset -
Start Foomuuri:
-
Verify firewall logging in the system journal:
-
Enable Foomuuri at boot, once you have confirmed it is working correctly: