Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung Nächste ÜberarbeitungBeide Seiten der Revision | ||
de:shibidp3fail2ban [2016/08/25 11:13] – Raoul Gunnar Borenius | de:shibidp3fail2ban [2017/03/24 16:32] – Raoul Gunnar Borenius | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ===== Abwehr von Brute Force Attacken ===== | + | ====== Abwehr von Brute Force Attacken |
Da der IdP weltweit erreichbar ist, ist es einem Angreifer prinzipiell möglich Usernamen/ | Da der IdP weltweit erreichbar ist, ist es einem Angreifer prinzipiell möglich Usernamen/ | ||
Zeile 7: | Zeile 7: | ||
==== Config Shibboleth IdPv3 ==== | ==== Config Shibboleth IdPv3 ==== | ||
- | Dazu muss das IdP-Logformat etwas angepasst werden: | + | Dazu muss das IdP-Logformat etwas angepasst werden. |
- | + | Wiki! | |
- | <file xml ./ | + | |
- | < | + | |
- | < | + | |
- | + | ||
- | < | + | |
- | < | + | |
- | < | + | |
- | </ | + | |
- | + | ||
- | <encoder class=" | + | |
- | < | + | |
- | < | + | |
- | </ | + | |
- | </ | + | |
- | </ | + | |
- | + | ||
- | Entscheidend dabei ist die Angabe " | + | |
==== Config fail2ban ==== | ==== Config fail2ban ==== | ||
Zeile 46: | Zeile 29: | ||
maxretry = 5 | 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 = / | ||
+ | </ |