Takip et

HPSR Proxy Stack: Kendi HTTPS Proxy Sunucunuzu Oluşturun

İnternet dünyasında dolaşırken gizliliğiniz, güvenliğiniz ve erişim hızınız sizin için ne kadar önemli? Günümüzün dijital çağında, internet trafiğinin büyük bir kısmı HTTPS üzerinden şifrelenmiş olarak akıyor. Bu durum, geleneksel proxy sunucularının denetim ve performans yeteneklerini kısıtlayabiliyor. Ancak endişelenmeyin! Bu kapsamlı rehberde, HPSR Proxy Stack adını verdiğimiz, Docker, Squid ve geçerli SSL sertifikalarıyla kendi HTTPS proxy sunucunuzu nasıl sıfırdan kuracağınızı, yöneteceğinizi ve optimize edeceğinizi adım adım keşfedeceğiz. Artık internet trafiğinizi daha güvenli, daha hızlı ve daha kontrollü bir şekilde yönetebileceksiniz.

Dijital dünyada gezinirken karşılaştığımız en temel sorulardan biri şüphesiz “İnternet deneyimimi nasıl daha güvenli ve hızlı hale getirebilirim?” oluyor. İşte tam da bu noktada bir proxy sunucusu devreye giriyor. Genel olarak bir proxy, sizinle hedef sunucu arasına giren bir aracı görevi görür. İnternet istekleriniz doğrudan hedef sunucuya gitmek yerine, önce proxy’ye uğrar, proxy bu isteği işler ve ardından hedef sunucuya iletir. Yanıt da aynı şekilde proxy üzerinden size ulaşır. Bu basit mekanizma, pek çok önemli avantajı beraberinde getirir.

Özellikle HTTPS (Hypertext Transfer Protocol Secure) trafiğinin yaygınlaşmasıyla birlikte, internet iletişiminin neredeyse tamamı şifrelenmiş bir yapıya büründü. HTTPS, verilerinizi internet üzerinden iletirken güvenliği sağlamak için SSL/TLS (Secure Sockets Layer/Transport Layer Security) protokollerini kullanır. Bu şifreleme, hassas bilgilerin (şifreler, kredi kartı bilgileri vb.) üçüncü şahıslar tarafından ele geçirilmesini zorlaştırır. Ancak bu güvenlik katmanı, geleneksel proxy sunucularının trafiği denetlemesini veya önbelleğe almasını da zorlaştırır, çünkü trafik içeriği şifrelidir. İşte HPSR (HTTPS Proxy Stack Ready) kavramı tam da burada kritik bir rol oynar. HPSR Proxy Stack, bu şifrelenmiş HTTPS trafiğini bile güvenli bir şekilde yönetmenize, denetlemenize ve hatta önbelleğe almanıza olanak tanır.

Kendi HTTPS proxy sunucunuzu kurmanın pratik faydalarını düşündüğümüzde, akla ilk gelenler genellikle güvenlik ve performans oluyor. Güvenlik açısından bakıldığında, proxy sunucusu üzerinden geçen tüm trafiği izleyebilir, istenmeyen veya zararlı olabilecek web sitelerine erişimi engelleyebilirsiniz. Örneğin, şirket çalışanlarınızın belirli kategorideki sitelere (kumar, yetişkin içerikli siteler vb.) erişimini kısıtlayabilir veya kötü amaçlı yazılım barındıran sitelere karşı bir ön savunma hattı oluşturabilirsiniz. Bu, özellikle kurumsal ağlarda veri sızıntılarını önlemek ve genel ağ güvenliğini artırmak için paha biçilmez bir özelliktir. Ayrıca, coğrafi kısıtlamaları aşarak belirli içeriklere erişim sağlamak veya IP adresinizi gizlemek için de proxy’lerden faydalanabilirsiniz.

Performans tarafına geçtiğimizde ise önbellekleme (caching) özelliği öne çıkıyor. Bir proxy sunucusu, sıkça erişilen web sayfalarının ve dosyaların bir kopyasını kendi üzerinde tutabilir. Bir kullanıcı aynı kaynağa tekrar erişmek istediğinde, proxy bu içeriği doğrudan kendi önbelleğinden sunarak hedef sunucuya gitme ihtiyacını ortadan kaldırır. Bu durum, özellikle yoğun trafik alan ağlarda veya internet bağlantısının yavaş olduğu durumlarda sayfa yükleme sürelerini önemli ölçüde azaltır. Örneğin, bir üniversite kütüphanesindeki birçok öğrencinin aynı akademik makalelere veya ders materyallerine eriştiğini düşünün. Proxy, bu materyalleri ilk indirimde önbelleğine alarak, sonraki erişimlerde çok daha hızlı bir deneyim sunabilir. Kısacası, HPSR Proxy Stack ile sadece güvenliği artırmakla kalmaz, aynı zamanda internet deneyiminizi gözle görülür şekilde hızlandırabilirsiniz. Bu sayede, hem kişisel kullanımda daha verimli olabilir hem de şirketinizin ağ kaynaklarını daha etkin kullanmasını sağlayabilirsiniz.

HPSR Proxy Stack Nedir ve Temel Bileşenleri Nelerdir?

HPSR Proxy Stack, günümüzün karmaşık ağ ihtiyaçlarına cevap veren modern, esnek ve güvenli bir HTTPS proxy çözümüdür. Adından da anlaşılacağı gibi, bu “stack” yani yığın, birkaç güçlü teknolojinin bir araya gelerek sinerjik bir yapı oluşturmasıyla ortaya çıkar. Temelde, şifrelenmiş (HTTPS) trafiği de yönetebilen, önbellekleme ve erişim kontrolü gibi özelliklere sahip bir proxy sunucusunu, dağıtım ve yönetim kolaylığı sağlayan konteyner teknolojisiyle birleştirir. Bu kombinasyon, geleneksel proxy çözümlerine kıyasla daha verimli, ölçeklenebilir ve bakımı daha kolay bir yapı sunar.

