Zugang zu Apache nur fuer bestimmte Proxy Server erlauben

Auf einem meiner Webserver auf der Arbeit liegen diverse “Angebote”, die nur fuer ausgewaehlte User zugaenglich sein sollen. Auf VPN und Zertifikate habe ich nicht so viel Lust (Aufwand und Verwaltung etc.), sondern beschraenke den Zugriff halt auf die Proxy Server der Leute / Kollegen (auch aus anderen Systemhauesern), die darauf zugreifen wollen / sollen.

Ich habe mittlerweile an die 12 Proxy Server fuer 5 Diverse Bereiche (Directory / Location) zu verwalten, die ich dann direkt oder per Regex in die Allow Direktive packe. Schoen finde ich das nicht und deswegen habe ich mir die SetEnvIf Direktive angeschaut …

Das ganze funktioniert dann so:

apache2.conf:

...
SetEnvIf Remote_Addr 123.45.6.78.9? PROXY_A
SetEnvIf Remote_Addr 132.54.67|89.12[5-7] PROXY_B
SetEnvIf Remote_Addr 222.111.333.44|55 PROXY_C
...
# Meine Geheimnisse (nur ueber Proxy A)

AllowOverride None
Order deny,allow
Deny from all
# Erlaube Proxy Server
Allow from env=PROXY_A

...
# Meine nicht ganz so geheimen Geheimnisse (fuer Proxy A, B und C)

AllowOverride None
Order deny,allow
Deny from all
# Erlaube Proxy Server
Allow from env=PROXY_A env=PROXY_B env=PROXY_C

...

Mit SetEnvIf wird in Abhaengigkeit der Remote_Addr des Clients eine Umgebungsvariable gesetzt. Wenn diese dann gesetzt ist, wird dem Client mit Allow der Zugang erlaubt.

Somit darf man nur rein, wenn man ueber einen dieser Proxy kommt. Wie sicher das ganze ist, weiss ich nicht, aber dahinter geht es mit https und htaccess weiter … mein Ziel war es, nicht bei Google und Co. zu landen und zufaelligen Surfern aus dem Weg zu gehen.

Diesen Zugang auszuhebeln waere vlt. mal eine Demonstration wert ;-)
Ich stelle dann gerne eine neu vorbereitete Testumgebung zur Verfuegung.

Veröffentlicht unter Tipps & Tricks Getagged mit: , ,

Die LUGMOE

Die "Linux User Group Mönchengladbach" (LUGMOE) ist ein Zusammenschluss von begeisterten Linux und Anwendern Freier Software aus den Kreisen Mönchengladbach, Viersen und Umgebung. In der Linux User Group sind sowohl Linux Anfänger als auch erfahrene Linux Anwender sowie Administratoren anzutreffen.

Mehr erfahren »

Was ist Linux?

"Linux ist ein Betriebssystem, also ein Programm, das beim Start des Computers geladen wird und es erst ermöglicht, dass andere Programme laufen können." Die wichtigste Eigenschaft von Linux und dessen Komponenten ist, dass es frei ist. Es müssen keine Lizenzen erworben werden, gleichgültig für welchen Einsatzzweck. Daher ist es normalerweise viel günstiger als andere Betriebssysteme. Und die Freiheit geht noch weiter.

Mehr erfahren »

Mitglieder-Blogs