Install & Enable FirewallD GUI on AlmaLinux 9
If you’re tired of juggling firewall rules in a terminal and would rather see them as buttons, this quick guide shows how to get the Firewalld GUI up and running on AlmaLinux 9. No fluff—just straight commands and explanations.
Why Use a GUI?
Most AlmaLinux users are comfortable with firewall-cmd, but when you’re juggling multiple zones or need to tweak services on the fly, a graphical interface can save time. I’ve seen sysadmins stumble over a mis‑named zone in the CLI, only to realize later that a simple toggle in the GUI would have fixed it instantly.
Prerequisites and Quick Check
Make sure your system is updated and has Firewalld installed:
sudo dnf update -y rpm -q firewalld || sudo dnf install -y firewalld
If firewall-config isn’t present, the next step will add it.
Install the FirewallD GUI Package
The GUI lives in the firewall-config package. Install it with:
sudo dnf install -y firewall-config
Why this matters: the command pulls a small set of Python libraries that power the interface; without them you’ll just get a black screen.
Enable and Start the Service
The GUI needs Firewalld to be running in the background. Make it start automatically and fire up now:
sudo systemctl enable --now firewalld
enable writes the unit file so it boots next time; --now starts it immediately, letting you launch the GUI right away.
Launch the GUI from the Terminal or Menu
Run it with root privileges:
sudo firewall-config &
The ampersand lets the terminal return to your prompt. The interface will ask for your password and then pop up a window where you can pick zones, add services, or open ports—all without typing another command.
Common Pitfalls and Fixes
- GUI crashes on launch – Sometimes missing dependencies cause a crash. Reinstall the package stack:
sudo dnf reinstall -y firewalld firewall-config python3-dbus python3-gobject
- Firewalld won’t start after reboot – Check its status:
systemctl status firewalld
If it shows “failed,” look at the journal for hints: journalctl -u firewalld. Often a missing module or mis‑configured zone will surface there.
- I accidentally closed all zones – A quick fix is to reset to defaults:
sudo firewall-cmd --complete-reload
This clears any rogue rules and refreshes the GUI view.
Real-World Scenario
A colleague once upgraded a server’s kernel and forgot that the new initrd had dropped the Firewalld module. The machine rebooted, but the firewall was off and an open SSH port exposed the box to the internet. Once the GUI came back online, they could quickly re‑enable ssh in the “public” zone and lock things down again—without digging through /etc/firewalld/.
That’s it. Firewalld is now running, the GUI is live, and you can manage your firewall with a few clicks instead of a dozen terminal commands.