Peki, bu güçlü yığının temel bileşenleri nelerdir?

  1. Squid: HPSR Proxy Stack’in kalbinde Squid yer alır. Squid, açık kaynaklı, yüksek performanslı bir web proxy önbellekleme sunucusudur. Yıllardır kullanılan, sağlam ve kanıtlanmış bir çözüm olan Squid, HTTP, HTTPS, FTP ve diğer ağ protokolleri için ileri ve geri proxy işlevleri sunar.

    • Önbellekleme Yetenekleri: Web sayfaları, resimler ve diğer statik içerikler gibi sıkça erişilen verileri önbelleğinde tutarak, bu verilere sonraki erişimleri hızlandırır ve ağ bant genişliği kullanımını azaltır.
    • Erişim Kontrolü: Kapsamlı ACL (Access Control List) kuralları ile kimlerin, hangi sitelere, ne zaman ve hangi protokolle erişebileceğini detaylı bir şekilde kontrol etmenizi sağlar.
    • SSL/TLS Desteği: En kritik özelliklerinden biri, HTTPS trafiğini güvenli bir şekilde işleyebilmesidir. SSL bumping (veya SSL interception) adı verilen teknikle, şifrelenmiş trafiği denetleyebilir ve önbelleğe alabilir. Bu, geçerli SSL sertifikalarının entegrasyonuyla mümkün olur.
    • Şeffaf Proxy: İstemcilerin manuel olarak proxy ayarı yapmasına gerek kalmadan, ağdaki trafiği otomatik olarak yönlendirebilir.
  2. Docker: HPSR Proxy Stack’in omurgasını oluşturan ikinci temel bileşen Docker’dır. Docker, uygulamaları “konteyner” adı verilen izole edilmiş ortamlarda paketlemenizi ve çalıştırmanızı sağlayan bir platformdur.

    • Kolay Dağıtım: Squid gibi karmaşık bir uygulamayı, tüm bağımlılıklarıyla birlikte tek bir Docker imajında paketleyebilir ve herhangi bir Docker uyumlu sisteme saniyeler içinde dağıtabilirsiniz. Bu, “benim makinemde çalışıyordu” sorununu ortadan kaldırır.
    • İzolasyon: Squid konteyneri, ana sistemden ve diğer uygulamalardan tamamen izole edilmiş bir ortamda çalışır. Bu, güvenlik risklerini azaltır ve çatışmaları engeller.
    • Taşınabilirlik: Docker konteynerleri her yerde aynı şekilde çalışır; bu da geliştirme ortamından test ortamına ve oradan üretim ortamına geçişi sorunsuz hale getirir.
    • Ölçeklenebilirlik: Yüksek trafik durumlarında, aynı Squid konteynerinden birden fazla kopya kolayca oluşturularak yük dengelemesi yapılabilir. Docker Compose gibi araçlarla birden fazla servisi (Squid, sertifika yönetimi vb.) tek bir komutla yönetmek mümkündür.
  3. SSL/TLS Sertifikaları (Özellikle Let’s Encrypt): HTTPS trafiğini güvenli bir şekilde denetleyebilmek için proxy sunucusunun geçerli SSL/TLS sertifikalarına sahip olması şarttır. Bu sertifikalar, istemci tarayıcılarının proxy sunucusuna güvenmesini sağlar ve iletişimdeki “ortadaki adam” (man-in-the-middle) saldırılarına karşı koruma sağlar.

    • Güvenilirlik: Güvenilir bir Sertifika Yetkilisi (CA) tarafından imzalanmış sertifikalar, tarayıcıların herhangi bir uyarı vermeden proxy üzerinden geçen trafiği kabul etmesini sağlar.
    • Let’s Encrypt: Bu stack için özellikle tavsiye edilen çözüm, ücretsiz, otomatik ve açık bir Sertifika Yetkilisi olan Let’s Encrypt’tir. Certbot gibi araçlarla entegre edildiğinde, sertifika alma ve yenileme süreçleri tamamen otomatikleştirilebilir. Bu, maliyetleri düşürür ve yönetim yükünü hafifletir.

Bu üç bileşen bir araya geldiğinde, Docker’ın sunduğu kolay yönetim ve izolasyon avantajlarıyla, Squid’in güçlü proxy ve önbellekleme yeteneklerini birleştirerek, Let’s Encrypt ile de geçerli ve ücretsiz SSL sertifikalarıyla güçlendirilmiş, modern ve güvenilir bir HTTPS proxy sunucusu oluşturmuş olursunuz. İşte bu, HPSR Proxy Stack’in temelini oluşturur ve size internet trafiğiniz üzerinde tam kontrol ve üst düzey güvenlik sağlar.

Docker ile Squid Proxy Ortamını Nasıl Kurarsınız? Adım Adım Rehber

HPSR Proxy Stack’in kurulumuna başlamadan önce, sisteminizde Docker ve Docker Compose’un kurulu olduğundan emin olmalısınız. Eğer kurulu değillerse, Docker’ın resmi web sitesindeki yönergeleri takip ederek kolayca kurabilirsiniz. Bu rehberde, bir docker-compose.yml dosyası kullanarak Squid proxy’sini ayağa kaldıracağız. Bu yöntem, birden fazla servisi ve bunların bağımlılıklarını tek bir dosyada tanımlamanıza olanak tanır, bu da yönetimi oldukça kolaylaştırır.

Önkoşullar

  • Docker kurulu olmalı.
  • Docker Compose kurulu olmalı.
  • Bir Linux sunucusu (Ubuntu, CentOS vb.) veya yerel geliştirme ortamı (macOS, Windows Subsystem for Linux – WSL2) tercih edilir.

Adım 1: Proje Dizini Oluşturma

İlk olarak, projeniz için bir dizin oluşturalım ve içine girelim:


mkdir hpsr-proxy-stack
cd hpsr-proxy-stack

Adım 2: Squid Yapılandırma Dosyası (squid.conf) Oluşturma

Squid'in nasıl davranacağını belirleyen temel yapılandırma dosyası squid.conf'tur. Bu dosyayı proje dizininizde oluşturmalı ve içine temel ayarları eklemelisiniz. İşte basit bir örnek:


# squid.conf
# Temel Proxy Ayarları
http_port 3128

# Cache Dizini ve Boyutu
cache_dir ufs /var/spool/squid 100 16 256

# ACL'ler (Erişim Kontrol Listeleri)
# Tüm kaynaklara izin veren genel bir kural tanımla
acl localnet src 0.0.0.0/0
acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl CONNECT method CONNECT

