Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 60 additions & 0 deletions docs/user/software/networking/firewalld.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
title: Firewalld

Check warning on line 2 in docs/user/software/networking/firewalld.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (Firewalld)
summary: A quick start guide to using firewalld on Solus

Check warning on line 3 in docs/user/software/networking/firewalld.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (firewalld)
---

# Firewalld

Check warning on line 6 in docs/user/software/networking/firewalld.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (Firewalld)

firewalld provides a dynamically managed firewall with support for network or firewall zones to define the trust level of network connections or interfaces. It has support for IPv4, IPv6 firewall settings, and for Ethernet bridges, and a separation of runtime and permanent configuration options. It also provides an interface for services or applications to add `iptables` and `nftables` rules directly.

Check warning on line 8 in docs/user/software/networking/firewalld.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (nftables)

Check warning on line 8 in docs/user/software/networking/firewalld.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (firewalld)

## Firewalld on Solus

Check warning on line 10 in docs/user/software/networking/firewalld.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (Firewalld)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## Firewalld on Solus
## Install firewalld


To install firewalld on Solus, search for "firewalld" in GNOME Software or KDE Discover, or use the command line:

Check warning on line 12 in docs/user/software/networking/firewalld.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (firewalld)

Check warning on line 12 in docs/user/software/networking/firewalld.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (firewalld)

```bash
sudo eopkg install firewalld

Check warning on line 15 in docs/user/software/networking/firewalld.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (firewalld)
```

There are two optional packages that you can choose to install, as well:

- `firewalld-config`: A graphical configuration program to configure your firewall setup.
- `firewalld-applet`: A system tray icon to show the current firewall status. It works with any desktop that supports a system tray via StatusNotifier.

### Configuring firewalld
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need to make this a subsection of the previous one

Suggested change
### Configuring firewalld
## Configure firewalld


As of $SYNC_DATE, our firewalld package is [Stateless](/docs/user/software/configuration_files). These are the default configuration file locations for firewalld:

| Package | Default Location |
|------------------|----------------------------------------------------|
| firewalld | `/usr/share/defaults/etc/firewalld/firewalld.conf` |
| firewalld-applet | `/usr/share/defaults/etc/firewall/applet.conf` |

To modify the firewall configuration manually, copy the default file to `/etc/firewalld/firewalld.conf` or `/etc/firewall/applet.conf`, and make your changes. If you want to use a graphical tool, install the `firewalld-config` package, and search for Firewall in your desktop's applications menu, or run `firewall-config` from the command line.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be helpful to have the instructions to use the graphical tool separate from the ones to do everything "manually"


By default, the graphical configuration tool only modifies the runtime configuration. After ensuring that your changes work, save the configuration to the permanent configuration by clicking "Options" in the top menu bar, and clicking "Runtime to Permanent".

### Starting and stopping firewalld

Please note that firewalld does NOT run on system boot by default. It needs to be manually started/configured to start automatically:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Wrap this in a :::warning[Important] admonition
  • Don't use 'please note'.
  • No need to capitalize "not", the admonition is enough to draw attention to this. If you really want to highlight this, you can use italics.
  • Instead of saying 'it needs', it's better to say "You need to..."


```bash
# Start firewalld manually
systemctl start firewalld

# Configure firewalld to start automatically on each boot and immediately start the service
systemctl enable --now firewalld

# Check whether firewalld is running
systemctl status firewalld

# Restart firewalld manually
systemctl restart firewalld

# Stop firewalld manually
systemctl stop firewalld

# Configure firewalld to not start automatically on each boot and immediately stop the service
systemctl disable --now firewalld
```

If installed, the firewall applet will start automatically when logging in to your desktop.