Jak mogę trwale zablokować dowolny ipaddress, który uzyskuje dostęp do znanych podatnych stron, takich jak /phpMyadmin/
? Korzystam z serwera Debian i często widzę boty lub hakerów skanujących mój serwer w poszukiwaniu luk.
73.199.136.112 - - [16/Oct/2017:05:18:05 -0700] "HEAD /phpMyadmin/ HTTP/1.0" 404 182 "-" "Mozilla/5.0 Jorgee"
73.199.136.112 - - [16/Oct/2017:05:18:05 -0700] "HEAD /phpMyAdmin/ HTTP/1.0" 404 182 "-" "Mozilla/5.0 Jorgee"
73.199.136.112 - - [16/Oct/2017:05:18:05 -0700] "HEAD /phpmyAdmin/ HTTP/1.0" 404 182 "-" "Mozilla/5.0 Jorgee"
73.199.136.112 - - [16/Oct/2017:05:18:05 -0700] "HEAD /phpmyadmin2/ HTTP/1.0" 404 182 "-" "Mozilla/5.0 Jorgee"
73.199.136.112 - - [16/Oct/2017:05:18:05 -0700] "HEAD /phpmyadmin3/ HTTP/1.0" 404 182 "-" "Mozilla/5.0 Jorgee"
73.199.136.112 - - [16/Oct/2017:05:18:05 -0700] "HEAD /phpmyadmin4/ HTTP/1.0" 404 182 "-" "Mozilla/5.0 Jorgee"
Podążyłem już za tym pytaniem dotyczącym przepełnienia stosu : Jak zabezpieczyć phpMyAdmin .
Chcę zacząć blokować boty przed zajmowaniem pasma.
404
oznacza kod HTTPPage not found
. Jak czujesz, że te adresy IP naruszają adresy IP? Na podstawie jakiego wyjścia zdecydujesz się zablokować te adresy IP?.htpasswd
Odpowiedzi:
Może to być większy ciężar niż szukasz, ale możesz rozważyć użycie fail2ban ( https://www.fail2ban.org ). To narzędzie może monitorować pliki dziennika i automatycznie blokować adresy generujące dzienniki pasujące do zestawu konfigurowalnych wzorców.
źródło
fail2ban
ma rozwiązać. Jest trochę ciężki, ale z drugiej strony pożądane kryteria są dość dynamiczne. Wszystkie rozważane kwestiefail2ban
są tak lekkie, jak to możliwe, próbując rozwiązać tę klasę problemów za pomocą standardowego narzędzia.Nie rób W najlepszym razie nie osiągniesz nic poza zmniejszeniem bałaganu; w najgorszym wypadku skończysz blokować legalnych gości, którym zdarzyło się uzyskać (za pośrednictwem DHCP) adres IP, który kiedyś należał do osoby, której komputer został zainfekowany jako węzeł botnetu.
Prawdziwym problemem jest bałagan w logach, który można rozwiązać, konfigurując rejestrowanie w celu usunięcia żądań, o których wiadomo, że skanowanie w poszukiwaniu wulgary nie ma i nie będzie, ponieważ witryna nie jest narażona na ataki struktury, które skanują. Jeśli martwisz się całkowitą utratą rejestrowania (być może dostarczają dowodów sugerujących, kto był odpowiedzialny za inny atak, lub kiedy atak się rozpoczął, itp.), Po prostu dławienie wielu wpisów dziennika dla śmieciowych adresów URL z danego adresu IP w krótkim czasie powinien działać lepiej.
źródło
fail2ban
zakazy są tymczasowe - X trafień przy złej próbie zalogowania się w ciągu Y sekund, Z minutowy ban, z konfigurowalnymi XY i Z. Upuszczanie dzienników aktywnych prób włamań brzmi dla mnie jak znacznie bardziej niebezpieczny wybór./phymyadmin/
ponieważ/phymyadmin/
nie istnieje na serwerze (patrz: 404). Raczej uprawnieni użytkownicy, o których mowa, to użytkownicy witryny, którzy zostali zablokowani przez zaporę ogniową.znajdź
deny 73.199.136.112
plik phpMyAdmin.conf w jednym z katalogów konfiguracyjnych httpd i dodaj sekcję zezwól / odrzuć w pliku konfiguracyjnym oraz wymagany adres IP w sekcji 2.4. Poniżej umieściłem przykład pełnego pliku konfiguracyjnego, w którym mam wpisy w odwrotnej kolejności, blokuję wszystko oprócz dozwolonych segmentów IP, aby uzyskać dostęp do narzędzia.źródło
Alias /phpmyadmin /usr/share/phpMyAdmind
/phpmyadmin
należy zmienić na coś innego ze względów bezpieczeństwa.Alias /secret /usr/share/phpMyAdmind