IP-Ban mit fail2ban werkzeug

Alle Fragen, die rund um Fail2Ban (Konfiguration, Fehler, Filter...) sind.
Bertol
Beiträge: 8
Registriert: 21. Mär 2012, 14:11
Kontaktdaten:

IP-Ban mit fail2ban werkzeug

Beitrag von Bertol » 21. Mär 2012, 18:08

Hallo!

bin heute über die Seite gestolpert und finde die Idee echt gut.

Nun wollte ich wie hier viewtopic.php?f=11&t=84 die gemeldeten IP's verbannen. jedoch möchte ich IP-Adressen auch wieder entbannen. Und warum nicht die technik von fail2ban nutzen.

Also habe ich erstmals einen filter erstellt:
/etc/fail2ban/filter.d/ipbans.conf:

Code: Alles auswählen

# Fail2Ban configuration file
#
# Author: Alexander Bertol
#
# $Revision: 1 $
#

[Definition]

# Option:  failregex
# Values:  TEXT
failregex = <HOST>
ignoreregex =
und in die /etc/fail2ban/jail.local

Code: Alles auswählen

[ipbans]
action   = %(banaction)s[name=%(__name__)s, port="%(port)s", protocol="%(protocol)s]
enabled  = true
filter   = ipbans
port     = 0:65535
logpath  = /etc/fail2ban/ipbans.txt
maxretry = 0
bantime  = 86400
aufgenommen und fail2ban restartet / reloaded

nun die IP's beziehen und meine "log" füllen

Code: Alles auswählen

wget "https://www.blocklist.de/lists/all.txt"
for ip in $(cat all.txt); do echo $(date "+%b %d %T") $ip; done > /etc/fail2ban/ipbans.txt
Nun werden erstmal 18000 IP's in ipabelle eingetragen und nach 86400 Sekunden (1 Tag) gelöscht. Dann startet mein CRON-JOB wieder mit

Code: Alles auswählen

wget "https://www.blocklist.de/lists/all.txt"
for ip in $(cat all.txt); do echo $(date "+%b %d %T") $ip; done > /etc/fail2ban/ipbans.txt
und füllt die Tabelle neu. Mails werden übrings nicht versendet, da

Code: Alles auswählen

action   = %(banaction)s[name=%(__name__)s, port="%(port)s", protocol="%(protocol)s]
diese Aktionen keine Mails versender ;)

Wenn das hier viele für gut befinden, würde ich mal die macher von all.txt fragen, ob es möglich währe eine all.txt zu ziehen die ab abfrage Zeit sich geändert hat, dann muss man nicht immer alles neu runterziehen und der Cron könnte z.B. Stündlich laufen (gedanklich sowas wget https://www.blocklist.de/lists/getall.p ... 1332348617, dass dann alle IP adressen, die seit dem Zeitstempel 1332348617 hinzugefügt werden nur heruntergeladen werden)

Freue mich über jeden Feedback
Zitat
"Zur Kriminalitätsbekämpfung sind auch ohne die pauschale und anlasslose Speicherung jeder Benutzung von Telefon, Handy, E-Mail und Internet genügend Verbindungsdaten verfügbar"
Bundesjustizministerium zur Vorratsdatenspeicherung

Benutzeravatar
Martin
Beiträge: 400
Registriert: 14. Sep 2010, 11:54
Kontaktdaten:

Re: IP-Ban mit fail2ban werkzeug

Beitrag von Martin » 21. Mär 2012, 19:22

Hi Bertol,
jupp. Sowas ist möglich. Ich werde das bei Zeit bauen und hier und in der API/Export-Seiten mit einbauen.
Ich denke entweder am Wochenende oder bis spätestens Ende nächste Woche wird es fertig sein.
Mfg Martin
http://www.blocklist.de/de/ Fail2Ban Reporting Service

Bertol
Beiträge: 8
Registriert: 21. Mär 2012, 14:11
Kontaktdaten:

Re: IP-Ban mit fail2ban werkzeug

Beitrag von Bertol » 22. Mär 2012, 13:39

Hallo Martin!

Cool, danke für die Mühen!

Hoffe dass das die Gemeinde anerkennt und nutzen wird :D
Zitat
"Zur Kriminalitätsbekämpfung sind auch ohne die pauschale und anlasslose Speicherung jeder Benutzung von Telefon, Handy, E-Mail und Internet genügend Verbindungsdaten verfügbar"
Bundesjustizministerium zur Vorratsdatenspeicherung

Benutzeravatar
Martin
Beiträge: 400
Registriert: 14. Sep 2010, 11:54
Kontaktdaten:

Re: IP-Ban mit fail2ban werkzeug

Beitrag von Martin » 22. Mär 2012, 21:21

Hi,

ist online:
https://www.blocklist.de/de/api.html#last

Also z.b. kann man sich alle neuen IP-Adressen von 18 Uhr mit:
https://api.blocklist.de/getlast.php?time=18:00

holen oder statt der Uhrzeit kann man auch einen Zeitstempel nehmen.
Mfg Martin
http://www.blocklist.de/de/ Fail2Ban Reporting Service

Bertol
Beiträge: 8
Registriert: 21. Mär 2012, 14:11
Kontaktdaten:

Re: IP-Ban mit fail2ban werkzeug

Beitrag von Bertol » 23. Mär 2012, 06:58

Mercy :D
Zitat
"Zur Kriminalitätsbekämpfung sind auch ohne die pauschale und anlasslose Speicherung jeder Benutzung von Telefon, Handy, E-Mail und Internet genügend Verbindungsdaten verfügbar"
Bundesjustizministerium zur Vorratsdatenspeicherung

JustDanMan
Beiträge: 9
Registriert: 19. Apr 2012, 14:29

Re: IP-Ban mit fail2ban werkzeug

Beitrag von JustDanMan » 19. Apr 2012, 21:03

Hallo Bertol!

Habe zwei Fragen zu deiner Lösung:

1. Was genau bedeutet dein 0:65535 im Port?
2. Wie hast du denn den Cron gebaut wenn du API-Abfrage mit der Zeitangabe nutzt?

Gruß
Daniel

Falconbase
Beiträge: 97
Registriert: 14. Sep 2010, 11:20
Wohnort: Wallersdorf
Kontaktdaten:

Re: IP-Ban mit fail2ban werkzeug

Beitrag von Falconbase » 20. Apr 2012, 06:50

Hi JustDanMan,

die Frage 1 beutet das alle Ports auf dem Server für diese IP-Adresse gesperrt ist.
Zur 2 Frage hier könnte man via dem befehl date "+%T" den wget anpassen, so das die URL Dynamisch ist.

Grüße Falconbase
Grüße Falconbase

http://www.kunesch.net

Bertol
Beiträge: 8
Registriert: 21. Mär 2012, 14:11
Kontaktdaten:

Re: IP-Ban mit fail2ban werkzeug

Beitrag von Bertol » 20. Apr 2012, 08:55

Hallo Daniel,

2. Wie hast du denn den Cron gebaut wenn du API-Abfrage mit der Zeitangabe nutzt?

Ich habe das so gelöst:
Datei:
/usr/local/bin/fail2bannhelper.sh

Code: Alles auswählen

#!/bin/sh
[ -e /etc/fail2ban/ipbans.txt ] || touch /etc/fail2ban/ipbans.txt
[ -e /etc/fail2ban/all.txt ] || touch /etc/fail2ban/all.txt
cp /etc/fail2ban/all.txt /etc/fail2ban/all2.txt && wget -q -O/etc/fail2ban/all.txt "https://api.blocklist.de/getlast.php?time=$(stat -c %Y /etc/fail2ban/all.txt)" && sort /etc/fail2ban/all.txt > /etc/fail2ban/all3.txt && mv /etc/fail2ban/all3.txt /etc/fail2ban/all.txt && diff  /etc/fail2ban/all.txt /etc/fail2ban/all2.txt | grep '^<' | sed -e 's/< //' > /etc/fail2ban/all3.txt && for ip in $(cat /etc/fail2ban/all3.txt); do echo $(date "+%b %d %T") $ip; done > /etc/fail2ban/ipbans.txt


Dieser "3"-Zeiler prüft als 1. ob die Dateien ipbans.txt und all.txt angelegt sind. Danach wird die URL geladen; Sortiert; und die Differenz nach ipbans.txt eingetragen. Beim wget wird die create time von all.txt berücksichtigt und es werden nur die Daten vom letzten Eintrag gezogen.

So nun noch chmod 700 auf /usr/local/bin/fail2bannhelper.sh und einen Eintrag in Cron eintragen. und warten was passiert :mrgreen:
Zitat
"Zur Kriminalitätsbekämpfung sind auch ohne die pauschale und anlasslose Speicherung jeder Benutzung von Telefon, Handy, E-Mail und Internet genügend Verbindungsdaten verfügbar"
Bundesjustizministerium zur Vorratsdatenspeicherung

JustDanMan
Beiträge: 9
Registriert: 19. Apr 2012, 14:29

Re: IP-Ban mit fail2ban werkzeug

Beitrag von JustDanMan » 20. Apr 2012, 13:40

Okay, vielen Dank, hab mir das jetzt mal zusammengebaut und funktioniert auch super! ;-)
Jetzt ist mir noch folgendes eingefallen:
Die IP-Adressen aus der Blocklist werden 24 Stunden geblockt. Wenn mein Fail2Ban aber einen Angriff entdeckt wird dieser 10 Minuten lang geblockt. Gehen wir jetzt also von folgender Situation aus:
Mein Fail2Ban erkennt einen Angriff, blockt ihn (10 Minuten) und schreibt ihn in die Blocklist. In dieser Zeit wird eine neue Blocklist eingelesen in der sich auch die von mir eingetragene IP befindet. Wenn ich 10 Minuten jetzt aber um sind wird die Sperre ja wegen der Überschneidung wieder deaktiviert, obwohl er auf der Blocklist steht und eigentlich 24 Stunden geblockt werden sollte, oder? Außerdem: Was ist wenn ich z.B. selbst das Passwort dreimal falsch eingebe? Meine IP wird in die Blocklist geschrieben. Ich gehe dann auf Blocklist.de und lasse meine IP wieder austragen, da ich ja niemandem schaden möchte, sondern einfach zu blöd gewesen bin mein Passwort auf meinem Server richtig einzugeben :D Auf meinem Server bin ich ja dann selbst aber trotzdem noch 24 Stunden gesperrt auch wenn die IP aus der Blocklist wieder ausgetragen wird, oder sehe ich das falsch? Ich hoffe das ist jetzt einigermaßen verständlich was ich damit meine, aber ich weiß nicht wie ich es anders ausdrücken soll. :D

Gruß
Daniel

Benutzeravatar
Martin
Beiträge: 400
Registriert: 14. Sep 2010, 11:54
Kontaktdaten:

Re: IP-Ban mit fail2ban werkzeug

Beitrag von Martin » 20. Apr 2012, 13:52

Hi Daniel,

wenn dein SSH-Username nicht root ist, kannst du bei /etc/fail2ban/filter.d/ssh**.conf bei ignoreregex = deinen Usernamen eintragen, dann werden "Angriffe" mit diesem Username nicht gewertet.

Je nachdem ob du die IPs in einen eigenen Chain importierst, werden diese nicht entsperrt, wenn fail2ban diese wieder entsperrt.
Fail2Ban legt für jeden Dienst (Jail) eine Chain an, z.B. fail2ban-chain-ssh-xxxx-name und dort wird die IP dann geblockt und wieder entblockt.
Wenn die IP bei IPTables noch in einem anderen Chain drin steht, ist sie weiterhin blockiert.
Mfg Martin
http://www.blocklist.de/de/ Fail2Ban Reporting Service

JustDanMan
Beiträge: 9
Registriert: 19. Apr 2012, 14:29

Re: IP-Ban mit fail2ban werkzeug

Beitrag von JustDanMan » 20. Apr 2012, 14:00

Vielen Dank! Ich denke jetzt sind alle Fragen geklärt ;-)

