Proxy Server Kurulumu Ve Yapılandırılması


        Proxy Server dolaylı olarak, sistemdeki diğer bilgisayarların internete bağlanabilmeleri için izin verir. Gnu + Linux işletim sistemleri için en kararlı Proxy Server 'Squid'dir. Bir Proxy server HTTP ve FTP istekleri için önbellek hizmeti sunar. Squid bizim için yaptığımız istekleri önbelleğe kaydederek daha sonraki aynı istekler için verileri tekrar internetten getirmek yerine, önbelleğindeki veriyi kullanıcıya iletir. Ayrıca Squid, üzerine yazılan kuralar sayesinde kullanıcıların erişebileceği web sayfalarını belirleyebilir.

Kurulum;

sudo apt-get install squid

Access Controls;

        Şu adrese gitmek isteyenlere ya da adres, saat, istek yapanın IP adresine göre kısıtlama yapabilir. İçeriğe göre kısıtlama yapamaz. Çok fazla site olduğu için siteye göre kısıtlama yapmak imkansıza yakındır. Adres satırında şu geçiyorsa diye kısıtlama yapılabilinir.

ACL Tanımlaması:
sudo vim /etc/squid/squid.conf: Tanımlamalar ve diğerleri bu ayar dosyasına yazılır.

acl isim kaynak IP adresi/ağ maskesi
  • acl terzioglu src 192.168.0.0/16: Dosyada bu kısımdan sonra terzioglu diye bir şey kullanırsak 192.168.0.0 ile 192.168.255.255 adresleri arasından geliyorsa ona izin ver demektir. Sadece böyle IP adresi bloğuyla yapılmaya da bilir. Bazı IP adreslerine öncelik verilebilir. Tek tek IP adresleri verilebilir.
  • acl aclname src ip-address/mask ... # clients IP address [fast]
  • acl aclname srcdomain .foo.com: adres ile de tanımlayabiliriz. Burada dikkat edilmesi gereken src değil srcdomain demek
dstdomain: hedef domain

srcdom_regex: Düzenli ifadeler kullanılır.
  • acl safeport port 80 70 21 0-1024: Bu safeportlara izin ver demektir.
  • acl aclname http_status 200 301 500- 400-403: http-status’e bakılarak bir politika belirlenebilir. 200 ise ulaşsın, 301 ise ulaşamasın diyebiliriz.
  • http_access deny !Safe_ports: Safe_ports'da değilse reddet. İlk uyan kural işletilir geri kalan kurallara bakılmaz.
  • http_access deny CONNECT !SSL_ports: port uygun değilse bağlantıya izin verme düşür demektir.
  • http_access allow localhost manager: localhost maneger'da hangi IP adresi tanımlanmışsa onunla ilgili bağlantıya ilk başta izin ver demektir.
  • http_access deny manager
  • http_access allow localhost: kendi üzerindekilere izin ver demektir.
  • http_access deny all: diğerlerine izin verme demektir.
  • http_port 3128: Varsayılan http portudur.
  • acl hurriyet srcdomain .hurriyet.com: hurriyet tanımlandı.
    http_access deny hurriyet: hurriyet olanları düşür demektir.