# Güvenli bağlantılara ve güvenli portlara izin ver
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

# Squid'e erişim izni ver (örnek: sadece yerel ağdan veya belirli bir IP'den)
# Varsayılan olarak tüm isteklere izin veriyoruz, ancak üretimde bunu kısıtlamalısınız.
http_access allow localnet

# Son olarak, diğer tüm erişimleri reddet
http_access deny all

# Önbellekleme ayarları
maximum_object_size 4 MB
minimum_object_size 0 KB

# Önbellekteki objelerin ne kadar süreyle tutulacağı
refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320

Uzman İpucu: Yukarıdaki http_access allow localnet kuralı, Squid'in varsayılan olarak tüm ağlardan erişilebilir olmasını sağlar. Ancak, gerçek bir üretim ortamında, bu kuralı kendi ağınıza veya belirli IP adreslerine (örneğin, acl my_network src 192.168.1.0/24 ve http_access allow my_network) göre özelleştirmeniz, güvenliğinizi artıracaktır.

Adım 3: Docker Compose Dosyası Oluşturma

Şimdi sıra, Squid konteynerimizi tanımlayacağımız docker-compose.yml dosyasını oluşturmaya geldi. Bu dosya, Squid servisini, gerekli port eşleştirmelerini ve volume'leri (kalıcı veri depolama alanları) tanımlayacak.


# docker-compose.yml
version: '3.8'

services:
  squid:
    image: squid:latest
    container_name: hpsr-squid-proxy
    ports:
      - "3128:3128" # Proxy portu
    volumes:
      - ./squid.conf:/etc/squid/squid.conf:ro # Yapılandırma dosyasını bağlama (salt okunur)
      - squid_cache:/var/spool/squid          # Squid önbelleği için kalıcı volume
      - squid_logs:/var/log/squid             # Squid logları için kalıcı volume
    restart: unless-stopped

volumes:
  squid_cache:
  squid_logs:

Bu docker-compose.yml dosyasında şunları tanımladık:

  • version: '3.8': Docker Compose dosya formatının versiyonu.
  • services:: Çalıştırılacak servisleri tanımlar.
  • squid:: Squid proxy servisimizin adı.
  • image: squid:latest: Docker Hub'dan en güncel Squid imajını kullanacağımızı belirtir.
  • container_name: hpsr-squid-proxy: Konteynerimize okunabilir bir isim verir.
  • ports: - "3128:3128": Ana makinenin 3128 portunu, konteynerin 3128 portuna eşler. İstemciler bu port üzerinden proxy'ye bağlanacak.
  • volumes:: Kalıcı depolama alanlarını ve yapılandırma dosyalarını bağlar.
    • ./squid.conf:/etc/squid/squid.conf:ro: Kendi squid.conf dosyamızı konteynerin içine salt okunur (ro) olarak bağlarız. Bu, konteyneri yeniden oluşturduğumuzda yapılandırma ayarlarımızın kaybolmamasını sağlar.
    • squid_cache:/var/spool/squid: Squid'in önbellek verilerini depolayacağı named volume. Konteyner silinse bile önbellek verileri korunur.
    • squid_logs:/var/log/squid: Squid'in loglarını depolayacağı named volume.
  • restart: unless-stopped: Konteynerin, Docker servisi yeniden başladığında veya konteyner kendi kendine durduğunda otomatik olarak yeniden başlamasını sağlar.
  • volumes: squid_cache: squid_logs:: Docker Compose tarafından yönetilecek named volume'ları tanımlarız.

Adım 4: Squid Konteynerini Çalıştırma

Tüm dosyalar hazır olduğuna göre, artık proxy sunucumuzu ayağa kaldırabiliriz. Proje dizininizdeyken aşağıdaki komutu çalıştırın:


docker-compose up -d

Bu komut, Docker Compose dosyanızı okur, Squid imajını indirir (eğer yerel olarak yoksa), gerekli volume'leri oluşturur ve Squid konteynerini arka planda (-d detach modunda) başlatır.

Adım 5: Proxy Sunucusunu Test Etme

Konteynerin düzgün çalıştığını doğrulamak için loglara bakabilirsiniz:


docker-compose logs squid

Loglarda herhangi bir hata görmezseniz, proxy sunucunuz büyük ihtimalle düzgün çalışıyor demektir. Şimdi bir istemciyi (örneğin, web tarayıcınızı veya bir komut satırı aracını) bu proxy'yi kullanacak şekilde yapılandırabilirsiniz.

Örnek olarak, Linux'ta veya macOS'ta curl ile test edebilirsiniz:


# Proxy ortam değişkenini ayarlama (geçici)
export http_proxy="http://localhost:3128"
export https_proxy="http://localhost:3128"

# Bir web sitesine istek gönderme
curl http://example.com

# Ortam değişkenlerini kaldırma
unset http_proxy
unset https_proxy

Tarayıcınızda ise ayarlar bölümünden "Proxy Ayarları"na giderek HTTP proxy adresini localhost (veya sunucunuzun IP adresi) ve portu 3128 olarak ayarlamanız yeterlidir. Bu sayede, tarayıcınız üzerinden yaptığınız tüm istekler önce Squid proxy'sine uğrayacak, o da isteği işleyip hedef sunucuya iletecektir. İlk denemelerde HTTPS trafiği için sorunlar yaşayabilirsiniz, çünkü henüz SSL sertifikalarını entegre etmedik. Bir sonraki bölümde bu konuya değineceğiz.

Önemli Not: Bu adım, sadece temel HTTP proxy işlevselliğini kurar. HTTPS trafiğini tam anlamıyla denetleyebilmek için SSL/TLS sertifikalarını entegre etmemiz ve Squid yapılandırmasına eklemeler yapmamız gerekecek. Ancak, bu temel kurulum, projenizin sağlam bir başlangıç yapması için hayati öneme sahiptir.

HTTPS Trafiğini Güvenle Yönetmek: SSL/TLS Sertifikalarını Entegre Etme