Bertol
Beiträge: 8
Registriert: 21. Mär 2012, 14:11
Kontaktdaten:

Re: IP-Ban mit fail2ban werkzeug

Beitrag von Bertol » 20. Apr 2012, 16:14

Wenn Du einzelne Ports Blocken willst dann kannst Du auch sowas machen:

Code: Alles auswählen

#!/bin/bash
#####################################################################
# Program: blocklist2ban
#####################################################################
# Version    : 0.1
# Date       :  20. April 2012
# Author     : Alexander Bertol
#
# Notes      :
#
# Description:
#             Fetch the current ip's from blocklist.de and put it
#             in iptables
#####################################################################

#--------------------------------------------------------------------
# Setup Global Variables
#--------------------------------------------------------------------

# path to iptables
iptables=/sbin/iptables

#Services name:port1,port2,portN:protocol
services=(ftp:21:tcp ssh:22:tcp mail:25:tcp apache:80,443:tcp imap:110,143,993:tcp bots:80,443:tcp)

#Prefix for iptables
prefix=blocklist2ban-

#Ignore IPS
ignoreip="(127.0.0.1|123.123.123.123)"


#--------------------------------------------------------------------
# Test for prerequisites
#--------------------------------------------------------------------

if [ -f /var/run/blocklist2ban.run ]
then
    pid=$(cat /var/run/blocklist2ban.run)
    if ps -AF |grep $pid | grep -v grep
    then
        echo Exit! blocklist2ban is runing.
        exit 1
    fi

