diff --git a/pages/linux/firewall-cmd.md b/pages/linux/firewall-cmd.md index 37330cfff..338ed9139 100644 --- a/pages/linux/firewall-cmd.md +++ b/pages/linux/firewall-cmd.md @@ -1,15 +1,12 @@ # firewall-cmd > The firewalld command-line client. +> View and adapt the runtime or permanent firewall configuration state. > More information: . -- View the available firewall zones: +- View all available firewall zones and rules in their runtime configuration state: -`firewall-cmd --get-active-zones` - -- View the rules which are currently applied: - -`firewall-cmd --list-all` +`firewall-cmd --list-all-zones` - Permanently move the interface into the block zone, effectively blocking all communication: @@ -23,10 +20,18 @@ `firewall-cmd --permanent --zone={{public}} --remove-service={{http}}` -- Permanently open two arbitrary ports in the specified zone: +- Permanently forward a port for incoming packets in the specified zone (like port 443 to 8443 when entering the `public` zone): -`firewall-cmd --permanent --zone={{public}} --add-port={{25565/tcp}} --add-port={{19132/udp}}` +`firewall-cmd --permanent --zone={{public}} --add-rich-rule='rule family="{{ipv4|ipv6}}" forward-port port="{{443}}" protocol="{{udp|tcp}}" to-port="{{8443}}"'` -- Reload firewalld to force rule changes to take effect: +- Reload firewalld to lose any runtime changes and force the permanent configuration to take effect immediately: `firewall-cmd --reload` + +- Save the runtime configuration state to the permanent configuration: + +`firewall-cmd --runtime-to-permanent` + +- Enable panic mode in case of Emergency. All traffic is dropped, any active connection will be terminated: + +`firewall-cmd --panic-on`