Apache: Blockliste per .htaccess

GwenDragon

Registered User
Besteht die Möglichkeit per .htaccess und RewriteCond aus einer Textdatei auszuklesende IPs, Ranges und User-Agents (teilweise Strings oder Regexes)?zu blockieren?
Warum? Nutzer will das selbst pflegen und darf den Server nicht neustarten/-laden. Und er beherrscht eben nicht die Apache mod_rewrite....syntax.

Im VHost-Kontext ginge das ja ähnlich wie
Code:
RewriteMap blockua "txt:/var/www/vhosts/example.tld/conf/uablock.txt"
RewriteCond %{HTTP_USER_AGENT} "${blockua:$1}"
RewriteRule ^.* - [F,L]

Geht aber nicht in einer .htaccess laut Apache-Manual.

Eine Idee einer Lösung mit einer Datei?

PS: mir ist klar, dass .htaccess nicht sher performant ist, aber hier geht es auch nicht um eine Webanwendung, die Tausende Request/s bekommt.
 
Da lässt sich sicher etwas per mod_lua basteln, sinnvoll oder gar sicher (im Sinne von Security) ist das Ganze aber ganz sicher nicht...

Eventuell kann man auch mod_security dazu missbrauchen, ist aber ebenfalls weder sinnvoll noch sicher...


Ein Fehler und der Kunde beziehungsweise $Request ist als httpd-User oder gar root auf dem System unterwegs...
 
Nee, mod_security rules pflegen? Nee, kann der nicht. Und mit mod_lua möchte ich nicht arbeiten müssen bei dem Projekt.

Na, ok, dann muss ich dem wohl nahelegen, dass er eben sich auf eine RewriteCond-orgie einlassen muss, wenn er da böse Angreifer abwehren will.
Lach, oder er setzt einen PHP/CGI/etc...-Wrapper ein, der alle Requests annimmt und den UA prüft und dann abweist. Aber das ist auch nicht KISS.

Mal sehen wie das dann ankommt bei dem Nutzer. Ich halte dem schon eine Packung Tempo bereit. ;-)

¯\_(ツ)_/¯

Thema ist erst mal auf Eis gelegt.
 
WOW, soetwas ineffizientes, ressourcenfressendes, veraltetes und mit false-positives gespicktes Etwas habe ich schon länger nicht mehr gesehen...

Dann lieber mod_security mit aufgeblähtem Ruleset...
 
Danke füer den Vorschlag, deswegen eine gestrige Zustimmung, ABER (ein ganz Großes!) … ich habe mir mal apache-ultimate-bad-bot-blocker angesehen, ist doch sinnlos, wer soll sowas auf Korrektheit prüfen wollen, und ineffizient ist es auch. Passt also nicht.

//EDIT: Browser-Antwort gestern offen gelassen, und heute wieder ins Netz gegenagen, konnte nicht sehen, dass der Nutzer gelöscht wurde. Meine Antwort also nutzlos :-(
 
Last edited:
//EDIT: Browser-Antwort gestern offen gelassen, und heute wieder ins Netz gegenagen, konnte nicht sehen, dass der Nutzer gelöscht wurde. Meine Antwort also nutzlos :-(
OT: Gelöscht werden wollte. Nur der Vollständigkeit halber ;).
 
Back
Top