fi

if [ ! -x ${iptables} ]
then
    echo Iptables not found!
    exit 2
fi

#--------------------------------------------------------------------
# Functions
#--------------------------------------------------------------------

function banip () {
    # Parameter 1 service (IPtablesChainname)
    # Parameter 2 port(s)
    # Parameter 3 protocol

    if ! $iptables -n -L ${prefix}${1} 2>/dev/null | egrep -q "Chain [^>*]* \("
    then
        echo create chain ${prefix}${1}
        $iptables -N ${prefix}${1}
        $iptables -F ${prefix}${1}
        $iptables -A ${prefix}${1} -j RETURN
        $iptables -I INPUT -p ${3} -m multiport --dports ${2} -j ${prefix}${1}
    fi

    #get the file
    wget -q  https://www.blocklist.de/lists/${1}.txt -O /tmp/${1}.txt
    sort -n /tmp/${1}.txt | egrep -v ${ignoreip} > /tmp/${1}2.txt
    mv /tmp/${1}2.txt /tmp/${1}.txt

    # get current iptables chainsIP
    $iptables -n -L ${prefix}${1} | awk {'print $4'} | sort -n | egrep "([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3}$" > /tmp/${1}-table.txt
    #Diff between new and iptables
    diff /tmp/${1}.txt /tmp/${1}-table.txt > /tmp/${1}-diff.txt

    # DEL IPS
    count=0
    for ip in $( grep "^> " /tmp/${1}-diff.txt | cut -d " " -f2)
    do
        $iptables -D ${prefix}${1} -s ${ip} -j DROP
        count=$(( $count + 1 ))
    done

    if [ $count -gt 0 ]
    then
        echo ${1} del ${count} times > /dev/null
    fi

    # get current iptables chainsIP
    $iptables -n -L ${prefix}${1} | awk {'print $4'} | sort -n | egrep "([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3}$" > /tmp/${1}-table.txt
    #Diff between new and iptables
    diff /tmp/${1}.txt /tmp/${1}-table.txt > /tmp/${1}-diff.txt

    # ADD IPS
    count=0
    for ip in $( grep "^< " /tmp/${1}-diff.txt | cut -d " " -f2)
    do
        $iptables -I ${prefix}${1} 1 -s ${ip} -j DROP
        count=$(( $count + 1 ))
    done

    if [ $count -gt 0 ]
    then
        echo ${1} add ${count} times > /dev/null
    fi
}


