Apache sunucumun açık bir proxy olup olmadığını nasıl test edebilirim?


11

Bir sunucunun açık proxy olarak hareket edip etmediğini doğrulayacak bir kıvırma komutu var mı?

denedim

curl --proxy http://<my server>:80 http://yahoo.com

Ancak apache'nin yanıtı:

Description: Could not process this "GET" request.

10
Bunu yapmalı. Bu yanıt, zaten o bağlantı noktasında bir proxy gibi davranmadığı anlamına gelir. Olsaydı, Yahoo'nun sayfasını (veya proxy kimlik doğrulamasını veya başka bir proxy yanıtı) almış olmalısınız.
squillman

Ayrıca bir https sitesine proxy göndermeyi denemelisiniz, http / https farklı şekilde uygulanır. Kullandığım apache proxy'leri bu btw gibi çalışmıyor, uzak (proxy) sunucu bir yerde bir yapılandırmada belirtildi. Rastgele bir sunucudaki bir sayfanın ana sitenizde veya başka bir şeyde görünmesini istediğinizde olduğu gibidir.
Bazı Linux Nerd

curl --proxy http: // <sunucunuz>: 80 https: //mail.google.com # <--- https
Bazı Linux Nerd

Yukarıda önerilen testlerin yanı sıra, yapılandırmanızı kontrol edebilirsiniz. Apache'yi ileri proxy olarak yapılandırmak için "ProxyRequests On" (varsayılan olarak kapalı) gerekir. Yalnızca genel (Sunucu) veya sanal ana makine düzeyinde etkinleştirilebilir, bu nedenle htaccess dosyalarını aramanıza gerek yoktur.
İnanılmaz

Yanıtlar:



1

Basit yanıt şudur, eğer ProxyRequests Onyapılandırmanızda bir yerde (varsayılanı kapalı) varsa, açık bir proxy çalıştırıyor olabilirsiniz, eğer değilseniz, en azından şeylerin Apache yapılandırma tarafından.

200 OKİlerleme proxy isteklerine benzeyen istekler için erişim günlüğünüzde hala girişler alıyorsanız, bunun nedeni , neye benzediğine bakılmaksızın, herhangi bir isteği bir denetleyiciye eşleyen catchall yeniden yazmalarına sahip olmanızdır . Endişeleniyorsanız bunu önlemek için muhtemelen koşullar ekleyebilirsiniz.

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.