Anleitung - bearDropper - Fail2Ban Alternative auf OpenWRT

Script-Start

#!/bin/sh

Pakete installieren

opkg update

opkg install ca-certificates libustream-openssl

wget -qO- http://rawgit.com/robzr/bearDropper/master/install.sh | sh

# IP nach 5 Versuchen blockieren und für LAN aktivieren

uci set bearDropper.@bearDropper[0].attemptCount=5
uci set bearDropper.@bearDropper[0].banLength=100w

uci add_list bearDropper.@bearDropper[0].firewallHookChain='input_lan_rule:1'
uci add_list bearDropper.@bearDropper[0].firewallHookChain='forwarding_lan_rule:1'

uci commit

/etc/init.d/bearDropper stop

/etc/init.d/bearDropper start
exit

E-Mail Benachrichtigung konfigurieren

Im Programm von bearDropper müssen wir ein Zeile anpassen, um im Falle einer Blockierung eine Benachrichtigung zu erhalten.

vi /usr/sbin/bearDropper

Wir suchen nach der Zeile 233:

...

logLine 1 "Inserting ban rule for IP $ip into iptables chain $firewallChain"

...

Und füge die untere Zeile ein:

...

logLine 1 "Inserting ban rule for IP $ip into iptables chain $firewallChain"        

echo "Inserting ban rule for IP $ip into iptables chain $firewallChain" | sendmail <empfänger@yourdomain.com>

...

bearDropper neu starten

/etc/init.d/bearDropper stop

/etc/init.d/bearDropper start

Blockierte IP-Adressen ausgeben

iptables -L bearDropper -v -n

Blockierte IP-Adresse entfernen (unban)

Nachstehende Funktion ist standardmäßig deaktiviert. Blockiert IP-Adressen werden daher ausschließlich im temporären Ordner gespeichert und gehen nach einem Neustart verlogen.

uci set bearDropper.@bearDropper[0].persistentStateWritePeriod=4w

 

Am einfachsten ist es daher, wenn der Router neu gestartet wird. Ist das nicht möglich kann eine IP wie folgt entfernt werden:

iptables -D bearDropper -s <banned-ip> -j DROP

/etc/init.d/bearDropper stop

rm /tmp/bearDropper.*

/etc/init.d/log restart

/etc/init.d/firewall restart

/etc/init.d/bearDropper start

Dropbear Authentifizierungswarnungen ausgeben

logread | grep authpriv.warn\ dropbear | wc -l

Quelle

GutHub -bearDropper

https://github.com/robzr/bearDropper

Fail2ban replacement and RBL firewall sync'ing - in lightweight ash

https://forum.archive.openwrt.org/viewtopic.php?id=62084&p=2

How to find all ip addresses blocked by iptables -A

https://stackoverflow.com/questions/43976030/how-to-find-all-ip-addresses-blocked-by-iptables-a