Automatycznie modyfikuj iptables na podstawie danych dziennika Apache, aby blokować źle wychowanych klientów

14

Czy w systemie Linux jest jakieś narzędzie do automatycznej modyfikacji iptables w celu zablokowania kłopotliwego klienta na podstawie analizy dziennika Apache? Pomagam prowadzić witrynę, która czasami jest przytłoczona żądaniami określonego użytkownika. Jedynym rozwiązaniem jest dodanie wpisu w iptables, aby zablokować naruszającego klienta. Zwykle jest za późno, zanim mogę zareagować ręcznie - dlatego chciałbym, aby jakiś mechanizm oparty na regułach modyfikował iptables. Sądzę, że konieczna byłaby jakaś niewyraźna logika lub analiza statystyczna.

Rangachari Anand
źródło

Odpowiedzi:

10

Możesz użyć czegoś takiego jak fail2ban , który IIRC ma wbudowany moduł sprawdzania dziennika Apache.

Glen Solsberry
źródło
fail2ban jest bardzo blisko robienia tego, co chcę. Wygląda na to, że będę musiał trochę przekopać źródło.
Rangachari Anand
4

Możesz rozważyć użycie iptables do ograniczenia połączeń przychodzących. Co w najbardziej podstawowym ustawieniu daje możliwość ograniczenia połączeń przychodzących do liczby na minutę.

Na przykład możesz zezwolić tylko na 10 pingów na minutę z jednego adresu IP. Robi się to trochę bardziej wyrafinowane, z opcją ustawiania limitów serii powyżej średnich długoterminowych limitów.

Kilka dobrych instrukcji dotyczących konfiguracji http://kevin.vanzonneveld.net/techblog/article/block_brute_force_attacks_with_iptables/

Guy C.
źródło
Doskonale - nie miałem pojęcia, że ​​iptables może to zrobić. To może być bardzo przydatne.
Rangachari Anand
Wykopię doskonały przewodnik, który ostatnio czytałem
Guy C
2

Sprawdź OSSEC . Najlepszy analizator plików dziennika, z którego korzystałem. Obsługuje również aktywną odpowiedź na podstawie analizy.

GNUix
źródło