Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| de:shibidp3fail2ban [2019/01/11 13:23] – [Config Shibboleth IdPv3] Wolfgang Pempe | de:shibidp3fail2ban [2020/04/16 09:38] (aktuell) – gelöscht Silke Meyer | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== Abwehr von Brute Force Attacken ====== | ||
| - | Da der IdP weltweit erreichbar ist, ist es einem Angreifer prinzipiell möglich Usernamen/ | ||
| - | |||
| - | Solche Angriffe können z.B. mithilfe des Tools ' | ||
| - | |||
| - | ==== Config Shibboleth IdPv3 ==== | ||
| - | |||
| - | Dazu muss das IdP-Logformat etwas angepasst werden. Siehe dazu die [[de: | ||
| - | Wiki]]! | ||
| - | |||
| - | ==== Config fail2ban ==== | ||
| - | |||
| - | <file ini / | ||
| - | [Definition] | ||
| - | |||
| - | failregex = IP\:< | ||
| - | IP\:< | ||
| - | ignoreregex = | ||
| - | </ | ||
| - | |||
| - | <file ini / | ||
| - | [idp] | ||
| - | |||
| - | enabled | ||
| - | port = http,https | ||
| - | filter | ||
| - | logpath | ||
| - | maxretry = 5 | ||
| - | </ | ||
| - | |||
| - | ===== Fail2ban über Apache ===== | ||
| - | |||
| - | Im Normalfall sperrt Fail2ban die user per iptables Regel auf IP-Ebene. D.h. der gesperrte User bekommt keine | ||
| - | Verbindung mehr zum IdP. Damit entfällt die Möglichkeit dem User eine Information zu geben warum er gesperrt ist | ||
| - | und was er machen kann um sich entsperren zu lassen. | ||
| - | |||
| - | Alternativ kann fail2ban daher auch eingesetzt werden um den gesperrten nicht per iptables abzuweisen sondern ihn auf eine Info-Webseite zu leiten. | ||
| - | |||
| - | Hier die Info eines DFN-AAI-Teilnehmers in Kurzform: | ||
| - | |||
| - | < | ||
| - | Also habe ich mich an folgende Anleitung gehalten: | ||
| - | https:// | ||
| - | |||
| - | Dabei werden alle Anfragen an den Apache auf eine fest definierte Seite | ||
| - | weitergeleitet, | ||
| - | Auf der Zielseite habe ich dann einfach einen kurzen Erläuterungs-Text | ||
| - | hinterlegt, der wie folgt aussieht: | ||
| - | |||
| - | > Anmeldung zu oft fehlgeschlagen. | ||
| - | > Sie wurden für 10 Minuten gesperrt. | ||
| - | > Bitte versuchen Sie es später erneut. | ||
| - | |||
| - | Die nötige Konfiguration im Apache sieht bei mir so aus: | ||
| - | |||
| - | > RewriteEngine on | ||
| - | > RewriteMap hosts-deny " | ||
| - | > RewriteCond " | ||
| - | > RewriteRule ^(.*)$ %{DOCUMENT_ROOT}/ | ||
| - | > | ||
| - | > < | ||
| - | > | ||
| - | > | ||
| - | > </ | ||
| - | |||
| - | Im fail2ban habe ich dann noch unter action.d eine eigene Datei | ||
| - | angelegt, die beschreibt wie im Falle eine IP-Adresse gebannt und wieder | ||
| - | freigegeben wird. | ||
| - | |||
| - | > actionban = printf %%b "< | ||
| - | > actionunban = sed -i "/ | ||
| - | > deny-config = / | ||
| - | </ | ||