Я пытался выяснить, как обновить тайм-аут записи ipset, но пока безуспешно. При использовании собственного ipset я бы просто использовал:
$ ipset add foo 192.168.0.5 timout N -exist
но firewalld, похоже, не реализует эту функцию, согласно руководству (man), которое является довольно полезным и распространенным. ip2ban, похоже, обходит реализацию ipset firewalld и просто использует его изначально, я тоже пробовал, но безуспешно:
создание ipset:
$ ipset create foo hash:ip timeout 300
прямое правило:
$ firewall-cmd --direct --add-rule ipv4 filter INPUT 0 -p TCP -m multiport --dports 22,443 -m set --match-set foo src -j ACCEPT
$ ipset add foo 192.120.11.1
Запросы https и попытки подключения ssh сбрасываются без маршрута к хосту. Как только я отключаю firewalld, я могу успешно отправлять запросы и подключаться к ssh.
- Я использую зону по умолчанию:
public (active)
target: default
icmp-block-inversion: no
interfaces: enp0s3
sources:
services: cockpit dhcpv6-client ssh
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
firewall-cmd --direct --get-all-rules: фильтр ipv4 ВХОД 0 -p TCP -m multiport --dports 22,443 -m set --match-set foo src -j ACCEPT
что я делаю не так, возможно ли это с firewalld?
заранее спасибо