Şimdiye kadar, Squid proxy'mizin temel HTTP trafiğini nasıl yöneteceğini yapılandırdık. Ancak, günümüz internetinde trafiğin büyük çoğunluğu HTTPS üzerinden akıyor ve bu trafik şifreli olduğu için doğrudan denetlenmesi veya önbelleğe alınması mümkün değil. İşte bu noktada, HPSR Proxy Stack'in en kritik aşamalarından biri olan SSL/TLS sertifikalarının entegrasyonu devreye giriyor. Bir HTTPS proxy sunucusu, şifrelenmiş trafiği işleyebilmek için "ortadaki adam" (man-in-the-middle) gibi davranmalıdır, ancak bunu güvenli ve yetkilendirilmiş bir şekilde yapmalıdır. Bu işlem genellikle "SSL bumping" veya "SSL interception" olarak adlandırılır.

Neden SSL/TLS Sertifikalarına İhtiyacımız Var?

Bir web tarayıcısı bir HTTPS sitesine bağlandığında, o sitenin SSL/TLS sertifikasını kontrol eder. Bu sertifika, sitenin kimliğini doğrular ve iletişimin şifrelendiğini garanti eder. Eğer proxy sunucumuz, istemcinin orijinal isteğini kesip kendi adına bir bağlantı kuracaksa, istemciye kendi sertifikasını sunmak zorundadır. Bu sertifika, tarayıcı tarafından güvenilir olarak kabul edilmelidir, aksi takdirde tarayıcı güvenlik uyarısı verir ve bağlantıyı reddeder. Bu nedenle, proxy'mizin güvenilir bir kök sertifikaya (Root CA) sahip olması ve bu CA ile isteğe bağlı olarak yeni sertifikalar "üretmesi" gerekmektedir.

Kendinden İmzalı Sertifikalar (Test Ortamı İçin)

Üretim ortamı için geçerli bir CA'dan sertifika almak şart olsa da, ilk denemeler ve testler için kendinden imzalı (self-signed) bir sertifika kullanabilirsiniz. Bu, proxy'nin HTTPS trafiğini nasıl ele aldığını anlamanıza yardımcı olur, ancak istemci tarayıcılarında güvenlik uyarıları alırsınız, çünkü bu sertifikalar güvenilir bir CA tarafından imzalanmamıştır. Kendinden imzalı bir sertifika oluşturmak için OpenSSL kullanabilirsiniz:


# Kök anahtarını oluştur
openssl genrsa -out ca.key 2048

# Kök sertifikasını oluştur
openssl req -x509 -new -nodes -key ca.key -sha256 -days 3650 -out ca.crt -subj "/CN=HPSR Proxy CA"

