- get list of zones
- firewall-cmd --list-all-zones
- firewall-cmd --get-active-zones
- add port rule
- firewall-cmd --zone=public --add-port=443/tcp --permanent
- firewall-cmd --reload
- add service rule
- firewall-cmd --zone=public --add-service=ssh --permanent
- firewall-cmd --reload
- remove rules for firewalld
- firewall-cmd --zone=public --remove-port=5000/tcp --permanent
- firewall-cmd --zone=public --remove-port=5001/tcp --permanent
- firewall-cmd --zone=public --remove-service=http --permanent
- firewall-cmd --reload
- list the rules
- firewall-cmd --info-zone=public
public (active)
target: default
icmp-block-inversion: no
interfaces: eth0
sources:
services: ssh dhcpv6-client
ports: 1891/tcp 80/tcp 443/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
- enable logging
- firewall-cmd --get-log-denied ( to check status)
- firewall-cmd --set-log-denied=all ( to enable all /unicast/broadcast/multicast/off )
- firewall-cmd --get-log-denied (to verify)
- create new rule to allow specific IP connecting to port 4567 on the server.
- without rich-rules (recommended)
- firewall-cmd --new-zone=special --permanent
- firewall-cmd --reload
- firewall-cmd --zone=special --add-source=192.0.2.4/32 --permanent
- firewall-cmd --zone=special --add-port=4567/tcp --permanent
- firewall-cmd --reload
-----block ip-----
one time: sudo firewall-cmd --new-zone=blocked-ips --permanent
sudo firewall-cmd --zone=blocked-ips --add-source=<IP_ADDRESS> --permanent
sudo firewall-cmd --zone=blocked-ips --set-target=DROP --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --info-zone=blocked-ips
-----remove blocked ip-----
sudo firewall-cmd --zone=blocked-ips --remove-source=<IP_ADDRESS> --permanent
sudo firewall-cmd --reload
- with rich-rules
- firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="1.2.3.4/32" port protocol="tcp" port="4567" accept'
- firewall-cmd --reload
- drop traffic from source ip
- firewall-cmd --zone=public --permanent --add-rich-rule='rule family="ipv4" source address="104.149.159.14" drop'
- firewall-cmd reload
- remove rule of source ip
- firewall-cmd --zone=public --permanent --remove-rich-rule='rule family="ipv4" source address="104.149.159.14" drop'
- firewall-cmd --reload