Post by Christian GarbsPost by Stefan+ (Stefan Froehlich)Aber es gibt [in nft] ja extra den Type "inet", welcher auf V4
und V6 matcht. Das ist schon einfacher, finde ich.
Dort, wo ich es gerne hätte, fehlt es. Einer der Hauptpunkte, für
die ich nft verwende sind ein paar sets, die von fail2ban befüllt
werden (das Beste aus beiden Welten: Ein Regelverstoß irgendwo
bewirkt eine sich selbst verlängernde Sperre für den gesamten
Traffic). Und diese sets muss ich nun jeweils für IPv4 und IPv6
getrennt definieren, weil sich das dort nicht mischen lässt.
Hast Du da eine Sonderkonfiguration mit den Sets, so dass nftables
das an eine ganz bestimmte Stelle im Regelwerk schreiben muss?
Die Verbindung von fail2ban und iptables/nft ist bei mir eine
komplette Sonderkonfiguration, weil mir die ursprüngliche,
vorgefertigte Action nicht gefallen hat (AFAIK hat sich fail2ban um
die Dauer der Sperre gekümmert, anstatt das iptables tun zu lassen,
wo das IMO strukturell hingehört - keine Ahnung, ob das inzwischen
besser ist).
Post by Christian GarbsIch habe in meiner /etc/nftables.conf für fail2ban eine eigene
Table eingerichtet, die ist initial leer: [...]
...und wird gar nicht benötigt, wie sich im weiteren Verlauf gezeigt
hat :-)
Post by Christian Garbs#v+
table inet f2b-table {
set addr-set-sshd {
type ipv4_addr
elements = { xx.xxx.xx.xx, xx.xxx.xx.xx,
xxx.xx.xxx.xx }
}
set addr6-set-sshd {
type ipv6_addr
elements = { xxxx:xxx:xxx:xxxx::x }
}
chain f2b-chain {
type filter hook input priority filter - 1; policy accept;
}
}
#v-
Ja, das ist immer noch so, wie ich es von damals im Kopf hatte.
Nicht schlecht, aber halt eher konservativ. Meine Blacklist sieht so
aus (IPv4 sinngemäß ident):
#v+
set blacklist_v6 {
type ipv6_addr
size 1024
timeout 1h
elements = { [...] }
}
chain input {
[...]
ip6 saddr @blacklist_v6 update @blacklist_v6 { ip6 saddr } jump reject_or_drop
[...]
}
#v-
...und fail2ban ist so konfiguriert, dass jeder Regelverstoß einfach
nur in blacklist_v[46] eingetragen und der Ban sofort danach wieder
aufgehoben wird.
Das ist halt die brachiale Variante - klopfe einmal auf Port 4711
an, und die Maschine ist solange nicht mehr für Dich erreichbar, bis
eine Stunde lang kein Zugriff mehr erfolgt. Das hält die
allermeisten Hosts dauerhaft fern; nur ein paar tasten sich
mit inkrementell wachsenden Zeitintervallen an das Limit heran und
probieren dann im Stundentakt irgendwelche Dinge. Wenn nftables
nicht nur fixe, sondern auch noch je Verbindung exponentiell
wachsende Timouts könnte, wäre ich die auch noch los, aber... naja,
so viele sind es nicht.
Post by Christian GarbsDisclaimer: Ich bin nicht firm in fail2ban, ich habe das vor
Jahren einmalig eingerichtet und seitdem läuft das vor sich hin.
Das ist im Grund genommen hier nicht anders, bloß handgestrickt.
Servus,
Stefan
--
http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich
Offizieller Erstbesucher(TM) von mmeike
Stefan, so weiss wie das Leben. Albern ist superb.
(Sloganizer)