# Squid için sertifika dizini oluştur
mkdir -p /etc/squid/ssl_cert
cp ca.crt ca.key /etc/squid/ssl_cert/
chmod 400 /etc/squid/ssl_cert/ca.key
chown proxy:proxy /etc/squid/ssl_cert/*

Bu ca.crt dosyasını, proxy'yi kullanacak tüm istemci cihazlarına manuel olarak yüklemeniz ve güvenilir kök sertifikalar listesine eklemeniz gerekir. Ancak bu, büyük ölçekli veya üretim ortamları için pratik değildir.

Let's Encrypt ile Geçerli Sertifikalar Edinme (Üretim Ortamı İçin)

Üretim ortamında tarayıcı uyarılarından kaçınmak ve tam güvenlik sağlamak için Let's Encrypt gibi bir Sertifika Yetkilisi'nden geçerli sertifikalar almalıyız. Let's Encrypt, ücretsiz, otomatik ve açık bir CA'dır. Genellikle Certbot aracı ile kullanılır. Ancak, proxy sunucusu için Let's Encrypt sertifikası alırken dikkatli olmak gerekir. Let's Encrypt, doğrudan bir "SSL bumping" CA sertifikası sağlamaz. Bunun yerine, proxy sunucusunun kendisi için bir alan adı sertifikası alırsınız (örneğin, proxy.alanadiniz.com için). Daha sonra Squid, bu sertifikayı kullanarak kendi "sahte" sertifikalarını imzalar.

Bu karmaşık bir senaryo olduğu için genellikle iki yol izlenir:

  1. Özel CA Sertifikası ve Dağıtımı: Kendi özel kök CA'nızı oluşturur, bununla ara sertifikalar imzalar ve bu ara sertifikaları Squid'e entegre edersiniz. Bu kök CA'yı ağınızdaki tüm istemci cihazlarına manuel olarak veya grup politikaları (Group Policies) ile dağıtırsınız. Bu yöntem tam kontrol sağlar ve genellikle kurumsal ortamlarda tercih edilir. Yukarıda OpenSSL ile oluşturduğumuz ca.crt bu senaryonun başlangıcıdır.
  2. SSL Bumping ile Let's Encrypt: Bu senaryoda Let's Encrypt'ten Squid sunucusunun domain'i için bir sertifika alırsınız (örneğin proxy.example.com). Ardından, Squid'i bu sertifikayı kullanarak hedef siteler için dinamik olarak yeni sertifikalar oluşturacak şekilde yapılandırırsınız. Ancak bu, tarayıcılarda yine uyarıya neden olabilir, çünkü tarayıcılar "proxy.example.com" tarafından imzalanmış Google.com sertifikasına güvenmeyecektir. Bu nedenle, genellikle 1. yöntem (özel CA dağıtımı) tercih edilir.
Uzman İpucu: Let's Encrypt ile Otomatik Yenileme
Eğer Let's Encrypt kullanacaksanız, sertifikalar 90 gün geçerlidir. Certbot'u bir cron job veya Docker Compose içinde ayrı bir servis olarak ayarlayarak otomatik yenileme yapmalısınız. Yenileme sonrasında Squid servisini yeniden başlatmayı unutmayın.

Squid Yapılandırmasında SSL Ayarlamaları

Squid'in HTTPS trafiğini denetlemesi için squid.conf dosyanızda ek ayarlamalar yapmanız gerekir. Bu ayarlamalar, Squid'in SSL bumping yapmasını ve sertifikaları yönetmesini sağlar.


# squid.conf içindeki SSL Bumping ayarları (eski http_port satırını değiştirin)
# Önemli: Bu ayarlar, istemci tarayıcılarına yüklenecek bir CA sertifikası ile kullanılmalıdır.
https_port 3129 intercept ssl-bump \
    cert=/etc/squid/ssl_cert/ca.crt \
    key=/etc/squid/ssl_cert/ca.key \
    options=NO_SSLv3,NO_TLSv1,NO_TLSv1_1,CIPHER_LIST=HIGH:@STRENGTH

# SSL Bumping için ACL'ler
acl SSL_ports port 443
acl step1 at_step SslBump1
acl step2 at_step SslBump2
acl step3 at_step SslBump3

# SSL Bumping kuralları
# Tüm HTTPS trafiğini denetle
ssl_bump peek step1
ssl_bump splice !step2
ssl_bump bump all

# SSL Proxy Sertifika Hata Davranışı
# Genellikle hatalı sertifikaları görmezden gelmek yerine reddetmek daha güvenlidir.
# sslproxy_cert_error allow all
sslproxy_cert_error deny all

# Proxy için kullanılan sertifika ve anahtar yolunu belirtin.
# Bu, HTTPS proxy'nin kendisinin dış dünyayla konuşurken kullanacağı sertifikadır.
# sslproxy_cert /etc/squid/ssl_cert/proxy.crt
# sslproxy_key /etc/squid/ssl_cert/proxy.key

# İstemcinin Squid'e bağlanırken kullanacağı şifreleme ve protokol ayarları
# sslproxy_options NO_SSLv3,NO_TLSv1,NO_TLSv1_1
# sslproxy_cipher ALL:!SSLv2:!SSLv3:!aNULL:!eNULL:!RC4

Bu ayarları ekledikten sonra, docker-compose.yml dosyanızı, ca.crt ve ca.key dosyalarınızı konteyner içine bağlayacak şekilde güncellemeniz gerekir. Örneğin, kendi oluşturduğunuz ca.crt ve ca.key dosyalarını projenizin kök dizininde tutuyorsanız:


# docker-compose.yml (güncellenmiş volumes bölümü)
volumes:
  - ./squid.conf:/etc/squid/squid.conf:ro
  - ./ca.crt:/etc/squid/ssl_cert/ca.crt:ro # CA sertifikasını bağla
  - ./ca.key:/etc/squid/ssl_cert/ca.key:ro # CA anahtarını bağla
  - squid_cache:/var/spool/squid
  - squid_logs:/var/log/squid

Değişiklikleri kaydettikten sonra, Docker Compose'u yeniden başlatmanız gerekir:


docker-compose down
docker-compose up -d

Vaka Analizi: Kurumsal Ağlarda Güvenli Erişim

Bir orta ölçekli yazılım geliştirme şirketi, çalışanlarının internet erişimini hem güvenli hale getirmek hem de belirli içeriklere erişimi kısıtlamak istiyordu. Geleneksel HTTP proxy'leri, HTTPS trafiği için etkili değildi. Şirket, HPSR Proxy Stack'i kullanarak bir çözüm geliştirdi. Kendi özel kök CA'sını oluşturdu ve bu sertifikayı tüm şirket bilgisayarlarına grup politikaları aracılığıyla dağıttı. Ardından, Docker üzerinde çalışan bir Squid proxy'si kurdu ve bu proxy'yi SSL bumping yapacak şekilde yapılandırdı. Sonuç olarak, şirket, çalışanlarının internet trafiğini şifre çözme ve yeniden şifreleme yeteneği sayesinde zararlı yazılım indirmelerini, kimlik avı sitelerine erişimi ve belirli sosyal medya platformlarının kullanımını etkin bir şekilde denetleyebildi ve engelleyebildi. Ayrıca, sıkça ziyaret edilen sitelerin önbelleklenmesi sayesinde ağ performansı da önemli ölçüde arttı. Bu, HPSR Proxy Stack'in kurumsal güvenlik ve verimlilik ihtiyaçları için ne kadar güçlü bir araç olabileceğinin somut bir örneğidir.

Bu adımlarla, HPSR Proxy Stack'inizin HTTPS trafiğini güvenle yönetme yeteneğini etkinleştirmiş olursunuz. Unutmayın, istemci tarafında CA sertifikasının güvenilir olarak eklenmesi, bu sistemin sorunsuz çalışması için hayati öneme sahiptir.

Gelişmiş Yapılandırmalar ve Performans Optimizasyonları

HPSR Proxy Stack'inizin temel kurulumunu tamamladık ve artık hem HTTP hem de HTTPS trafiğini yönetebiliyor. Ancak, gerçek dünya senaryolarında bir proxy sunucusundan beklenen, sadece temel işlevselliği sağlamak değil, aynı zamanda performansı optimize etmek, erişim kontrolünü daha da detaylandırmak ve sistemi daha sağlam hale getirmektir. Bu bölümde, Squid'in gelişmiş yapılandırma seçeneklerini ve performans artırıcı ipuçlarını inceleyeceğiz.

Önbellekleme Stratejileri ve Performans Optimizasyonu

Squid'in en güçlü özelliklerinden biri önbellekleme yeteneğidir. Doğru yapılandırıldığında, ağ trafiğini önemli ölçüde azaltabilir ve kullanıcı deneyimini hızlandırabilir. squid.conf dosyasında yapabileceğiniz bazı önemli önbellekleme ayarları şunlardır:

  • cache_dir: Önbelleğin fiziksel olarak nerede depolanacağını ve ne kadar yer kaplayacağını tanımlar. Örneğin:
    
            cache_dir ufs /var/spool/squid 10000 16 256
            


    Burada: ufs (Unix Filesystem) önbellek tipi, /var/spool/squid önbellek dizini, 10000MB (10GB) maksimum boyut, 16 ana dizin sayısı, 256 alt dizin sayısıdır. Daha büyük bir önbellek ve uygun dizin yapısı, performans için önemlidir. SSD sürücüler, önbellek performansı için idealdir.

  • maximum_object_size ve minimum_object_size: Önbelleğe alınacak nesnelerin maksimum ve minimum boyutunu belirler. Büyük dosyaların önbelleğe alınması bazen yarardan çok zarar getirebilir, bu yüzden bu limitleri ayarlamak önemlidir.
    
            maximum_object_size 10 MB
            minimum_object_size 0 KB
            

  • refresh_pattern: Squid'in web objelerini ne kadar süreyle önbelleğinde tutacağını ve ne zaman tazeleyeceğini belirleyen kurallardır. İyi ayarlanmış refresh_pattern'lar, önbellek isabet oranını (cache hit ratio) artırır.
    
            refresh_pattern -i \.(jpg|jpeg|png|gif|ico|css|js)$ 1440 50% 10080
            refresh_pattern .               0       20%     4320
            


    Bu örnek, belirli dosya türlerinin daha uzun süre önbellekte kalmasını sağlar.

Uzman İpucu: Önbellek Performansı İçin Disk Seçimi
Squid önbelleği için hızlı diskler (NVMe SSD'ler) kullanmak, I/O performansını önemli ölçüde artırarak genel proxy yanıt sürelerini hızlandırır. Ayrıca, Squid'in önbellek dizinini işletim sisteminin çalıştığı diskten ayrı bir diskte tutmak da önerilir.

Detaylı Erişim Kontrol Listeleri (ACL)

Squid'in ACL sistemi, proxy üzerinden kimlerin nereye ve ne zaman erişebileceğini son derece detaylı bir şekilde kontrol etmenizi sağlar. İşte bazı gelişmiş ACL örnekleri:

  • IP Bazlı Erişim: Belirli IP aralıklarından gelen isteklere izin verme veya reddetme.
    
            acl office_network src 192.168.1.0/24 10.0.0.0/8
            http_access allow office_network
            

  • Domain Bazlı Filtreleme: Belirli web sitelerine erişimi engelleme.
    
            acl forbidden_sites dstdomain .facebook.com .twitter.com .instagram.com
            http_access deny forbidden_sites
            


    Bu ACL'yi "beyaz liste" (yalnızca izin verilen siteler) veya "kara liste" (yasaklanan siteler) şeklinde de kullanabilirsiniz.

  • Zaman Bazlı Kısıtlamalar: Belirli zaman dilimlerinde erişimi kısıtlama.
    
            acl working_hours time M T W H F 09:00-17:00
            http_access deny forbidden_sites !working_hours
            


    Bu kural, yasaklı sitelere çalışma saatleri dışında izin verir.

  • Kullanıcı Kimlik Doğrulama: Proxy'ye erişim için kullanıcı adı ve şifre gerektirme. Squid, harici kimlik doğrulama yardımcıları (LDAP, NTLM, Basic Auth) ile entegre olabilir.
    
            auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwd
            auth_param basic children 5 startup=5 idle=1
            auth_param basic realm Squid proxy-server
            acl authenticated_users proxy_auth REQUIRED
            http_access allow authenticated_users
            


    Burada /etc/squid/passwd dosyası, htpasswd ile oluşturulan kullanıcı adı/şifre çiftlerini içerir.

Loglama ve İzleme

Squid, trafiği ve hata durumlarını detaylı bir şekilde loglar. Bu loglar, ağınızdaki kullanım alışkanlıklarını anlamak, sorun gidermek ve güvenlik ihlallerini tespit etmek için kritik öneme sahiptir.

  • access.log: Proxy üzerinden geçen tüm web isteklerini kaydeder.
  • cache.log: Squid'in kendi iç operasyonları, hataları ve uyarıları hakkında bilgi içerir.

Bu logları düzenli olarak izlemek ve merkezi bir log yönetim sistemiyle (ELK Stack, Grafana Loki) entegre etmek, ağınızın genel sağlığı hakkında değerli bilgiler sağlar.

Yüksek Kullanılabilirlik (High Availability)

Tek bir proxy sunucusunun arızalanması durumunda tüm ağ trafiğinin kesintiye uğramaması için yüksek kullanılabilirlik çözümleri düşünülmelidir. Birden fazla Squid proxy'sini bir yük dengeleyici (load balancer) arkasına yerleştirmek yaygın bir yaklaşımdır. Nginx veya HAProxy gibi araçlar, gelen proxy isteklerini uygun Squid sunucularına yönlendirebilir. Docker Swarm veya Kubernetes gibi konteyner orkestrasyon araçları, birden fazla Squid konteynerini yönetmeyi ve ölçeklemeyi kolaylaştırır.

Mobil Uyumluluk ve Proxy Ayarları

HPSR Proxy Stack'i sadece masaüstü bilgisayarlar için değil, mobil cihazlar için de kullanabilirsiniz. Mobil cihazlarda proxy ayarlarını yapmak biraz farklılık gösterebilir:

  • Android: Wi-Fi ağınızın ayarlarına gidin, ağı basılı tutun ve "Ağı değiştir" veya "Ağ ayarlarını düzenle" seçeneğini seçin. Gelişmiş seçenekleri göstererek Proxy bölümünde "Manuel" seçeneğini işaretleyin. Proxy ana bilgisayar adını (proxy sunucunuzun IP adresi veya domaini) ve proxy portunu (3128) girin.
  • iOS: Ayarlar > Wi-Fi bölümünden bağlı olduğunuz Wi-Fi ağının yanındaki "i" ikonuna dokunun. Aşağı kaydırarak HTTP Proxy bölümüne gelin, "Manuel"i seçin ve sunucu ile port bilgilerini girin.

Mobil cihazlar için web sayfalarını optimize etmek, aslında proxy'nin kendisinden ziyade, web sitesinin tasarımıyla ilgilidir. Ancak bir proxy, mobil cihazlara sunulan içeriği önbellekleyerek veya reklamları filtreleyerek dolaylı yoldan mobil deneyimi hızlandırabilir. Modern web geliştirme, genellikle CSS @media sorguları kullanılarak mobil uyumluluk sağlar:


/* Örnek bir CSS medya sorgusu */
@media only screen and (max-width: 600px) {
  body {
    font-size: 14px;
  }
  .container {
    width: 100%;
    padding: 10px;
  }
}

