squid proxy

Squid proxy, Linux’te en yaygın kullanılan açık kaynaklı proxy sunucularından biridir ve bunun iyi nedenleri vardır: hızlı, kararlı ve sahip olduğunuz ağda önbellekleme ile erişim kontrolü konusunda son derece etkilidir. Bu rehber Squid’in ne yaptığını, nasıl kurulup yapılandırılacağını, kimlik doğrulamanın nasıl ekleneceğini ve sınırlarının neler olduğunu açıklar.

Ayrıca birçok ekibin daha sonra karşılaştığı şu dürüst soruyu da ele alır: Kendi barındırdığınız Squid proxy ne zaman doğru araçtır ve ne zaman bunun yerine gerçekten dönüşümlü residential IP’lerden oluşan bir havuza ihtiyaç duyarsınız?

DataImpulse, 195 ülkede 90 milyondan fazla residential, mobile ve datacenter IP adresi sunan etik bir proxy sağlayıcısıdır. Süresi dolmayan trafikle GB başına 1 dolardan başlayan kullandıkça öde modeli kullanır; web scraping, reklam doğrulama, fiyat takibi, pazar araştırması ve çoklu hesap yönetimi için kullanılır.

Temel Bilgiler

  • Squid proxy: Squid, IP döndürmek için değil, önbellekleme ve erişim kontrolü amacıyla kendi sunucunuzda çalıştırdığınız HTTP ve HTTPS için açık kaynaklı, önbellekli bir forward proxy’dir.
  • En iyi proxy türü: bot tespitini aşan gerçek tüketici IP’lerini kullanan dönüşümlü residential proxy’ler.
  • Fiyat: GB başına 1 dolardan başlayan, kullandıkça öde; süresi dolmayan trafik ve abonelik yoktur.
  • Kapsam: 195 ülkede etik yöntemlerle tedarik edilmiş 90M’den fazla IP.
  • Güvenilirlik: %99,51 başarı oranı, G2’de 5 üzerinden 4,8 puan.
  • Protokoller ve hedefleme: Ülke hedefleme dahil HTTP, HTTPS ve SOCKS5.

Squid proxy nedir?

Squid proxy, istemci makineler ile internet arasında yer alan ve onların HTTP ile HTTPS isteklerini ileten, açık kaynaklı, önbellekli bir forward proxy sunucusudur. GNU GPL kapsamında yayımlanan ücretsiz bir yazılımdır ve çoğunlukla Linux ile diğer Unix benzeri sistemlerde çalışır.

Forward proxy olarak Squid, ağınız içindeki istemcilerden istekleri alır, içeriği kaynak sunucudan getirir ve istemciye geri döndürür. Bu süreçte yanıtları önbelleğe alabilir, erişim kuralları uygulayabilir ve trafiği kaydedebilir. Squid; HTTP, HTTPS ve FTP’yi destekler; okullarda, ofislerde ve internet servis sağlayıcılarında proxy katmanı olarak yaygın biçimde kullanılır. Kendiniz barındırdığınız için her istek yine Squid’i çalıştıran sunucunun genel IP adresi üzerinden çıkar.

Squid proxy ne için kullanılır?

Squid esas olarak yerel ağ veya kurumsal ortam içinde önbellekleme, bant genişliği tasarrufu, erişim kontrolü, içerik filtreleme ve trafik kaydı için kullanılır. Anonimlik hizmeti değil, bir ağ yönetimi aracıdır.

  • Önbellekleme ve bant genişliği tasarrufu: Squid, sık istenen nesnelerin kopyalarını saklar; böylece yinelenen istekler internet üzerinden yeniden getirilmek yerine yerel diskten veya bellekten sunulur. Çok sayıda kullanıcının aynı kaynaklara eriştiği ağlarda bu, bant genişliği kullanımını azaltır ve yanıt sürelerini hızlandırır.
  • Erişim kontrolü ve filtreleme: Yöneticiler, erişim kontrol listelerini (ACL’ler) kullanarak istemci IP’sine, hedef alan adına, porta, günün saatine veya kullanıcı kimliğine göre trafiğe izin verebilir ya da trafiği engelleyebilir. Kuruluşlar belirli siteleri bu şekilde engeller veya taramayı onaylı hedeflerle sınırlar.
  • Kayıt ve izleme: Squid; denetim, sorun giderme ve raporlama için yararlı olan ayrıntılı erişim günlükleri yazar.

Squid proxy nasıl kurulur?

Squid proxy kurmak için paketi bir Linux sunucusuna yüklersiniz, dinleme portunu ve erişim kurallarını tanımlamak üzere /etc/squid/squid.conf dosyasını düzenlersiniz, ardından hizmeti yeniden başlatırsınız. Varsayılan dinleme portu 3128’dir.