#--------------------------------------------------------------------
# Do something
#--------------------------------------------------------------------

echo $$ > /var/run/blocklist2ban.run

for service in ${services[*]}
do
    servicename=${service%%:*}
    port=${service%:*}
    port=${port#*:}
    protocol=${service##*:}
    banip ${servicename} $port $protocol
done

rm /var/run/blocklist2ban.run
Das währe dann ohne fail2ban. Und Du könntest z.B. noch über http / https auf eine evtl. web oberfläche zugreifen
Zuletzt geändert von Bertol am 23. Apr 2012, 10:56, insgesamt 1-mal geändert.
Zitat
"Zur Kriminalitätsbekämpfung sind auch ohne die pauschale und anlasslose Speicherung jeder Benutzung von Telefon, Handy, E-Mail und Internet genügend Verbindungsdaten verfügbar"
Bundesjustizministerium zur Vorratsdatenspeicherung

JustDanMan
Beiträge: 9
Registriert: 19. Apr 2012, 14:29

Re: IP-Ban mit fail2ban werkzeug

Beitrag von JustDanMan » 21. Apr 2012, 18:15

Hmm, wenn ich dein Script ausprobiere erhalte ich folgenden Fehler:
./blocklist2ban.sh: 24: Syntax error: "(" unexpected

Bertol
Beiträge: 8
Registriert: 21. Mär 2012, 14:11
Kontaktdaten:

Re: IP-Ban mit fail2ban werkzeug

Beitrag von Bertol » 23. Apr 2012, 10:57

JustDanMan hat geschrieben:Hmm, wenn ich dein Script ausprobiere erhalte ich folgenden Fehler:
./blocklist2ban.sh: 24: Syntax error: "(" unexpected
änder die 1. Zeile von

Code: Alles auswählen

#!/bin/sh
in

Code: Alles auswählen

#!/bin/bash
um und versuche es nochmal

[EDIT:]

habe gerade das ganze auf einem Testsystem getestet. hier verweigerte wget https, evtl. sollte dann die zeile mit wget wie folgt modifierzt werden:

Code: Alles auswählen

wget --no-check-certificate -q  https://www.blocklist.de/lists/${1}.txt -O /tmp/${1}.txt
Warum das Certifikat verweigert wurde, weiss ich noch nicht, muss ich noch genauer untersuchen
Zitat
"Zur Kriminalitätsbekämpfung sind auch ohne die pauschale und anlasslose Speicherung jeder Benutzung von Telefon, Handy, E-Mail und Internet genügend Verbindungsdaten verfügbar"
Bundesjustizministerium zur Vorratsdatenspeicherung

JustDanMan
Beiträge: 9
Registriert: 19. Apr 2012, 14:29

Re: IP-Ban mit fail2ban werkzeug

Beitrag von JustDanMan » 23. Apr 2012, 19:39

Herzlichen Dank, mit den beiden Anpassungen funktioniert das Script super! ;) Ist es für dich okay, wenn ich das auf meinen Blog stelle? (Natürlich mit Angabe deines Namens)

Bertol
Beiträge: 8
Registriert: 21. Mär 2012, 14:11
Kontaktdaten:

Re: IP-Ban mit fail2ban werkzeug

Beitrag von Bertol » 24. Apr 2012, 07:30

Gerne brauchst du noch ein plugin für munin?
Bild
Zitat
"Zur Kriminalitätsbekämpfung sind auch ohne die pauschale und anlasslose Speicherung jeder Benutzung von Telefon, Handy, E-Mail und Internet genügend Verbindungsdaten verfügbar"
Bundesjustizministerium zur Vorratsdatenspeicherung

JustDanMan
Beiträge: 9
Registriert: 19. Apr 2012, 14:29

Re: IP-Ban mit fail2ban werkzeug

Beitrag von JustDanMan » 24. Apr 2012, 11:16

brauchst du noch ein plugin für munin?
Das wäre ideal, da ich Munin eh schon im Einsatz habe :)