Bu tür optimizasyonlar, proxy'nin kendisinden bağımsız olup, web kaynaklarının daha küçük ekranlara uygun şekilde sunulmasını garanti eder. Proxy, bu optimizasyonlara sahip kaynakları daha hızlı ileterek kullanıcı deneyimini destekler.

Bu gelişmiş yapılandırmalar ve optimizasyon ipuçları ile HPSR Proxy Stack'inizi daha güçlü, daha güvenli ve daha verimli hale getirebilirsiniz. Unutmayın, her ağ ortamının kendine özgü ihtiyaçları vardır, bu yüzden ayarları kendi gereksinimlerinize göre uyarlamak önemlidir.

Gerçek Dünya Senaryoları ve HPSR Proxy Stack Uygulamaları

HPSR Proxy Stack, sunduğu güvenlik, performans ve kontrol yetenekleriyle geniş bir kullanım alanına sahiptir. Sadece basit bir internet erişim aracı olmanın ötesine geçerek, çeşitli sektörlerde ve durumlarda değer yaratabilir. İşte HPSR Proxy Stack'in gerçek dünyada nasıl kullanılabileceğine dair bazı vaka analizleri ve uygulama örnekleri:

Vaka Analizi 1: Eğitim Kurumlarında İçerik Filtreleme ve Güvenli Öğrenim Ortamı

