Настройка Squid в CentOS 7
İçindekiler:
- SOS'u CentOS'a Yükleme
- Squid'i Yapılandırma
- Kalamar Kimlik Doğrulaması
- Güvenlik duvarını yapılandırma
- Tarayıcınızı Proxy Kullanacak Şekilde Yapılandırma
- Firefox
- Google Chrome
- Sonuç
Squid, HTTP, HTTPS, FTP ve daha fazlası gibi popüler ağ protokollerini destekleyen tam özellikli bir önbellek proxy'dir. Squid'i bir web sunucusunun önüne yerleştirmek, tekrarlanan istekleri önbelleğe alarak, web trafiğini filtreleyerek ve coğrafi kısıtlamalı içeriğe erişerek sunucu performansını büyük ölçüde artırabilir.
Bu eğitimde, Squid'i CentOS 7'de nasıl kuracağınız ve Firefox ve Google Chrome web tarayıcılarının proxy'yi kullanacak şekilde nasıl yapılandırılacağı açıklanmaktadır.
SOS'u CentOS'a Yükleme
Squid paketi varsayılan CentOS 7 depolarına dahildir. Kurmak için sudo kullanıcısı olarak aşağıdaki komutu çalıştırın:
sudo yum install squid
Kurulum tamamlandıktan sonra Squid hizmetini başlatın ve etkinleştirin:
sudo systemctl start squid
sudo systemctl enable squid
Yüklemenin başarılı olduğunu doğrulamak için hizmet durumunu yazdıracak aşağıdaki komutu yazın:
sudo systemctl status squid
● squid.service - Squid caching proxy Loaded: loaded (/usr/lib/systemd/system/squid.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2019-07-13 16:47:56 UTC; 12s ago…
Squid'i Yapılandırma
Squid,
/etc/squid/squid.conf
dosyası düzenlenerek yapılandırılabilir. “İnclude” yönergesi kullanılarak yapılandırma seçeneklerine sahip ek dosyalar dahil edilebilir.
Herhangi bir değişiklik yapmadan önce, orijinal yapılandırma dosyasını
cp
komutuyla yedekleyin:
sudo cp /etc/squid/squid.conf{,.orginal}
Dosyayı düzenlemek için metin düzenleyicinizde açın:
sudo nano /etc/squid/squid.conf
Varsayılan olarak Squid, sunucudaki tüm ağ arabirimlerinde
3128
numaralı bağlantı noktasını dinleyecek şekilde yapılandırılmıştır.
# Squid normally listens to port 3128 http_port IP_ADDR:PORT
Squid'i tüm arayüzlerde ve varsayılan portta çalıştırmak çoğu kullanıcı için uygun olmalıdır.
Erişim Kontrol Listelerini (ACL) kullanarak Squid sunucusuna erişimi kontrol edebilirsiniz.
Squid varsayılan olarak yalnızca localhost ve localnet erişimine izin verir.
Proxy'yi kullanacak tüm istemcilerin statik bir IP adresi varsa, izin verilen IP'leri içeren bir ACL oluşturabilirsiniz.
IP adreslerini ana yapılandırma dosyasına eklemek yerine, IP'leri tutacak yeni bir özel dosya oluşturacağız:
/etc/squid/allowed_ips.txt
192.168.33.1 # All other allowed IPs
Tamamlandığında ana yapılandırma dosyasını açın ve
allowed_ips
adlı yeni bir ACL oluşturun (ilk vurgulanan satır) ve
http_access
yönergesini (ikinci vurgulanan satır) kullanarak bu ACL'ye erişime izin verin:
#… acl allowed_ips src "/etc/squid/allowed_ips.txt" #… http_access allow localnet http_access allow localhost http_access allow allowed_ips # And finally deny all other access to this proxy http_access deny all
http_access
kurallarının sırası önemlidir.
http_access deny all
önce satırı eklediğinizden emin olun.
http_access
yönergesi, güvenlik duvarı kurallarına benzer şekilde çalışır. Kalamar, kuralları yukarıdan aşağıya okur ve bir kural eşleştiğinde aşağıdaki kurallar işlenmez.
Yapılandırma dosyasında her değişiklik yaptığınızda, değişikliklerin etkili olması için Squid hizmetini yeniden başlatmanız gerekir:
Kalamar Kimlik Doğrulaması
Squid, kimliği doğrulanmış kullanıcılara Samba, LDAP ve HTTP temel kimlik doğrulaması gibi farklı arka uçlar kullanabilir.
Bu örnekte, Squid'i temel kimlik doğrulaması kullanacak şekilde yapılandıracağız. HTTP protokolünde yerleşik olan basit bir kimlik doğrulama yöntemidir.
Parolaları oluşturmak ve
username:password
çiftini aşağıda gösterildiği gibi
tee
komutuyla
/etc/squid/htpasswd
dosyasına eklemek için
/etc/squid/htpasswd
:
printf "USERNAME:$(openssl passwd -crypt PASSWORD)\n" | sudo tee -a /etc/squid/htpasswd
Örneğin, “
Pz$lPk76
” şifresiyle “mike” adında bir kullanıcı oluşturmak için şunu çalıştırırsınız:
printf "mike:$(openssl passwd -crypt 'Pz$lPk76')\n" | sudo tee -a /etc/squid/htpasswd
mike:2nkgQsTSPCsIo
Bir sonraki adım Squid'i HTTP temel kimlik doğrulamasını etkinleştirecek ve dosyayı kullanacak şekilde yapılandırmaktır.
Ana yapılandırmayı açın ve aşağıdakileri ekleyin:
#… auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/htpasswd auth_param basic realm proxy acl authenticated proxy_auth REQUIRED #… http_access allow localnet http_access allow localhost http_access allow authenticated # And finally deny all other access to this proxy http_access deny all
Vurgulanan ilk üç satırla,
authenticated
adında yeni bir ACL oluşturuyoruz. Son vurgulanan satır, kimliği doğrulanmış kullanıcılara erişime izin verir.
Squid hizmetini yeniden başlatın:
Güvenlik duvarını yapılandırma
sudo firewall-cmd --permanent --add-port=3128/tcp
firewall-cmd --reload
Squid, varsayılan olmayan başka bir bağlantı noktasında çalışıyorsa, o bağlantı noktasındaki trafiğe izin vermeniz gerekir.
Tarayıcınızı Proxy Kullanacak Şekilde Yapılandırma
Artık Squid'i kurduğunuza göre, son adım tercih ettiğiniz tarayıcıyı kullanmak üzere yapılandırmaktır.
Firefox
Aşağıdaki adımlar Windows, macOS ve Linux için aynıdır.
-
Sağ üst köşede, Firefox'un menüsünü açmak için hamburger simgesini
☰
tıklayın:⚙ Preferences
bağlantısını tıklayın.Network Settings
bölümüne gidin veSettings…
düğmesine tıklayın.Yeni bir pencere açılacaktır.
-
Manual proxy configuration
radyo düğmesini seçin.HTTP Host
alanına Squid sunucusu IP adresinizi vePort
alanına3128
girin.Use this proxy server for all protocols
onay kutusunuOK
. Ayarları kaydetmek içinOK
düğmesiniOK
.
-
Bu noktada, Firefox'unuz yapılandırılmıştır ve Squid proxy'si üzerinden Internet'e göz atabilirsiniz. Doğrulamak için
google.com
açın, “
google.com
nedir” yazın ve Squid sunucusu IP adresinizi görmelisiniz.
Varsayılan ayarlara geri dönmek için
Network Settings
gidin,
Use system proxy settings
radyo düğmesini seçin ve ayarları kaydedin.
Ayrıca, Firefox'un FoxyProxy gibi proxy ayarlarını yapılandırmanıza yardımcı olabilecek birkaç eklenti de vardır.
Google Chrome
Google Chrome, varsayılan sistem proxy ayarlarını kullanır. İşletim sistemi proxy ayarlarınızı değiştirmek yerine, SwitchyOmega gibi bir eklenti kullanabilir veya komut satırından Chrome web tarayıcısını başlatabilirsiniz.
Chrome'u yeni bir profil kullanarak başlatmak ve Squid sunucusuna bağlanmak için aşağıdaki komutu kullanın:
Linux:
/usr/bin/google-chrome \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"
Mac os işletim sistemi:
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"
Pencereler:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^ --user-data-dir="%USERPROFILE%\proxy-profile" ^ --proxy-server="http://SQUID_IP:3128"
Profil yoksa otomatik olarak oluşturulur. Bu şekilde, aynı anda birden çok Chrome örneğini çalıştırabilirsiniz.
Proxy sunucunun düzgün çalıştığını doğrulamak için
google.com
açın ve “ip'im nedir” yazın. Tarayıcınızda gösterilen IP, sunucunuzun IP adresi olmalıdır.
Sonuç
CentOS 7'ye kalamar kurmayı ve tarayıcınızı kullanacak şekilde yapılandırmayı öğrendiniz.
Squid, en popüler proxy önbellek sunucularından biridir. Web sunucusunun hızını artırır ve kullanıcının İnternet'e erişimini kısıtlamanıza yardımcı olabilir.
proxy centosUbuntu 18.04 Üzerine Kalamar Proxy Nasıl Kurulur ve Yapılandırılır
Squid, HTTP, HTTPS, FTP ve daha fazlası gibi popüler ağ protokollerini destekleyen tam özellikli bir önbellek proxy'dir. Bu eğitim, Ubuntu 18.04'te bir Squid Proxy kurma sürecinde size yol gösterecektir.
Centos 7 üzerine redmine nasıl kurulur ve yapılandırılır
Redmine, en popüler açık kaynaklı proje yönetimi ve sorun izleme yazılım araçlarından biridir. Bu eğitici, CentOS 7'ye Redmine yüklemek ve yapılandırmak için gereken adımları kapsar.
Centos 7 üzerine magento 2 nasıl kurulur ve yapılandırılır
Bu seride, Magento 2'yi Nginx, MariaDB ve PHP 7.1 içeren bir CentOS sunucusuna kurmak için gereken adımlarda size yol gösterecektir.