Bertol
Beiträge: 8
Registriert: 21. Mär 2012, 14:11
Kontaktdaten:

Re: IP-Ban mit fail2ban werkzeug

Beitrag von Bertol » 24. Apr 2012, 13:15

/etc/munin/plugin-conf.d/blocklist2ban

Code: Alles auswählen

[blocklist2ban*]
user root
/usr/share/munin/plugins/blocklist2ban (symlink in /etc/munin/plugins legen oder direkt in /etc/munin/plugins ablegen)

Code: Alles auswählen

#!/bin/bash
: <<=cut

=head1 NAME

blocklist2ban - Plugin to monitor blocklist2ban blacklists

=head1 APPLICABLE SYSTEMS

All systems with "bash" and "blocklist2ban"

=head1 CONFIGURATION

The user running this plugin needs read and write access to the
blocklist2ban communications socket.  You will need to add this:

  [blocklist2ban]
  user root

=head1 INTERPRETATION

This plugin shows a graph with one line per active blocklist2ban chain, each
showing the number of blacklisted addresses for that chain.

In addition, a line with the total number of blacklisted addresses is
displayed.

=head1 MAGIC MARKERS

  #%# family=auto
  #%# capabilities=autoconf

=head1 VERSION

  0.0.1

=head1 BUGS

Needs bash. Uses bashisms ${parm/?/pat/string} and $'...' to avoid
running external programs.

=head1 AUTHOR

Alexander Bertol (http://www.bertol.de)

=head1 LICENSE

GPLv2

=cut


##############################
# Configurable variables


##############################
# Functions

# List chains, one on each line
list_chains() {
    /sbin/iptables -n -L | grep "blocklist2ban-" |cut -d " " -f 2 | grep -v ^$
}

# Print the munin values
values() {
    list_chains | while read chain
    do
        num=$(iptables -L ${chain} -n 2>/dev/null|grep -c "DROP")
        echo ${chain//[^0-9A-Za-z]/_}.value ${num}
    done
}

# Print the munin config
config() {
    echo 'graph_title Hosts blacklisted by blocklist'
    echo 'graph_info This graph shows the number of host blacklisted by blocklist'
    echo 'graph_category network'
    echo 'graph_vlabel Number of hosts'
    echo 'graph_args --base 1000 -l 0'
    echo 'graph_scale no'
#    echo 'graph_total total'

    list_chains | while read chain
    do
        echo ${chain//[^0-9A-Za-z]/_}.label ${chain//"blocklist2ban-"/}
    done
}

# Print autoconfiguration hint
autoconf() {
    echo "yes"
    exit
}

##############################
# Main

case $1 in
    config)
        config
        ;;
    autoconf)
        autoconf
        ;;
    *)
        values
        ;;