Bir lise, öğrencilerin okul ağı üzerinden internete erişimini yönetmekte zorlanıyordu. Öğrenciler, ders dışı ve dikkat dağıtıcı web sitelerine (sosyal medya, oyun siteleri) erişiyor, bazen de uygunsuz içeriklere maruz kalabiliyorlardı. Okul yönetimi, bu durumu hem akademik performansı olumsuz etkilediği hem de öğrencilerin güvenliğini riske attığı için endişeliydi.

Uygulama: Okul, HPSR Proxy Stack'i devreye soktu. Ağdaki tüm öğrenci ve öğretmen trafiği, Docker üzerinde çalışan bir Squid proxy'si üzerinden yönlendirildi. SSL bumping özelliği sayesinde HTTPS trafiği de denetlenebildi. Squid'in ACL'leri kullanılarak, sosyal medya, oyun ve yetişkin içerikli siteler kara listeye alındı ve erişimleri engellendi. Ayrıca, zararlı yazılım dağıtan bilinen sitelere karşı da bir filtreleme uygulandı. Öğrencilerin internet erişimini belirli ders saatleri ile sınırlandırmak için zaman tabanlı ACL'ler de kullanıldı.

Sonuç: Bu uygulama sayesinde okul, öğrencileri için daha güvenli ve odaklanmış bir öğrenim ortamı yaratmayı başardı. Dikkat dağıtıcı unsurlar azaldı, uygunsuz içeriklere erişim engellendi ve ağ güvenliği önemli ölçüde arttırıldı. Ayrıca, sıkça erişilen eğitim kaynaklarının önbelleklenmesi sayesinde internet erişim hızı da arttı, bu da ders materyallerine daha hızlı ulaşımı sağladı.

Vaka Analizi 2: Yazılım Geliştirme Ekiplerinde Bağımlılık Önbelleklemesi

Büyük bir yazılım geliştirme şirketinde, onlarca yazılımcı günlük olarak çeşitli paket yöneticileri (npm, Maven, pip, NuGet vb.) aracılığıyla bağımlılıkları indiriyordu. Her geliştirici kendi makinesinde aynı bağımlılıkları tekrar tekrar indirdiği için, bu durum internet bant genişliğini aşırı derecede tüketiyor ve projelerin bağımlılık yükleme sürelerini uzatıyordu.

Uygulama: Şirket, geliştirme ağına HPSR Proxy Stack'i kurdu. Tüm paket yöneticisi trafiği (genellikle HTTP ve HTTPS üzerinden) bu Squid proxy'si üzerinden geçirildi. Squid, indirilen bağımlılıkları (jar dosyaları, npm paketleri, Python kütüphaneleri) önbelleğine aldı. SSL bumping sayesinde HTTPS üzerinden indirilen bağımlılıklar da önbelleklenebildi.

Sonuç: İlk indirmeden sonra, aynı bağımlılıklar tekrar talep edildiğinde, Squid bunları doğrudan önbelleğinden sundu. Bu durum, hem internet bant genişliği tüketimini %60'a kadar azalttı hem de projelerin bağımlılık yükleme sürelerini ortalama %70 oranında kısalttı. Geliştiriciler, daha hızlı derleme ve test süreçleriyle daha verimli çalışabildiler, bu da genel geliştirme hızını artırdı.

Vaka Analizi 3: Bölgesel İçerik Dağıtımını Optimize Etme ve Coğrafi Kısıtlamaları Aşma

Küresel çapta yayın yapan bir medya kuruluşu, belirli bölgelerdeki kullanıcılarının, coğrafi kısıtlamalar nedeniyle bazı içeriklere erişemediğini fark etti. Aynı zamanda, bu bölgelerdeki sunuculara olan mesafeden dolayı içerik yükleme süreleri de uzuyordu.

Uygulama: Kuruluş, HPSR Proxy Stack'i, içeriklerin sunulduğu ana sunuculara yakın farklı coğrafi konumlarda konuşlandırdı. Kullanıcılar, medya kuruluşunun sağladığı proxy ayarlarını kullanarak internete bağlandılar. Squid, hem web içeriğini önbellekledi hem de coğrafi kısıtlamaları aşmak için bir geçit görevi gördü. Örneğin, ABD'deki bir kullanıcının Avrupa'daki bir içeriğe erişmesi gerektiğinde, istek ABD'deki proxy üzerinden Avrupa'daki sunucuya gitti ve yanıt ABD'deki proxy'ye geri dönerek kullanıcıya iletildi. Bu sayede, içeriklere erişim sağlanırken, proxy'nin önbellekleme yeteneği sayesinde yükleme süreleri de minimize edildi.

Sonuç: HPSR Proxy Stack sayesinde, medya kuruluşu içeriklerini daha geniş bir kitleye ulaştırabildi ve coğrafi kısıtlamaları aşarak kullanıcı memnuniyetini artırdı. Ayrıca, içeriğin proxy üzerinden önbelleklenmesi, genel ağ trafiğini azalttı ve uluslararası bant genişliği maliyetlerinden tasarruf edilmesini sağladı.

Bu vaka analizleri, HPSR Proxy Stack'in sadece internet erişimini yönetmekle kalmayıp, aynı zamanda güvenlik, performans ve operasyonel verimlilik alanlarında somut faydalar sağlayabileceğini göstermektedir. Esnek yapısı sayesinde, farklı ihtiyaçlara ve senaryolara kolayca uyarlanabilir.

Sonuç: Güvenli, Hızlı ve Özelleştirilebilir Bir Proxy Çözümü

