Yan yana
Proxy SunucusuvsReverse Proxy
Proxy ile reverse proxy arasındaki fark nedir?
Güncellendi 2 dk okuma7 fark
Kısaca
Forward proxy istemcilerin önünde durur ve isteklerini internete iletir; reverse proxy ise sunucuların önünde durur ve gelen istekleri onlar adına karşılar.
Proxy Sunucusu
Proxy sunucusu, istemciler ya da sunucular adına ağ isteklerini alıp ileten aracı bir sunucudur; denetim, önbellekleme veya gizlilik sağlar.
Proxy Sunucusu sayfasını okuReverse Proxy
Reverse proxy, web sunucularının önünde durup istemci isteklerini onlar adına kabul eden ve her isteği doğru arka uç sunucuya ileten bir sunucudur.
Reverse Proxy sayfasını okuProxy Sunucusu ve Reverse Proxy karşılaştırması
| Özellik | Proxy Sunucusu | Reverse Proxy |
|---|---|---|
| Önünde durduğu | İstemciler | Sunucular |
| Kimin için çalışır | İstek yapan kullanıcılar | İstekleri karşılayan site ya da servis |
| Kim kurar | İstemci tarafı: tarayıcı, sistem ya da ağ ayarları | Sunucu tarafı: sitenin işletmecileri |
| Gizlediği | İstemcilerin adreslerini sunuculardan | Sunucuların adreslerini ve düzenini istemcilerden |
| Tipik işler | Filtreleme, indirmeleri önbelleğe alma, kayıt, gizlilik | HTTPS sonlandırma, yük dengeleme, önbellek, koruma |
| İstemciler görür mü? | Evet: istemciler onu kullanacak şekilde ayarlanır | Hayır: web sitesinin kendisi gibi görünür |
| Örnekler | Bir ofis web proxy'si, Squid | Bir uygulamanın önündeki NGINX, bir CDN, bir API gateway |
Fark, açıklamalı
İkisi de trafiği aktaran aracılardır ve aynı yazılım çoğu zaman iki rolü de üstlenebilir. Fark, kimin tarafında olduklarıdır. Genellikle yalnızca proxy denen forward proxy bir grup istemci için çalışır: bir ofis ya da okul, dışarı giden web trafiğini onun üzerinden gönderir. Reverse proxy ise bir grup sunucu için çalışır: internetten bir web sitesine gelen her istek önce ona ulaşır.
Forward proxy, dış dünyanın istemciler yerine gördüğü şeydir. İnsanların hangi sitelere girebileceğini filtreleyebilir, popüler indirmeleri önbelleğe alabilir, trafiği kaydedebilir ve istemcilerin adreslerini gizleyebilir. İstemciler genellikle tarayıcı ya da sistem ayarlarıyla onu kullanacak şekilde ayarlanır ya da ağ, onlar bilse de bilmese de trafiği onun üzerinden geçirir.
Reverse proxy ise istemcilerin sunucular yerine gördüğü şeydir. HTTPS'i sonlandırır, istekleri birkaç backend sunucusuna dağıtır, yanıtları önbelleğe alır ve sıkıştırır, kötüye kullanan istemcileri sınırlar ve sistemin iç düzenini gizler. İstemciler onun varlığını bilmez: onlar için o, web sitesinin kendisidir. Yük dengeleyiciler, API gateway'ler ve CDN'ler özelleşmiş reverse proxy'lerdir.
Akılda tutmanın bir yolu: forward proxy sizin adınıza arama yapan bir asistana benzer, aranan kişiler yalnızca asistanın numarasını görür; reverse proxy ise her aramayı karşılayıp doğru departmana bağlayan bir şirket santraline benzer, arayanlar içerideki dahili numaraları hiç görmez.
Hangisini kullanmalısınız?
Proxy Sunucusu şu durumlarda doğru seçim:
- Bir ağın kullanıcılarının internette nelere eriştiğini denetlemeniz ya da kaydetmeniz gerekiyor.
- İstemciler dış servislere bilinen tek bir adres üzerinden ulaşmalı.
- Aynı ağdaki pek çok kullanıcının paylaştığı indirmeleri önbelleğe almak istiyorsunuz.
Reverse Proxy şu durumlarda doğru seçim:
- Bir web sitesi ya da API işletiyorsunuz ve birkaç sunucunun önünde tek bir giriş noktası istiyorsunuz.
- Kendi servisiniz için HTTPS sonlandırma, yük dengeleme ya da önbelleğe ihtiyacınız var.
- İç sunucuları gizlemek ve doğrudan trafiği onlardan uzak tutmak istiyorsunuz.
Forward proxy kullanan bir istemci ve bir uygulamanın önündeki reverse proxy
# Forward proxy: the client is told to send its traffic through it
export HTTPS_PROXY=http://proxy.office.example:3128
curl https://example.com
# curl asks the proxy, which connects to example.com for it# Reverse proxy: the site puts it in front of the app (NGINX)
server {
listen 443 ssl;
server_name shop.example.com;
location / {
proxy_pass http://app_servers; # pass the request to the backend pool
}
}Sık sorulan sorular
VPN bir tür proxy mi?
Tam olarak değil. VPN bir cihazın bütün trafiğini ağ düzeyinde ve şifreli olarak tünelden geçirir; proxy ise genellikle tarayıcınınki gibi tek bir uygulamanın trafiğini ele alır. İkisi de adresinizi ziyaret ettiğiniz sitelerden gizler.
Yük dengeleyici bir reverse proxy mi?
Çoğu öyledir. HTTP ile çalışan bir yük dengeleyici, asıl işi istekleri sunuculara dağıtmak olan bir reverse proxy'dir; bir reverse proxy ise bunu pek çok başka işle birlikte yapabilir.
Tek bir sunucu ikisi birden olabilir mi?
Evet. NGINX gibi bir yazılım bir amaç için forward proxy, başka bir amaç için reverse proxy olarak çalışabilir; ama pratikte iki rol genellikle ayrı ayrı işletilir.