Globales Apache IP-Banning in virtual Domains aufheben

testit

Well-Known Member
Hallo,

um Zugriffe von IP-Adressen einiger Länder sowie ganz bestimmter IP-Ranges auf meinen Apache Webserver zu blocken, nutze ich diverse IP-Spam-Listen, die ich global erst einmal zu Beginn der httpd.conf für /www/htdocs angebe.

Allerdings frage ich mich, wie ich für spezielle virtuelle Domains in deren <Directory>-Segment die globalen DENY-Anweisungen aufheben kann?

Folgendes funktioniert bei mir nicht! Der Zugriff auf "meinedomain" bleibt geblocked für IP1.

Weiß jemand, was ich falsch mache?

Code:
<Directory /usr/local/www/htdocs>
Order allow,deny
Allow from all

deny from IP1
deny from IP2
deny from IP3
...

<Directory /usr/local/www/apache22/data/meinedomain>
AllowOverride None
Order deny,allow
Allow from IP1
</Directory>
</htdocs>

Danke und viele Grüße
testit
 
Hi,

/usr/local/www/apache22/data/meinedomain liegt nicht unterhalb /usr/local/www/htdocs, also können die Regeln aus dem ersten <Directory>-Container eigentlich gar nicht im letzten <Directory>-Container greifen.

Rob
 
Hi Rob,

dann würde mich mal interessieren, was auf DEINEM FreeBSD-Server für ein Pfad herauskommt, wenn Du
cd /usr/local/www/htdocs
und anschließend
pwd
ausführst.

Bei mir seit Jahren
/usr/local/www/apache22/data


Viele Grüße
testit
 
Achso, noch ein Auszug aus der Doku:
Directives applied to a particular <Directory> will not apply to files accessed from that same directory via a different path, such as via different symbolic links.

Versuch doch mal, bei beiden <Directory>-Containern den gleichen Basispfad zu benutzen.

Rob
 
Hallo Rob,

danke, das werde ich probieren.

Trotzdem wäre ich Dir dankbar, wenn Du mal schauen könntest, ob und welcher absolute Pfad bei Dir herauskommt, wenn Du cd /usr/local/www/htdocs ausführst.
Denn ich kann mir momentan nicht erklären, wieso das bei mir auf /usr/local/www/apache22/data zeigt, obgleich ICH das zu keinem Zeitpunkt als Symlink angelegt habe und stets davon ausgegangen bin, dass das bei der Installation des Apache angelegt worden war.

EDIT: Sorry, habe zu spät gemerkt, dass beide vorstehenden Postings von Dir waren.

Danke und Gruß
testit
 
Hallo Rob,

der von Dir zitierte Auszug aus der Doku brachte die Lösung!

Vielen Dank nochmals
und
viele Grüße

testit
 
Zurück
Oben