Web Hosting & cPanel

    cPanel Leech Protection ile Parola Paylaşımını Engelleme

    Parola korumalı alanlarda ele geçen giriş bilgisinin kötüye kullanımını sınıra bağlayıp otomatik engelleyen Leech Protect rehberi.

    12 dk okuma Güncellendi: 10 Temmuz 2026

    Bir üyelik sitesi, kapalı bir eğitim portalı ya da yalnızca ekibinize açık bir yönetim alanı işletiyorsanız, o alanı bir kullanıcı adı ve parola ile koruyorsunuzdur. Sorun şu ki tek bir kullanıcı adı-parola çifti, sizin izin verdiğiniz kişinin elinden çıktığı anda kontrolünüzden de çıkar. Ücretli içeriğe erişen bir üye, giriş bilgisini bir foruma yapıştırır; kısa süre içinde onlarca, hatta yüzlerce farklı kişi aynı parolayla içeri girmeye başlar. Buna genellikle "parola sızması" ya da İngilizce adıyla "password leeching" denir ve hem gelirinizi hem de sunucunuzun kaynaklarını sessizce sömürür.

    cPanel, tam olarak bu senaryoya karşı tasarlanmış küçük ama etkili bir araç sunar: Leech Protection. Bu araç, parola korumalı bir dizine belirli bir zaman penceresi içinde aynı hesapla yapılan giriş sayısını sayar; bu sayı sizin belirlediğiniz eşiği aştığında, o hesabın kötüye kullanıldığını varsayar ve otomatik olarak devreye girer. Kullanıcıyı bir uyarı sayfasına yönlendirebilir, size e-posta atabilir ve dilerseniz ele geçen hesabı doğrudan askıya alarak paylaşılmış parolayı işe yaramaz hale getirebilir. Bu rehberde Leech Protect'in nasıl çalıştığını, Directory Privacy ile birlikte nasıl kurulduğunu, her ayarın gerçek dünyadaki anlamını ve doğru eşik değerini nasıl belirleyeceğinizi kıdemli bir sistem yöneticisinin bakış açısıyla, çalışan örneklerle ele alacağız.

    Leech Protection Tam Olarak Neyi Çözer?#

    Klasik dizin koruması (Directory Privacy) tek başına yalnızca bir soruyu yanıtlar: "Bu kişi doğru parolayı biliyor mu?" Doğru parolayı bilen herkese kapıyı açar ve kaç kişinin aynı parolayla girdiğiyle hiç ilgilenmez. İşte bu, üyelik modelinin en zayıf noktasıdır. Ödeme yaparak tek bir hesap açan bir kullanıcı, o hesabın bilgilerini yüzlerce kişiyle paylaşabilir ve teknik olarak hiçbir kural ihlal edilmemiş görünür; çünkü her giriş, geçerli parolayla yapılmıştır.

    Leech Protection bu boşluğu, davranışa bakarak kapatır. Mantığı basittir: gerçek bir insan, iki saatlik bir pencerede aynı hesapla belki üç, beş, en fazla on kez giriş yapar. Ama bir parola ele geçip internette dolaşmaya başladığında, aynı hesap kısa sürede çok daha yüksek sayıda giriş üretir. Leech Protect bu anormal yoğunluğu tespit eder ve normal bir kullanıcının asla ulaşamayacağı bir eşik aşıldığında hesabın "sızdırıldığına" karar verir.

    Aracın çözdüğü temel dertleri kısaca toparlayalım:

    • Paylaşılan parolaların kötüye kullanımı — tek hesabın kalabalık tarafından ortak kullanılmasını yakalar.
    • Kaynak sömürüsü — sızmış bir hesabın ürettiği ani trafik ve CPU yükünü sınırlar.
    • Gelir kaçağı — ücretli içeriğin bedava dağıtılmasını maliyetli hale getirir.
    • Otomatik müdahale — siz uyurken bile eşik aşıldığında devreye girip hesabı durdurabilir.

    Leech Protection'ın bir kaba kuvvet (brute force) koruması olmadığını baştan netleştirmek gerekir. Kaba kuvvet saldırısı, yanlış parolaları deneyerek doğru olanı bulmaya çalışır; onun için cPHulk ya da fail2ban gibi araçlar kullanılır. Leech Protect ise doğru parolanın çok fazla kez kullanılmasıyla ilgilenir. İkisi birbirinin yerine geçmez; birbirini tamamlar.

    Directory Privacy ile İlişkisi#

    Leech Protection tek başına çalışmaz. Yalnızca Directory Privacy (eski adıyla Password Protect Directories) ile korunan dizinlerde anlam kazanır. Sebebi mimaridir: Leech Protect'in sayabilmesi için önce sayılacak bir "giriş" olayının olması gerekir ve giriş olayını üreten şey, Apache'nin HTTP Basic Authentication katmanıdır. Directory Privacy açılmamış bir klasörde kimlik doğrulama olmadığı için Leech Protect'in izleyeceği hiçbir şey yoktur.

    Bu yüzden doğru sıralama şudur: önce korumak istediğiniz dizin için Directory Privacy'yi etkinleştirip en az bir kullanıcı hesabı oluşturursunuz, ardından aynı dizin için Leech Protection'ı açarsınız. Directory Privacy açtığınızda cPanel, ilgili klasöre şuna benzer bir .htaccess yazar:

    AuthType Basic
    AuthName "Uye Alani"
    AuthUserFile "/home/kullanici/.htpasswds/public_html/uyeler/passwd"
    require valid-user
    

    Kullanıcı adı ve parolalar ise .htpasswd biçiminde, dizin dışında bir konumda saklanır (yukarıdaki AuthUserFile yolu). Bir kullanıcı bu dizine eriştiğinde tarayıcı bir giriş kutusu gösterir; doğru bilgiler girildiğinde Apache erişime izin verir. Leech Protect'i devreye aldığınızda, bu başarılı girişleri hesap bazında saymaya başlayan bir katman eklenmiş olur.

    Şunu da unutmayın: koruma dizin bazlıdır, site geneli değildir. uyeler klasörünü koruyabilir, blog klasörünü serbest bırakabilirsiniz. Her korunan dizin için Leech Protect ayarlarını ayrı ayrı yaparsınız; birinde eşiği 8, diğerinde 20 belirleyebilirsiniz. Parola politikanızın bütününü sağlamlaştırmak için güçlü parola politikası rehberimizdeki ilkeleri de bu hesaplara uygulamanızı öneririm — zira zayıf bir parola, Leech Protect devreye girmeden çok önce sorun çıkarır.

    Leech Protect'i Adım Adım Etkinleştirme#

    Aracı devreye almak birkaç dakika sürer. Aşağıdaki akış, güncel cPanel arayüzü (Jupiter teması) içindir:

    1. cPanel'e giriş yapın ve ana ekranda Güvenlik (Security) bölümüne inin.
    2. Leech Protection simgesine tıklayın. Karşınıza sitenizin dizin ağacı gelir.
    3. Korumak istediğiniz, daha önce Directory Privacy ile parola korumaya aldığınız dizine tıklayarak içine girin ve o dizini seçin.
    4. Açılan ayar ekranında şu alanları doldurun:
      • Belirli bir zaman penceresinde izin verilen giriş sayısı — cPanel varsayılan olarak iki saatlik bir pencere kullanır. Buraya makul bir üst sınır yazın (örneğin 8).
      • Yönlendirme URL'si (URL to redirect leech users to) — eşik aşıldığında kullanıcının gönderileceği sayfa.
      • Uyarı e-postası adresi — sızma tespit edildiğinde bildirim gitmesini istediğiniz e-posta.
      • Ele geçen hesapları devre dışı bırak (Disable compromised accounts) — işaretlenirse, eşiği aşan hesabın parolası otomatik geçersiz kılınır.
    5. Enable düğmesine basın. Koruma o an aktif olur; ayrı bir kaydetme adımı gerekmez.

    Korumayı kaldırmak isterseniz aynı ekrandan Disable düğmesini kullanabilirsiniz. Ayarları değiştirmek için de dizine tekrar girip yeni değerleri yazıp yeniden Enable demeniz yeterlidir.

    Ayarların Detaylı Anlamı#

    Bu aracın gücü, dört ayarın birlikte nasıl davrandığını anlamaktan geçer. Tek tek inceleyelim.

    Zaman penceresindeki giriş sınırı. Bu, korumanın kalbidir. cPanel, bir hesabın son iki saat içindeki başarılı giriş sayısını takip eder; bu sayı sizin verdiğiniz değeri aşarsa hesap "sızdırılmış" sayılır. Değeri çok düşük tutarsanız, aynı parolayı meşru biçimde birden çok cihazda kullanan bir aile ya da ekip yanlışlıkla engellenir. Çok yüksek tutarsanız koruma pratikte hiç tetiklenmez. Gerçek kullanım verinize göre kalibre etmeniz gerekir; bir sonraki bölümde bunun için somut bir yöntem vereceğim.

    Yönlendirme URL'si. Eşik aşıldığında kullanıcı bu adrese gönderilir. Burada iki iyi uygulama vardır. Birincisi, kullanıcıya ne olduğunu açıklayan nazik bir sayfa göstermek ("Bu hesapta olağandışı erişim tespit edildi, lütfen destekle iletişime geçin"). İkincisi, bu sayfayı korunan dizinin dışında tutmak; aksi halde yönlendirdiğiniz sayfa da aynı korumaya takılır ve döngü oluşur. https://siteniz.com/hesap-askida.html gibi tamamen açık bir sayfa idealdir.

    Uyarı e-postası. Otomatik müdahale ne kadar iyi olsa da, olup bitenden haberdar olmak istersiniz. Buraya düzenli takip ettiğiniz bir adres yazın. Her tetiklenmede hangi hesabın, ne zaman sınırı aştığını bildiren bir e-posta alırsınız; bu, bir üyenin kasıtlı olarak mı parola paylaştığını yoksa gerçek bir teknik sorun mu yaşandığını ayırt etmenize yardımcı olur.

    Ele geçen hesapları devre dışı bırak. Bu kutucuk, korumanın "yumuşak" mı yoksa "sert" mi davranacağını belirler. İşaretli değilse, kullanıcı yalnızca yönlendirilir ama parolası çalışmaya devam eder — yani sızıntı durmaz, sadece o anki oturum kesilir. İşaretliyse, eşiği aşan hesabın parolası otomatik olarak geçersiz kılınır; paylaşılmış parola anında ölür ve gerçek kullanıcı sizinle iletişime geçip yeni parola almak zorunda kalır. Ücretli üyelik modellerinde bu kutunun işaretli olmasını şiddetle öneririm.

    Aşağıdaki tablo, iki temel çalışma modunun farkını özetler:

    AyarYumuşak mod (kutu işaretsiz)Sert mod (kutu işaretli)
    Eşik aşıldığındaKullanıcı yönlendirilirHesap askıya alınır
    Paylaşılan parolaÇalışmaya devam ederAnında geçersiz olur
    Gerçek kullanıcı etkisiDüşükYeniden parola almalı
    Sızıntıyı durdurma gücüZayıfGüçlü
    Uygun senaryoİç ekip alanıÜcretli üyelik

    Perde Arkası — Nasıl Uygulanıyor?#

    Leech Protect sihir değildir; Apache'nin kimlik doğrulama akışına bağlı, dosya tabanlı bir sayaçtan ibarettir. Korumayı açtığınızda cPanel, dizinin .htaccess dosyasına Basic Auth tanımının yanı sıra, giriş olaylarını cPanel'in leechprotect bileşenine yönlendiren bir kayıt ekler. Her başarılı girişte bu bileşen çalışır, hesabın son penceredeki giriş sayısını günceller ve eşikle karşılaştırır. Eşik aşılırsa yönlendirme ve (seçiliyse) askıya alma tetiklenir.

    Bu mekanizmayı kavramanın pratik faydası şudur: koruma yalnızca Apache üzerinden geçen isteklerde çalışır. Nginx'in doğrudan servis ettiği ya da bir uygulama katmanının kendi başına yaptığı girişlerde Leech Protect devrede olmaz. Kendi uygulama seviyesi girişleriniz (örneğin bir PHP üyelik sistemi) varsa, benzer bir sınırı uygulama tarafında kurmanız gerekir. Nginx tabanlı bir yığında, korunan bir alana yapılan istekleri hız sınırına bağlamak için şuna benzer bir yapı kullanabilirsiniz:

    # Her IP icin dakikada en fazla 10 istek
    limit_req_zone $binary_remote_addr zone=uyeler:10m rate=10r/m;
    
    location /uyeler/ {
        limit_req zone=uyeler burst=5 nodelay;
        auth_basic "Uye Alani";
        auth_basic_user_file /etc/nginx/.htpasswd;
    }
    

    Bu, hesap bazlı değil IP bazlı bir sınırdır; yani birebir Leech Protect'in yerini tutmaz ama benzer bir kötüye kullanım eşiği kurar. Uygulama düzeyinde hesap bazlı bir sayaç isterseniz, girişleri veritabanında pencereleyerek de sayabilirsiniz:

    -- Son 2 saatte bu hesaptan kac basarili giris oldu?
    SELECT COUNT(*) AS giris_sayisi
    FROM login_log
    WHERE username = 'uye42'
      AND success = 1
      AND created_at >= NOW() - INTERVAL 2 HOUR;
    

    Sonuç eşiğinizi aşıyorsa, aynı Leech Protect mantığıyla hesabı geçici olarak dondurabilirsiniz. Sunucu genelindeki güvenlik katmanlarını nasıl birlikte kurgulayacağınızı sunucu güvenliği temelleri rehberimizde daha geniş ele alıyoruz.

    Doğru Sınırı Belirleme#

    En sık yapılan hata, eşiği tahminle koymaktır. Doğru yaklaşım, gerçek kullanım verinize bakmaktır. Directory Privacy açık bir dizinin erişim kayıtlarını (access log) inceleyerek meşru bir kullanıcının pencerede ortalama kaç giriş ürettiğini görebilirsiniz:

    # Son access log'da 'uyeler' dizinine yapilan 200/OK erisimleri say
    grep "/uyeler/" ~/access-logs/siteniz.com \
      | grep " 200 " \
      | awk '{print $1}' \
      | sort | uniq -c | sort -rn | head
    

    Bu çıktı size IP başına erişim yoğunluğunu verir. Normal kullanıcıların büyük çoğunluğu düşük bir bantta toplanır; asıl sızıntı, listenin en tepesindeki anormal derecede yüksek sayaçlarda kendini gösterir. Eşiğinizi, normal kullanıcıların tavanının biraz üstüne koyarsınız. Pratik bir başlangıç referansı olarak şu değerler işe yarar:

    Kullanım türüÖnerilen giriş sınırı
    Kişisel / tek kullanıcı alan4
    Küçük ekip (5-10 kişi)8
    Aile / paylaşımlı üyelik12
    Yüksek trafikli üyelik sitesi20

    Bu değerleri değişmez kurallar değil, kalibrasyon başlangıçları olarak görün. İlk hafta uyarı e-postalarını dikkatle izleyin. Meşru kullanıcılardan şikayet geliyorsa eşiği yükseltin; hiç tetiklenmiyor ama sızıntıdan şüpheleniyorsanız düşürün. Ölçüp ayarlamak, tek seferde mükemmel değeri bulmaya çalışmaktan her zaman daha isabetlidir.

    Diğer Güvenlik Katmanlarıyla Birleştirmek#

    Leech Protection, güvenlik yığınınızda tek başına duran bir kale değil, bir katmandır. En iyi sonucu, onu tamamlayıcı önlemlerle birlikte kullandığınızda alırsınız:

    • Kaba kuvvete karşı cPHulk / fail2ban — yanlış parola denemelerini durdurur; Leech Protect'in kör olduğu alandır.
    • Güçlü parola zorunluluğu — sızması ve tahmin edilmesi zor parolalar, korumanın hiç tetiklenmesine gerek kalmamasını sağlar.
    • HTTPS / SSL — parolaların ağ üzerinde açık gitmesini engeller; bunun için ücretsiz SSL kurmayı ihmal etmeyin.
    • WAF ve DDoS korumasıWAF ve DDoS koruma katmanları, otomatik botların korunan alana yük bindirmesini uygulama seviyesinde filtreler.
    • Düzenli yedek — hesap askıya alma gibi otomatik müdahaleler nadiren de olsa yanlış tetiklenebilir; geri dönebilmek için düzenli yedekleme şarttır.

    Bu katmanların hepsi, kaliteli bir web hosting ya da yönetimini bize bırakacağınız bir reseller hosting planı üzerinde çalıştığında en yüksek verimi verir. Alt yapı ne kadar sağlamsa, Leech Protect gibi araçların doğru ve kesintisiz çalışması da o kadar garantidir.

    Sık Yapılan Hatalar ve Sorun Giderme#

    Leech Protection'ın "açtım ama çalışmıyor" ya da "yanlış kişileri engelliyor" şeklinde bildirilen sorunları neredeyse her zaman aynı birkaç sebebe dayanır.

    Directory Privacy açık değil. En yaygın hata budur. Leech Protect yalnızca parola korumalı dizinlerde iş görür. Koruma tetiklenmiyorsa, önce ilgili dizinde Directory Privacy'nin gerçekten aktif olduğunu ve en az bir kullanıcı tanımlandığını doğrulayın.

    Yönlendirme URL'si korunan dizinin içinde. Yönlendirilen sayfayı da aynı korumalı klasöre koyarsanız, engellenen kullanıcı yönlendirildiği sayfada tekrar engellenir. Yönlendirme hedefini daima korumasız, herkese açık bir adrese verin.

    Eşik gerçek kullanımın altında. Meşru üyeler engelleniyorsa büyük olasılıkla sınırı fazla düşük tutmuşsunuzdur. Ortak bağlantı (NAT arkasındaki ofisler, mobil operatör ağları) çok sayıda kullanıcıyı tek IP gibi gösterebileceğinden, ekip alanlarında eşiği cömert tutun.

    Sert mod açıkken kullanıcıya bilgi verilmiyor. "Ele geçen hesapları devre dışı bırak" işaretliyken hesabı otomatik askıya alıyorsanız, gerçek kullanıcının nasıl yeni parola alacağını yönlendirme sayfasında net anlatın. Aksi halde meşru üye, sebebini anlamadan dışarıda kalır.

    Uygulama seviyesi girişler. Sitenizin girişleri Apache Basic Auth yerine kendi PHP/uygulama katmanınızdan geçiyorsa, Leech Protect bunları hiç görmez. Bu durumda sınırı uygulama tarafında kurmanız gerekir.

    Sıkça Sorulan Sorular#

    Leech Protection kaba kuvvet saldırısını da engeller mi?#

    Hayır, bu iki koruma tamamen farklı tehditleri hedefler ve birbirinin yerine geçmez. Kaba kuvvet saldırısı yanlış parolaları arka arkaya deneyerek doğru olanı bulmaya çalışır; bunun için cPHulk ya da fail2ban gibi başarısız giriş denemelerini izleyen araçlar kullanılır. Leech Protection ise doğru parolanın kısa sürede çok fazla kez kullanılmasıyla, yani paylaşılmış geçerli bir hesapla ilgilenir. İkisini birlikte açık tutmak en sağlıklı yaklaşımdır.

    Leech Protect'i açmak için mutlaka Directory Privacy şart mı?#

    Evet, Leech Protection yalnızca parola korumalı dizinlerde anlam kazanır ve çalışabilir. Sayabilmesi için önce bir kimlik doğrulama olayının, yani Apache Basic Authentication üzerinden yapılan bir girişin olması gerekir. Bu yüzden önce ilgili dizinde Directory Privacy'yi etkinleştirip en az bir kullanıcı hesabı oluşturmanız, ardından Leech Protect'i açmanız gerekir. Korumasız bir klasörde araç izleyecek hiçbir giriş bulamaz.

    Eşiği aştığında meşru bir kullanıcı yanlışlıkla engellenirse ne olur?#

    Bu durumda kullanıcının etkisi, seçtiğiniz moda bağlıdır. Yumuşak modda kullanıcı yalnızca yönlendirme sayfasına gönderilir, parolası çalışmaya devam eder ve pencere dolduğunda erişimi normale döner. Sert modda ise hesap askıya alınır ve kullanıcının yeni bir parola alması gerekir. Bu yüzden ekip ya da aile gibi paylaşımlı meşru kullanımlarda eşiği cömert tutmak ve yönlendirme sayfasında iletişim yolunu açıkça belirtmek önemlidir.

    Ele geçen hesabı otomatik askıya alma seçeneğini açmalı mıyım?#

    Ücretli bir üyelik ya da gelir üreten kapalı içerik işletiyorsanız kesinlikle açmanızı öneririm. Bu seçenek işaretli olduğunda, eşiği aşan paylaşılmış parola anında geçersiz kılınır ve sızıntı fiilen durur. İç ekip alanları gibi düşük riskli senaryolarda ise yumuşak modda kalıp yalnızca uyarı almayı tercih edebilirsiniz. Karar, yanlış engellemenin maliyeti ile sızıntının maliyeti arasındaki dengeye bağlıdır.

    Leech Protection sunucu performansını etkiler mi?#

    Pratikte etkisi ihmal edilebilir düzeydedir çünkü araç yalnızca başarılı girişlerde çalışan hafif, dosya tabanlı bir sayaçtan ibarettir. Her istekte ağır bir hesaplama yapmaz; sadece korunan dizine giriş anında hesabın pencere içindeki sayısını günceller. Aksine, sızmış bir hesabın ürettiği yüzlerce isteğin oluşturacağı yükü engellediği için genel performansı korur. Yani doğru kurulduğunda performansı düşürmez, korur.

    Aynı anda birden fazla dizini farklı ayarlarla koruyabilir miyim?#

    Evet, Leech Protection ayarları tamamen dizin bazlıdır. Her korunan klasör için ayrı bir giriş sınırı, ayrı bir yönlendirme URL'si ve ayrı bir uyarı e-postası tanımlayabilirsiniz. Örneğin ücretli üye alanınızda eşiği 8 ve sert modu açık tutarken, iç ekip panelinizde eşiği 20 ve yumuşak modu tercih edebilirsiniz. Bu esneklik, farklı risk profillerine sahip alanları tek panelden yönetmenizi sağlar.

    Kapanış#

    Leech Protection, cPanel'in en az konuşulan ama en pratik güvenlik araçlarından biridir. Directory Privacy ile birlikte kurduğunuzda, geçerli bir parolanın bile kalabalık tarafından kötüye kullanılmasına karşı otomatik, davranış temelli bir savunma elde edersiniz. Doğru eşiği ölçerek belirlemek, yönlendirme sayfasını korumanın dışında tutmak ve ücretli modellerde otomatik askıya almayı açmak, bu aracı gerçekten işler hale getiren üç temel ilkedir. Onu tek başına değil, güçlü parola politikası, SSL, WAF ve düzenli yedekle birlikte bir katman olarak konumlandırdığınızda üyelik alanınız ciddi biçimde güçlenir.

    Clou.TR'de sunduğumuz cPanel tabanlı web hosting planları, Leech Protection dahil tüm güvenlik araçlarını hazır olarak sunar; daha fazla kaynak ve tam kontrol isteyen üyelik siteleri için VDS sunucularımızı ya da yönetimini bize bırakabileceğiniz sunucu yönetimi hizmetimizi değerlendirebilirsiniz. Kurulumda takılırsanız destek ekibimiz, korumayı sizin kullanım profilinize göre kalibre etmekten memnuniyet duyar.

    cPanelGüvenlik

    Uygulamaya geçmeye hazır mısınız?

    NVMe SSD, ücretsiz SSL ve %99.9 uptime garantisiyle Clou.TR hosting ve sunucu çözümleriyle projenizi hayata geçirin.