Debian veya Ubuntu’da sudo apt update && sudo apt install squid ile kurun. RHEL, Rocky veya AlmaLinux’ta sudo dnf install squid kullanın. Ana yapılandırma dosyası /etc/squid/squid.conf konumundadır. Yerel bir ağı tanımlayan, buna izin veren ve varsayılan portu dinleyen asgari yapılandırma şöyledir:

# /etc/squid/squid.conf (minimal)
http_port 3128

# Define which clients may use the proxy
acl localnet src 192.168.1.0/24

# Allow the local network, deny everything else
http_access allow localnet
http_access deny all

# Where to store logs
access_log /var/log/squid/access.log

Dosyayı düzenledikten sonra squid -k parse ile söz dizimini doğrulayın, sonra hizmeti yeniden başlatarak uygulayın: sudo systemctl restart squid. Trafiği proxy üzerinden yönlendirmek için bir istemci tarayıcıyı veya komut satırı aracını 3128 portunda sunucu IP’sine yönlendirin. http_access deny all satırını en sonda tutun; çünkü Squid kuralları sırayla değerlendirir ve üstte açıkça izin verilmemiş her şeyi reddeder.

Squid’e kimlik doğrulama nasıl eklenir?

Kimlik doğrulamayı squid.conf içinde, en yaygın olarak parola dosyasıyla desteklenen HTTP Basic auth olmak üzere bir kimlik doğrulama yardımcısı yapılandırarak eklersiniz. Bu, proxy isteklerini iletmeden önce kullanıcıların kullanıcı adı ve parola sağlamasını zorunlu kılar.

Tipik yaklaşım, basic_ncsa_auth yardımcısını htpasswd tarzı bir dosyayla kullanır. Dosyayı htpasswd gibi bir araçla oluşturur, sonra squid.conf içinde auth_param basic bloğuyla yardımcının başvurusunu yapar; acl authenticated proxy_auth REQUIRED gibi bir ACL ve ardından http_access allow authenticated eklersiniz. Basic auth, her istekle kimlik bilgilerini gönderir; bu yüzden parolaların açığa çıkmasını önlemek için yalnızca güvenilir ağlarda veya HTTPS ile birlikte kullanılmalıdır. Squid ayrıca kurumsal dizin entegrasyonu için digest, NTLM ve Kerberos gibi daha güçlü şemaları da destekler.

Kendi Squid proxy’nizi çalıştırmanın sınırlamaları nelerdir?

Ana sınırlama, Squid proxy’nin tüm trafiği, onu barındırdığınız sunucunun tek genel IP’si üzerinden yönlendirmesidir. IP döndürme, residential güvenilirliği veya coğrafi çıkış noktalarından oluşan bir havuz yoktur ve tüm bakımı kendiniz üstlenirsiniz.

Dahili önbellekleme ve erişim kontrolü için bu sorun değildir; ancak Squid’i korunan dış sitelere karşı kullanmaya çalıştığınız anda problem hâline gelir:

  • Tek statik IP: Her istek aynı adresten çıkar. Yoğun trafikli siteler hacmi görür, bunu işaretler ve bu IP’yi hızla hız sınırına tabi tutar veya engeller.
  • Datacenter kaynağı: Squid bir bulut veya barındırma sunucusunda çalışıyorsa IP’si datacenter IP’sidir. Bot karşıtı sistemler datacenter aralıklarına ev kullanıcısı bağlantılarından daha şüpheyle yaklaşır. datacenter proxy’lerin residential olanlardan nasıl ayrıldığını inceleyin.
  • Coğrafi havuz yok: Squid, başka bir ülkedeki veya şehirdeki kullanıcı gibi görünebilemez. Sunucunun fiziksel olarak bulunduğu yere bağlısınız.
  • Bakım size aittir: Yama uygulama, önbellek ayarlama, günlük döndürme, TLS yönetimi ve çalışma süresi tamamen sizin sorumluluğunuzdadır.

Kısacası Squid, işlettiğiniz bir proxy’dir; ödünç aldığınız kimliklerden oluşan bir ağ değildir. Bu ayrım, çok sayıda ayrı ve güvenilir kullanıcı gibi görünmeye bağlı her görev için önemlidir.

Squid yerine ne zaman residential proxy kullanmalısınız?

Web scraping, coğrafi olarak kısıtlanmış erişim veya birden fazla hesabı yönetmek gibi pek çok konumdan gerçek kullanıcılar gibi görünmeniz gerektiğinde Squid yerine residential proxy kullanın. Bu görevler, kendi barındırdığınız Squid sunucusunun sağladığı tek datacenter IP’sini değil, dönüşümlü IP adreslerinden oluşan bir havuzu gerektirir.

