Apache, izin vermek için X-Forwarded-For kullanın


13

HTTP sorgusuna izin vermek için X-Forwarded-For üstbilgilerini (proxy proxy 10.1.1.x) nasıl kullanabilirim?

Yanıtlar:


23

SetEnvIf ve Allow izinlerini kullanabilirsiniz:

    <Location "/only_proxy/">
            SetEnvIf X-Forwarded-For ^10\.1\.1\. proxy_env
            Order allow,deny
            Satisfy Any
            Allow from env=proxy_env
    </Location>

1
X-Forwarded-For üstbilgisini takmanın gerçekten kolay olduğunu unutmayın.
Olli

Ayrıca kendinizi dövülmüş X-Forwarded-For başlıklarından korumak da oldukça kolaydır (bu başlığı ortamınıza giriş noktalarından çıkararak).
larsks

1
sahte x iletilen başlıklara karşı nasıl korunacağınız hakkında bilgi ararken bu yazıyı buldunuz, ilgili bir dokümanı işaret eder misiniz?
Pete

2

Apache'nin X-Forwarded-For IP'sini istemci IP'si olarak işlemesini sağlamak için mod_rpaf kullanabilirsiniz .


7
Google'dan yolunu bulanlar için: bunun mod_rpafyalnızca günlüklerinizi kullanışlı hale getirebileceğini unutmayın; erişim kontrolü kararlarında kullanılan adresi etkilemez. Ayrıca Apache 2.4'te, mod_rpafişlevin doğal olarak mod_remoteip tarafından sağlandığını unutmayın .
larsks

1
@larsks: Bu doğru değil. Denedim ve benim için çalıştı!
confiq

2

403 yanıtına yeniden yönlendirmek için bir yeniden yazma kuralı yazabilirsiniz.

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-For} !(1.1.1.1|2.2.2.2)
RewriteRule .* - [F]
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.