Bu rehber boyunca, HPSR Proxy Stack'in ne olduğunu, neden önemli olduğunu ve Docker, Squid ile geçerli SSL sertifikalarını kullanarak kendi HTTPS proxy sunucunuzu nasıl sıfırdan kuracağınızı detaylı bir şekilde inceledik. Modern internetin büyük ölçüde şifreli HTTPS trafiği üzerinden akması, geleneksel proxy çözümlerinin etkinliğini sınırlarken, HPSR Proxy Stack bu zorluğa güvenli, esnek ve yüksek performanslı bir yanıt sunmaktadır. İster bir eğitim kurumunun ağ güvenliğini artırmak, ister bir yazılım geliştirme ekibinin bağımlılık yönetimini hızlandırmak, isterse de bölgesel içerik dağıtımını optimize etmek olsun, HPSR Proxy Stack'in sunduğu olanaklar oldukça geniştir.

Kendi HPSR Proxy Stack'inizi kurarak, internet trafiğiniz üzerinde tam kontrol sahibi olursunuz. Squid'in güçlü önbellekleme mekanizmaları sayesinde web erişimini hızlandırabilir, ağ bant genişliğinden tasarruf edebilirsiniz. Kapsamlı erişim kontrol listeleri (ACL'ler) ile kimlerin, nereye ve ne zaman erişeceğini detaylı bir şekilde yönetebilir, böylece kurumsal güvenlik politikalarınızı uygulayabilir veya ev ağınızı güvence altına alabilirsiniz. Docker'ın getirdiği konteynerizasyon avantajları sayesinde ise, bu karmaşık sistemin dağıtımını, yönetimini ve ölçeklendirilmesini son derece kolay bir hale getirebilirsiniz. Üstelik Let's Encrypt ile ücretsiz ve otomatik olarak yenilenen SSL/TLS sertifikaları sayesinde, proxy trafiğinizi güvence altına alırken maliyetleri de minimumda tutarsınız.

Gelişmiş yapılandırma seçenekleri, performans optimizasyonları ve yüksek kullanılabilirlik stratejileri ile HPSR Proxy Stack'inizi ihtiyaçlarınıza göre şekillendirebilirsiniz. Bu, size sadece bir proxy sunucusu değil, aynı zamanda dijital altyapınız için stratejik bir kontrol noktası sunar. Güvenliği artırmak, performansı iyileştirmek ve ağınız üzerinde daha fazla görünürlük ve kontrol sağlamak isteyen herkes için HPSR Proxy Stack, kesinlikle değerlendirilmesi gereken bir çözümdür.

Sıkça Sorulan Sorular (SSS)

1. HPSR Proxy Stack performansı nasıl etkiler?

HPSR Proxy Stack, doğru yapılandırıldığında performansı genellikle olumlu yönde etkiler. Squid'in güçlü önbellekleme yetenekleri sayesinde, sıkça erişilen içerikler yerel olarak depolanır ve sonraki isteklerde çok daha hızlı sunulur. Bu, web sayfalarının daha hızlı yüklenmesini sağlar ve ağ bant genişliği kullanımını azaltır. Ancak, SSL bumping işlemi sırasında trafiğin şifresinin çözülüp yeniden şifrelenmesi, sunucunun işlemci gücünü bir miktar artırabilir. Yeterli donanım kaynakları (CPU, RAM, hızlı disk) ile bu ek yük minimize edilebilir ve genel performans hala önemli ölçüde artırılabilir.

2. Kendi sertifikalarımı kullanabilir miyim?

Evet, kesinlikle kullanabilirsiniz. Bu makalede gösterildiği gibi, HPSR Proxy Stack için kendinden imzalı bir CA sertifikası oluşturabilir ve bunu Squid'e entegre edebilirsiniz. Kurumsal ortamlarda, kurumun kendi iç CA'sından alınan sertifikalar veya belirli bir alan adı için satın alınan ticari SSL/TLS sertifikaları da kullanılabilir. Önemli olan, proxy'yi kullanacak istemci cihazlarının bu sertifikaya güvenmesi için ilgili CA sertifikasının cihazlara yüklü olmasıdır.

3. Mobil cihazlar için kurulum nasıl yapılır?

Mobil cihazlarda HPSR Proxy Stack'i kullanmak için, cihazın Wi-Fi veya hücresel ağ ayarlarından proxy yapılandırmasını manuel olarak ayarlamanız gerekir. Android ve iOS cihazlarında "Ayarlar" menüsü altında, bağlı olduğunuz Wi-Fi ağının detaylarında veya hücresel veri ayarlarında "Proxy" bölümünü bulabilirsiniz. Burada, proxy sunucunuzun IP adresini veya alan adını ve Squid'in dinlediği portu (genellikle 3128 veya 3129) girmeniz yeterlidir. Eğer SSL bumping kullanıyorsanız, oluşturduğunuz CA sertifikasını da mobil cihaza güvenilir bir sertifika olarak yüklemeniz gerekebilir.

4. Let's Encrypt sertifikaları otomatik yenilenir mi?

Evet, Let's Encrypt sertifikaları 90 gün geçerlidir ve otomatik olarak yenilenebilir. Certbot aracı bu süreci kolaylaştırır. Genellikle, sunucunuzda bir cron işi veya Docker Compose içinde ayrı bir Certbot yenileme servisi tanımlanır. Bu servis, düzenli aralıklarla sertifika yenileme komutunu çalıştırır. Yenileme başarılı olduğunda, Squid konteynerinin sertifikaların güncellenmiş hallerini kullanması için yeniden başlatılması (veya yapılandırmanın yeniden yüklenmesi) gerekebilir.

5. Sadece HTTPS trafiği için mi geçerlidir?

Hayır, HPSR Proxy Stack sadece HTTPS trafiği için geçerli değildir. Squid, HTTP, HTTPS, FTP ve diğer bazı ağ protokollerini destekleyen genel amaçlı bir proxy sunucusudur. Dolayısıyla, hem HTTP hem de HTTPS trafiğini yönetebilir, önbelleğe alabilir ve erişim kontrolü uygulayabilir. Bu rehberde özellikle HTTPS trafiğine odaklanmamızın nedeni, şifrelemenin getirdiği ek karmaşıklık ve HPSR Stack'in bu karmaşıklığı nasıl yönettiğini vurgulamaktı.

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.