esac

Dan noch bitte chmod a+rx auf die Datei und einmal aufrufen ob alles läuft

Code: Alles auswählen

/usr/share/munin/plugins/blocklist2ban

blocklist2ban_apache.value 1798
blocklist2ban_bots.value 6752
blocklist2ban_ftp.value 18
blocklist2ban_imap.value 95
blocklist2ban_mail.value 9248
blocklist2ban_ssh.value 328
Und dann nicht vergessen munin neu durchzustarten (z.B. /etc/init.d/munin restart)

Noch ein Hinweis, es hat sich als gut erwiesen den cron [NACHTRAG] nicht der cron von munin, sondern der der die ip's von blocklist bezieht[/NACHTRAG] vor oder nach jeder vollendeten 10 Minuten zu starten! z.B. 5,15,25,35,45,55 * * * * /path/to/prog da der Server blocklist.de zu jeder vollen 10. Minute ein update der Liste durchführt :roll:

Dieses kann man auch für die Urspüngliche fail2ban regeln nutzen, wenn man mehrere 100 geblockte jails hat, da der fail2ban-client viezulange braucht und munin den prozess abbricht . Einfach alle blocklist2ban in fail2ban ändern
Zitat
"Zur Kriminalitätsbekämpfung sind auch ohne die pauschale und anlasslose Speicherung jeder Benutzung von Telefon, Handy, E-Mail und Internet genügend Verbindungsdaten verfügbar"
Bundesjustizministerium zur Vorratsdatenspeicherung

JustDanMan
Beiträge: 9
Registriert: 19. Apr 2012, 14:29

Re: IP-Ban mit fail2ban werkzeug

Beitrag von JustDanMan » 25. Apr 2012, 19:02

Danke, werde das Plugin am WE testen ;)

DAC534
Beiträge: 2
Registriert: 4. Mär 2014, 14:43

Re: IP-Ban mit fail2ban werkzeug

Beitrag von DAC534 » 4. Mär 2014, 14:59

Hallo zusammen
Mit diesem Code steht immer irgendein text in meiner All.txt und in der ipbans.txt ...

Code: Alles auswählen

    #!/bin/sh
    [ -e /etc/fail2ban/ipbans.txt ] || touch /etc/fail2ban/ipbans.txt
    [ -e /etc/fail2ban/all.txt ] || touch /etc/fail2ban/all.txt
    cp /etc/fail2ban/all.txt /etc/fail2ban/all2.txt && wget -q -O/etc/fail2ban/all.txt "https://api.blocklist.de/getlast.php?time=$(stat -c %Y /etc/fail2ban/all.txt)" && sort /etc/fail2ban/all.txt > /etc/fail2ban/all3.txt && mv /etc/fail2ban/all3.txt /etc/fail2ban/all.txt && diff  /etc/fail2ban/all.txt /etc/fail2ban/all2.txt | grep '^<' | sed -e 's/< //' > /etc/fail2ban/all3.txt && for ip in $(cat /etc/fail2ban/all3.txt); do echo $(date "+%b %d %T") $ip; done > /etc/fail2ban/ipbans.txt
Benutze ich aber diesen:

Code: Alles auswählen

wget "https://www.blocklist.de/lists/all.txt"
for ip in $(cat all.txt); do echo $(date "+%b %d %T") $ip; done > /etc/fail2ban/ipbans.txt
funktioniert das recht gut, aber dann sieht die ipbans.txt so aus:

Code: Alles auswählen

M¤r 04 14:45:34 1.0.xxx.194
Mƒ¤r 04 14:45:34 1.0.178.xxx
Mƒ¤r 04 14:45:34 1.0.xxx.196
Mƒ¤r 04 14:45:34 1.0.240.xxx
M¤r 04 14:45:34 1.1.xx.90
Mƒ¤r 04 14:45:34 1.1.221.xx
Mƒ¤r 04 14:45:34 1.10.xx.180
xx habe ich eingetragen ...

soll das Datum und die Uhrzeit da drin stehen ? Ich hoffe fail2ban erkennt das überhaupt.

LG
Marco

Antworten