FirewallD
Управление firewalld
Команда | Описание | |
---|---|---|
sudo dnf install firewalld | установка firewalld | |
sudo systemctl enable firewalld | Разрешить автозапуск | |
sudo systemctl start firewalld | Запустить firewalld | |
sudo firewall-cmd --state | состояние | |
sudo firewall-cmd --list-all | Посмотреть открытые порты |
Управление сервисами
Команда | Описание |
---|---|
sudo firewall-cmd –info-service ssh | Посмотреть информацию о сервисе |
sudo firewall-cmd –get-services | Посмотреть информацию о всех сервисах |
sudo firewall-cmd –service=ssh –remove-port=22/tcp –permanent | Удалить из сервиса SSH порт 22 |
sudo firewall-cmd –service=ssh –add-port=2222/tcp –permanent | Добавить в сервис SSH порт 2222 |
Управление зонами
Команда | Описание |
---|---|
cat /etc/firewalld/services/ssh.xml | Настройки лежат в этом файле |
cat /usr/lib/firewalld/services | Описание всех сервисов, можно файл модифицировать и скопировать в /etc/firewalld/services/ |
sudo firewall-cmd –zone=public –add-port=10100-11000/udp –add-port=13107/udp –permanent | Открыть постоянно несколько портов |
sudo firewall-cmd –reload | Перезапустить файервол |
sudo firewall-cmd –add-port=3456/tcp –permanent | Разрешить порт |
firewall-cmd –add-port=3478/{udp,tcp} –permanent | Добавить два типа за один раз |
sudo ss -altnp4 | grep sshd | Посмотреть на каком порту сидит sshd |
sudo firewall-cmd –add-icmp-block-inversion | Заблокировать ICMP полностью |
sudo firewall-cmd –get-icmp-types | Получить информацию о всех ICMP, которые можно блокировать |
sudo firewall-cmd –set-target=default | default это отбой Reject(packed filtered) и понятно, что fw используется. set-target=DROP - будет таймаут(предпочтительный способ для скрытия).Дропаются все пакеты, которые не разрешены в настроках. |
sudo firewall-cmd –get-zones | Список зон |
sudo firewall-cmd –list-all-zones | Информация по всем зонам |
sudo firewall-cmd -get-default-zone | Зона по умолчанию public, zone=block всё блокируется, в зоне drop - дропается, trusted разрешается |
sudo firewall-cmd –change-interface=enp08 –zone=trusted | Зоны привязываются к интерфейсам |
sudo firewall-cmd –runtime-to-permanent | сохраняем сразу все текущие настройки постоянно |
sudo firewall-cmd –panic-on | режим паники, дропаются все пакеты |
Управление rich-rule
Команда | Описание |
---|---|
sudo firewall-cmd –permanent –zone=public –add-rich-rule='rule family="ipv4" source address="3.5.2.1/32" port protocol="tcp" port="333" accept' | добавить точечное правило |
sudo firewall-cmd –permanent –zone=public –add-rich-rule='rule family="ipv4" source address="3.5.2.1/32" service name="tftp" log prefix "tftp" level = "info" limit value="1/m" accept' | Разрешить соединение с адреса 3.5.2.1/32 к сервису tftp, логировать не чаще раза в минуту, к логам приписывать tftp и важность info |
sudo journalctl -p crit | tail -1 | Проверить логи с уровнем "crit" |
sudo firewall-cmd –permanent –zone=public –remove-rich-rule='rule family="ipv4" source address="3.5.2.1/32" port protocol="tcp" port="333" accept' | удалить правило |
sudo firewall-cmd –delete-zone=myzone –permanent | Удалить зону |
sudo firewall-cmd –permanent –zone=public –set-target=DROP | по умолчанию REJECT, DROP, чтобы сканеры не могли определить защищён ли сервер файерволом |
rich-rule без зоны добавляется в дефолтную зону.
Просмотри логов tail -f /var/log/firewalld
в файле /etc/sysconfig/firewalld повышаем уровень детализации FIREWALLD_ARGS=–debug=10 логов и sudo systemctl restart firewalld