wall < "fail2ban-Benachrichtigungen mit Prowl"

Broadcast message from spillerm@unixe.de (pts/1) (Di Feb 03 11:33:21 2015):
4
Diesen Beitrag schrieb ich vor 4 Jahren. Behalte das beim Lesen bitte im Hinterkopf.

Screen Shot 2015-02-03 at 10.14.39 Ursprünglich hatte ich einen Rootie: ich hostete meine Webseiten, machte Mailserver-Dinge und spielte mit OpenLDAP. Doch dann wurde die Maschine Teil eines Botnets, und ich hatte nach der Geburt des ersten Kindes plötzlich nicht mehr die benötigte Zeit, mich um das Setup ordentlich zu kümmern. Zudem war die Hardware schon mehrere Jahre alt, ein Umzug hätte angestanden… Ich entschied mich damals schweren Herzens für die Kündigung des Servers und zog mit meinen Daten zu einem Hoster um.

Aber wirklich warm wurde ich damit nie. Ich bin es gewohnt, root zu sein, und das FTP-Korsett war mir zu eng. Die Anbindung an die Datenbank brach öfter mal zusammen, was laut Webhoster an der miesen Implementierung von WordPress läge. Und auch sonst war die Performance ziemlich unterirdisch — was laut Webhoster an der miesen Performance von WordPress-Plugins lag.

Vergangene Woche überredete mich das Partnerdings zu einem VPS — ich könne es ja ausprobieren, er sei monatlich kündbar. Ich war zuerst skeptisch, aber hey — was kann man für 2,40EUR pro Monat schon falsch machen? Ubuntu drauf und go.

IMG_5767Bei der Gelegenheit transportierte ich alle WordPress-Tabellen von MyISAM zu InnoDB. Dann optimierte ich das grundsätzliche Caching der Datenbank und schaltete schliesslich einen varnish vor. Parallel dazu liess in sendmail, cyrus-imapd und DSPAM anlaufen. In gewisser Weise macht mich die Mutterschaft zu einem deutlich besseren Admin: die Zeit, die ich am Rechner verbringen kann, ist sehr begrenzt, und statt Trial-and-Error plane ich nun ein Setup, während ich Windeln wechsle, Kartoffeln schäle oder Badewanne putze — und hacke es dann, wenn sich die Gelegenheit bietet, innerhalb einer Dreiviertelstunde runter :D

Ohne fail2ban möchte ich keinen Server betreiben, und da ich Prowl ohnehin schon nutze hielt ich es für eine gute Idee, beide zu verheiraten. Dazu musste ich lediglich einen API-Key generieren, eine /etc/fail2ban/action.d/prowl.conf erstellen, die /etc/fail2ban/jail.conf anpassen und dem Dienst einen Tritt geben. Eventuelle Fehler — wie immer — in /var/log/fail2ban.log. Have fun!

/etc/fail2ban/action.d/prowl.conf

[Definition]
 
actionstart = wget 'https://prowlapp.com/publicapi/add?apikey=<prowlapikey>&application=<prowlapp>&event=<prowlsender>&description=starting&priority=<prowlprio>' -o /dev/null --no-check-certificate -O /dev/null
 
actionstop = wget 'https://prowlapp.com/publicapi/add?apikey=<prowlapikey>&application=<prowlapp>&event=<prowlsender>&description=stopping&priority=<prowlprio>' -o /dev/null --no-check-certificate -O /dev/null
 
actioncheck =
 
actionban = wget 'https://prowlapp.com/publicapi/add?apikey=<prowlapikey>&application=<prowlapp>&event=<prowlsender>&description="jail <name> banned <ip> after <failures> failures"&priority=<prowlprio>' -o /dev/null --no-check-certificate -O /dev/null
 
actionunban =
 
[Init]
name = default
prowlsender = fail2ban
prowlprio = 1
prowlapp = $YOUR_API_APP
prowlapikey = $YOUR_API_KEY

/etc/fail2ban/jail.conf

action_ = %(banaction)s[name=%(__name__)s, port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"]
        prowl[name=%(__name__)s]
4
  1. Marianne Spiller

    Och, im Moment hält es sich in Grenzen, und wer zu penetrant nervt fliegt generell in eine DROP-Regel ;) Port umbiegen funktioniert nicht in allen Umgebungen, und diese kleinen Push-Benachrichtigungen sind mir lieber als einzelne Mails :D

  2. Karsten G.

    jungejunge, als mein ssh noch auf standardport lief, hätte mir so eine fail2ban notification alle 2h das Handy zugemüllt :Ddeswegen hab ich mich einfach drauf verlassen, dass er in Ruhe im Hintergrund die Leute aussperrt. Bin dann auf nen anderen Port umgezogen und schon herrschte himmlische Ruhe.

Keine weitere Reaktionen mehr möglich.