Sistem yöneticileri, içerik sunumlarını artırmak için Squid Proxy’yi kullanır. Squid Proxy, özellikle bir sunucunun sık ziyaret edilen web sayfalarını önbelleğe almasına izin verir.
Nasıl? Bir kullanıcı bir web sayfası veya dosya aradığında, istek, masaüstü bilgisayar ile internet arasındaki aracı cihaz olan proxy sunucusuna gider. Proxy sunucusu, yeni verileri önbelleğe alarak ve aynı sunucuya yapılacak gelecekteki istekler için kullanarak kaynağı çeker ve kullanıcıya aktarır.
Bu kılavuzda öğreneceksiniz CentOS 7’de bir Squid Proxy sunucusunun nasıl kurulacağı, yapılandırılacağı ve kurulacağı.
Önkoşullar
CentOS’ta Squid Proxy Kurma Adımları
1. Adım: CentOS Yazılım Havuzlarını Yenileyin
Depolarınızı güncelleyerek en son yazılım sürümüyle çalıştığınızdan emin olun.
Bir terminal penceresi açın ve aşağıdakileri girin:
sudo yum -y update
Adım 2: Squid Paketini CentOS’a Kurun
Squid’i yüklemek için şunu yazın:
yum -y install squid
Şimdi aşağıdaki komutu girerek Squid’i başlatın:
systemctl start squid
Açılışta otomatik başlatma ayarlamak için:
systemctl enable squid
Hizmetin durumunu gözden geçirin, şunu kullanın:
systemctl status squid
Aşağıdaki örnekte, durumun ‘Aktif’ olduğunu görüyoruz.
Squid Proxy Sunucusunu Yapılandırma
Squid yapılandırma dosyası şu adreste bulunur: /etc/squid/squid.conf.
1. Dosyayı tercih ettiğiniz metin düzenleyicide açın (vim bu örnekte kullanıldı}:
sudo vi /etc/squid/squid.conf
2. bulmak için gezinin http_port seçeneği. Tipik olarak, bu, dinlemek için ayarlanır Bağlantı noktası 3218. Bu port genellikle TCP trafiğini taşır. Sisteminiz başka bir bağlantı noktasındaki trafik için yapılandırılmışsa, buradan değiştirin:
Proxy modunu şu şekilde de ayarlayabilirsiniz: şeffaf Squid’in isteklerinizi ve yanıtlarınızı değiştirmesini engellemek istiyorsanız.
Aşağıdaki gibi değiştirin:
http_port 1234 transparent
3. Şuraya gidin: http_acacess hepsini reddet seçenek.
Şu anda tüm HTTP trafiğini engelleyecek şekilde yapılandırılmıştır ve aşağıda gösterildiği gibi hiçbir web trafiğine izin verilmez.
Bunu şu şekilde değiştirin:
http_access allow all
4. Squid hizmetini şunu girerek yeniden başlatın:
sudo systemctl restart squid
Squid İstemcisini Yapılandır
Squid proxy sunucusu artık yapılandırılmıştır. İstemci sunucusunu yapılandırmak için istemci makinenize geçin ve web tarayıcınızı açın.
Firefox kullanıyorsanız proxy ayarlarını şu adreste bulabilirsiniz:
Menü > Seçenekler > Ağ Ayarları > Ayarlar
Manuel proxy yapılandırması için radyo düğmesini seçin.
Squid proxy’nizi barındıran sistemin IP adresini kullanın.
Test etmek için ziyaret edebilirsiniz https://whatismyipaddress.com/ip-lookup. IP adresiniz, proxy sunucusunun IP adresi olarak görünür.
Bir Erişim Kontrol Listesi (ACL) Oluşturun
Proxy sunucusunun yerel ağı dışındaki bağlantılar için Erişim Kontrol Listelerini (ACL) yapılandırmanız gerekir. “Bağlanmayı reddetti” hatası alırsanız bu gerekli olabilir.
Bu sorunu çözmek için, yeni bir ACL girişiyle güvenli bağlantı noktaları listenize eklemeniz yeterlidir.
Not: Aşağıdaki adımların her birinin ardından, yeni yapılandırmayı uygulamak için kaydetmeli ve çıkmalı, ardından Squid hizmetini yeniden başlatmalısınız.
Düzenle /etc/squid/squid.conf bir kez daha dosyalayın. Aşağıdaki gibi yeni bir satır ekleyin:
acl localnet src 192.166.0.10
Bu, yalnızca bu IP adresindeki sistemin bağlanmasına izin veren bir kural oluşturacaktır.
Kuralı tanımlamak için satırı yorumlayın. # işaretinden sonraki metin Squid tarafından yoksayılır.
acl localnet src 192.166.0.10 # test computer
Bir IP adresi aralığını aşağıdaki gibi belirleyebilirsiniz:
acl localnet src 192.166.0.10/30
Squid Proxy Bağlantı Noktalarını Açın
Belirli bir bağlantı noktasını açmak için aşağıdakileri ekleyin:
acl Safe_ports port 123 # Custom port
Değişiklikleri kaydetmek için Squid’i yeniden başlatın:
systemctl restart squid
Proxy Kimlik Doğrulamasını Ayarlayın
Squid, diğer kimlik doğrulama türlerini desteklemenin yanı sıra temel kimlik doğrulama sunar.
İlk önce yükleyin httpd araçları aşağıdaki komutla:
yum -y install httpd-tools
Araç kuruluyken yeni dosyayı oluşturun:
touch /etc/squid/passwd && chown squid /etc/squid/passwd
Parolayı oluşturmak için şu komutu kullanın:
htpasswd /etc/squid/passwd newuser
takas ‘yeni kullanıcı‘ kullanıcı adınızla.
Sistem sizden ‘yeni kullanıcı’ için bir şifre girmenizi ve onaylamanızı isteyecektir.
Proxy hizmetini yeniden başlatın ve şunu ekleyerek tarayıcınızı yeniden açın:
systemctl restart squid
Düzenle /etc/squid/squid.conf dosyasını açın ve aşağıdaki komut satırlarını ekleyin:
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid Basic Authentication
auth_param basic credentialsttl 2 hours
acl auth_users proxy_auth REQUIRED
http_access allow auth_users
Bundan sonra, Linux proxy sunucusuna bağlandığınızda, kullanıcı adınız ve şifreniz için bir istem göreceksiniz. Kimliği doğrulanmamış herhangi bir kişi bir hata mesajıyla durdurulur.
Squid Proxy ile Web Sitelerini Nasıl Engellersiniz?
1. Yeni bir metin dosyası oluşturun ve düzenleyin /etc/squid/blocked.acl Girerek:
sudo vi /etc/squid/blocked.acl
2. Bu dosyada, engellenecek web sitelerini bir noktadan başlayarak ekleyin:
.facebook.com
.twitter.com
Nokta, ana sitenin tüm alt sitelerinin engellenmesini belirtir.
3. /etc/squid/squid.conf tekrar dosya:
sudo vi /etc/squid/squid.conf
4. Aşağıdaki satırları EKL listenizin hemen üstüne ekleyin:
acl blocked_websites dstdomain “/etc/squid/blocked.acl”
http_access deny blocked_websites
Çözüm
Bu öğreticide, bir Squid HTTP Proxy sunucusunu nasıl kuracağınızı, yapılandıracağınızı ve güvenli hale getireceğinizi öğrendiniz.
Squid, benzersiz önbelleğe alma gücü sayesinde işlem süresini iyileştirir ve bant genişliği kullanımını hızla düzenler. Hızlandırıcı modunda, sunucunuz etkileyici bir hızla çalışabilir. Ağınızın performansını önemli ölçüde artırarak sisteminize rekabet avantajı sağlar.