- Статус:
systemctl status firewalld firewall-cmd --state
- Список зон:
firewall-cmd --get-zones
- Назначение зон (условно):
drop - все входящие пакеты отбрасываются (drop) без ответа. Разрешены только исходящие соединения. block - входящие соединения отклоняются (rejected) с ответом icmp-host-prohibited (или icmp6-adm-prohibited). Разрешены только инициированные системой соединения. public - зона по-умолчанию. Из названия ясно, что эта зона нацелена на работу в общественных сетях. Мы не доверяем этой сети и разрешаем только определенные входящие соединения. external - зона для внешнего интерфейса роутера (т.н. маскарадинг). Разрешены только определенные нами входящие соединения. dmz - зона DMZ, разрешены только определенные входящие соединения. work - зона рабочей сети. Мы все еще не доверяем никому, но уже не так сильно, как раньше :) Разрешены только определенные входящие соединения. home - домашняя зона. Мы доверяем окружению, но разрешены только определенные входящие соединения internal - внутренняя зона. Мы доверяем окружению, но разрешены только определенные входящие соединения trusted - разрешено все.
- Список всех активных зон:
firewall-cmd --get-active-zones
- К какой зоне принадлежит интерфейс enp1s0:
firewall-cmd --get-zone-of-interface=enp1s0
- какие интерфейсы принадлежат конкретной зоне:
firewall-cmd --zone=public --list-interfaces
- что вообще разрешено постоянно:
firewall-cmd --permanent --list-all
- Убрать сервис
firewall-cmd --permanent --zone=public --remove-service=dhcpv6-client
- Открыть порт на постоянной основе:
firewall-cmd --permanent --zone=public --add-port=2234/tcp
- Перезагрузка правил:
firewall-cmd --reload
- Проверка открытых портов на зоне:
firewall-cmd --zone=public --list-ports
- Убрать сервис на зоне:
firewall-cmd --permanent --zone=public --remove-service=ssh
- ВКЛЮЧИТЬ режим блокировки всех исходящих и входящих пакетов:
firewall-cmd --panic-on
- ВЫКЛЮЧИТЬ режим блокировки всех исходящих и входящих пакетов:
firewall-cmd --panic-off
- СТАТУС режим блокировки всех исходящих и входящих пакетов:
firewall-cmd --query-panic
- Перезагрузить правила firewalld без потери текущих соединений:
firewall-cmd --reload
- Перезагрузить правила firewalld и сбросить текущие соединения (рекомендуется только в случае проблем):
firewall-cmd --complete-reload
- Добавить к зоне сетевой интерфейс:
firewall-cmd --zone=public --add-interface=em1
- Добавить к зоне сетевой интерфейс (сохранится после перезагрузки firewall):
firewall-cmd --zone=public --permanent --add-interface=em1
Можно в конфиге ifcfg-enp1s0 указать, какой зоне принадлежит этот интерфейс. Для этого добавим ZONE=work в файл /etc/sysconfig/network-scripts/ifcfg-enp1s0. Если параметр ZONE не указан, будет назначена зона по-умолчанию (параметр DefaultZone в файле /etc/firewalld/firewalld.conf.
- Разрешить диапазон портов:
firewall-cmd --zone=public --add-port=5059-5061/udp
- Разрешить весь трафик для заданного хоста:
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="172.16.72.22/32" port protocol="tcp" port="1-65535" accept' firewall-cmd --permanent --zone=trusted --add-source=172.16.72.22/32
- Проверить статус:
firewall-cmd --zone=external --query-masquerade
- Включить:
firewall-cmd --zone=external --add-masquerade
- Перенаправить входящие на 22 порт на другой хост:
firewall-cmd --zone=external --add-forward-port=port=22:proto=tcp:toaddr=192.168.1.23
- Пробросить порт 9006 на 80 порт сервера 10.200.16.216
firewall-cmd --zone=public --add-forward-port=port=9006:proto=tcp:toport=80:toaddr=10.200.16.216 --permanent
- Перенаправить входящие на 22 порт на другой хост с изменением порта назначения (с 22 на 192.168.1.23:2055):
firewall-cmd --zone=external --add-forward-port=port=22:proto=tcp:toport=2055:toaddr=192.168.1.23
systemctl disable firewalld
systemctl stop firewalld
yum install iptables-services
systemctl start iptables
systemctl start ip6tables
systemctl enable iptables
systemctl enable ip6tables
/sbin/iptables-save > /etc/sysconfig/iptables
/sbin/ip6tables-save > /etc/sysconfig/ip6tables
systemctl restart iptables.service