He estado tratando de descubrir cómo actualizar el tiempo de espera de una entrada de ipset, sin suerte hasta el momento, cuando uso ipset nativo simplemente usaría:
$ ipset add foo 192.168.0.5 timout N -exist
pero firewalld no parece implementar esta característica según el manual (man), lo cual es bastante útil y común. ip2ban parece omitir la implementación de ipset de firewalld y solo usarlo de forma nativa, así que lo intenté pero sin éxito:
creación de ipsets:
$ ipset create foo hash:ip timeout 300
regla directa:
$ 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
Las solicitudes https y los intentos de conexión ssh se descartan sin ruta al host. Tan pronto como desactivo firewalld puedo enviar correctamente la solicitud y conectarme a ssh.
- Estoy usando la zona predeterminada:
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: filtro ipv4 ENTRADA 0 -p TCP -m multipuerto --dports 22,443 -m set --match-set foo src -j ACEPTAR
¿Qué estoy haciendo mal? ¿Es esto posible con firewalld?
gracias de antemano