Residential proxy’ler istekleri gerçek tüketici cihazları üzerinden yönlendirir; böylece hedef siteler tek bir tekrarlanan adres yerine sıradan ev bağlantıları görür. Büyük ölçekli isteklerin kolayca engellenmemesini sağlayan da budur. Amacınız herkese açık verileri ölçekli biçimde toplamaksa, iyi istek hijyeniyle birleştirilmiş dönüşümlü residential havuz standart yaklaşımdır; bu konu engellenmeden web scraping yapma rehberinde ele alınır.

DataImpulse’un devreye girdiği yer burasıdır. DataImpulse, 195 ülkede etik yöntemlerle tedarik edilmiş 90 milyondan fazla residential, mobile ve datacenter IP’yi; dönüşümlü ve sticky oturumlar, HTTP, HTTPS ve SOCKS5 desteği ile GB başına 1 dolardan başlayan süresi dolmayan trafikli kullandıkça öde fiyatlandırmasıyla sunar. Bu, Squid’in başarıyla ele aldığı dahili önbellekleme ve filtrelemeden farklı bir iş olan, dış sitelere ölçekli erişim için bir proxy ağıdır. Birçok ekip ikisini birlikte çalıştırır: LAN’da Squid, dışa yönelik veri toplama için ise residential havuz.

Doğru proxy kurulumu ile nasıl başlarsınız?

Aracı göreve göre eşleştirerek başlayın: dahili önbellekleme ve erişim kontrolü için Squid’i çalıştırın, ölçekli biçimde dış ve korunan sitelere ulaşması gereken her şey için residential veya mobile proxy ağı kullanın.

Çalışmanız tamamen kendi ağınız içindeyse, taramayı hızlı ve kontrollü tutmak için iyi yapılandırılmış bir Squid proxy sağlam ve ücretsiz bir seçenektir. Herkese açık veri topluyor, bölgeler genelinde reklamları veya fiyatları doğruluyor ya da birden fazla hesabı işletiyorsanız, dönüşümlü havuz pratik seçenektir. DataImpulse, standart olarak ülke hedefleme sunar; eyalet, şehir, ZIP ve ASN ücretli eklenti olarak mevcuttur. Böylece geniş başlayabilir ve yalnızca projeniz gerektirirse daraltabilirsiniz.

Sık sorulan sorular

Squid proxy ücretsiz mi?

Evet. Squid, GNU GPL kapsamında yayımlanan açık kaynaklı bir yazılımdır; bu nedenle yazılımın kendisini ücretsiz indirebilir ve kullanabilirsiniz. Yine de onu çalıştırmak ve bakımını yapmak için gereken sunucu, bant genişliği ve zamanın maliyetini ödersiniz.

Squid proxy, web scraping için IP’mi gizleyebilir mi?

Etkili biçimde gizleyemez. Squid tüm trafiği, çalıştığı sunucunun genellikle datacenter IP’si olan tek genel IP’si üzerinden yönlendirir; bu nedenle korunan siteler yinelenen tek bir adres görür ve onu hızla engeller. Web scraping için bunun yerine dönüşümlü residential IP’lerden oluşan bir havuza ihtiyacınız vardır.

Squid varsayılan olarak hangi portu kullanır?

Squid varsayılan olarak TCP portu 3128’i dinler. Bunu /etc/squid/squid.conf içindeki http_port yönergesiyle değiştirebilirsiniz; 8080 de yaygın kullanılan başka bir seçenektir.

Squid ile residential proxy arasındaki fark nedir?

Squid, tek IP’li bir sunucuda kendiniz barındırdığınız, LAN önbellekleme ve erişim kontrolü için en uygun olan önbellekli bir forward proxy’dir. Residential proxy ağı, web scraping ve coğrafi erişimin gerektirdiği şekilde, birçok konumda gerçek tüketici cihazlarından gelen çok sayıda dönüşümlü IP sunar.

Squid HTTPS trafiğini yönetebilir mi?

Evet. Squid varsayılan olarak HTTPS’yi CONNECT yöntemiyle tünelleyebilir; kendi sertifikanızı dağıtırsanız HTTPS’yi SSL-bump ile inceleyebilir, ancak bu dikkatli yapılandırma ve güven yönetimi gerektirir.

DataImpulse ne zaman doğru seçenek değildir?

Statik ISP proxy’lere, tamamen yönetilen bir web scraping API’ye veya bankacılık ve devlet sitelerine erişime ihtiyacınız varsa DataImpulse doğru araç değildir. Herkese açık veri toplama ve içeriğe erişim için dönüşümlü residential, mobile ve datacenter proxy’lere odaklanır.

İşiniz için doğru proxy ile başlayın

Göreviniz kendi ağınızda önbellekleme yerine dış sitelere ölçekli biçimde ulaşmayı içeriyorsa residential havuz daha uygundur. DataImpulse hesabı oluşturabilir ve ülke hedefleme dahil, abonelik olmadan GB başına 1 dolardan başlayan kullandıkça öde trafikle başlayabilirsiniz.


Share article: