Belirli bir kullanıcı grubunun (ör. iç ağ, test ekibi) hiç engellenmemesini nasıl sağlarım?
Kısa cevap
Kesin yol Whitelist Condition'dır: Whitelist & Blacklist penceresinde kullanıcı grubunun adreslerini tanımlayan bir Source IP koşulu seçilir; koşula uyan istekler WAF denetimine hiç girmez, kara liste ve tarama süre sınırı nedeniyle de engellenmez, Event Logs'a yazılmaz ve öğrenmeye katılmaz. Denetimin sürmesi ama engelleme olmaması isteniyorsa iki öğrenme kimliği vardır. Teacher kimliğiyle gelen istekler denetlenir ama engellenmez; engelleme eşiğine ulaşanlar ya da durumu Monitor olan bir imzayı tetikleyenler dönem sonunda kural setine öğretilir; yalnızca güvenilen test ekibi için uygundur. Conditional Learning kimliğiyle gelen istekler host grubunun modundan bağımsız olarak Learning modundaki gibi işlenir: engellenmez, öğrenme kaydına yazılır, kural setini kendiliğinden değiştirmez. Bu iki kimlikte taraması süre sınırını aşan istek de engellenmez. Kullanıcı grubu ayrı bir alan adı kullanıyorsa o alan adı ayrı bir Virtual Host Group'ta Monitor modunda tutulabilir. Frontend Blacklist Exclusions ise yalnızca kara liste isabetini kaldırır; WAF denetimi ve engelleme sürer.
Sorun: İç Ağ ya da Test Ekibi Engelleniyor
İç ağdaki kullanıcıların ya da test ekibinin WAF tarafından engellenmemesi gerekiyor. Seçenekler, isteklerin denetlenmeye devam edip etmediği ve kural setine etkisi bakımından farklıdır.
Çözüm: 4 Yöntem
| Durumunuz | Uygun yöntem |
|---|---|
| Kullanıcı grubunun istekleri hiç denetlenmesin | Yöntem 1: Whitelist Condition |
| Denetlensin, engellenmesin ve false positive'ler kural setine öğretilsin (test ekibi) | Yöntem 2: Teacher |
| Denetlensin, engellenmesin ve öğrenme kaydına yazılsın (analiz için) | Yöntem 3: Conditional Learning |
| Kullanıcı grubu ayrı bir alan adı kullanıyor | Yöntem 4: Ayrı Virtual Host Group |
Yöntem 1: Whitelist Condition Önerilen
- Nasıl çalışır Koşula uyan istek WAF denetiminin tümüyle dışında tutulur (Belirli IP'leri veya istekleri WAF incelemesinden tamamen muaf tutabilir miyim (Whitelist Condition)?). Ayar vService geneldir; bütün host gruplarında geçerlidir.
- Nerede açılırLoad Balancer → Conditions · Left Monitor Panel → WAF-Protected vServices → vService → WAF Management → Inspection & Blocking → Whitelist & Blacklist kartı
- Gereksinim WAF alanında değiştirme yetkisi (koşul oluşturulacaksa Load Balancer alanında da); TR7 önünde CDN ya da proxy varsa gerçek istemci adresinin Trusted Proxy ile çözülmesi
- vService tipi HTTP
Adım adım yapılandırma
Kullanıcı grubunun adresleri için henüz koşul yoksa sol alttaki TR7 logosuyla Configuration Menu açılır; Load Balancer → Conditions ekranında Add tıklanır.
Criteria = Source IP, Source IP Type = Manual seçilip kullanıcı grubunun adresleri ve blokları girilir (ör. 198.51.100.0/24).
Koşul Add ile kaydedilir.
Left Monitor Panel → WAF-Protected vServices → vService → WAF Management sekmesinde, Inspection & Blocking bölümündeki Whitelist & Blacklist kartının sağ üstündeki kalem ikonu tıklanır (Whitelist & Blacklist Edit ekranı).
Whitelist Condition anahtarı açılır ve altında beliren koşul birleştiricide 3. adımdaki koşul seçilir. Koşul alanı boş bırakılırsa kayıt yapılamaz.
Penceredeki Edit tıklanır. Cluster'da değişiklik varsayılan auto-sync ile eş cihaza da gönderilir; Manual Sync Mode açıksa Synchronize ile elle gönderilir.
Aynı ayar WEB-CLI'da da yapılır. Koşul oluşturulur, kimliği listeden alınır ve ayara yazılır (WAF kapsamı). --syncWithDefaultFwRules saklanan bir ayar değil, bir yazma tetiğidir: yalnız true yazıldığında Any Paths kuralı varsayılan tanımıyla yeniden kurulur; komutta yazılmazsa kural setine dokunulmaz. Komuttaki false bunu açıkça belirtir (Sync with Default WAF Rules):
lb condition add criteria src_ip srcIpType manual src "198.51.100.0/24" --name ic-ag
lb condition list
waf options update poolId <vService> --syncWithDefaultFwRules false --wafConditionEnabled true --wafCondition "<koşul-kimliği>"Doğrulama
WAF Management sekmesindeki kartın satırına bakılır.
Requests matching this condition skips WAF inspection: + koşulKullanıcı grubundan istek geldikten sonra vService'in Dashboard sekmesinde WAF Inspection Distribution paneline bakılır.
Whitelisted dilimi artar · Event Logs'ta bu adreslerden yeni kayıt yokYöntem 2: Teacher
- Nasıl çalışır Teacher kimliğiyle gelen istekler denetlenir ama hiçbir modda engellenmez (taraması süre sınırını aşan istek de geçirilir); engelleme eşiğine ulaşan ya da durumu Monitor olan bir imzayı tetikleyen istekler Event Logs'a Teacher kararıyla yazılır ve Teaching Frequency döneminin sonunda kural setine öğretilir (Teacher, false positive'leri azaltmak için nasıl kullanılır?).
- Nerede açılır Left Monitor Panel → WAF-Protected vServices → vService → WAF Management → Learning & Reporting → Learning Methods kartı
- Gereksinim WAF alanında değiştirme yetkisi; host grubu Monitor ya da Blocking modunda; güvenilen, dar bir kullanıcı grubu
- vService tipi HTTP
Adım adım yapılandırma
WAF Management sekmesinde Learning & Reporting bölümündeki Learning Methods kartının sağ üstündeki kalem ikonu tıklanır.
Pencerenin sonundaki Teacher anahtarı açılır.
Teacher IP alanına test ekibinin IPv4 adresleri boşlukla ayrılarak girilir (ör. 198.51.100.25) ya da Teacher Cookie / Teacher Header alanına TR7-LEARN cookie'sinin ya da header'ının değeri yazılır.
Teaching Frequency listesinden işlenme dönemi seçilir (ör. 5 minutes). None seçilirse istekler engellenmez ama kurala dönüştürülmez.
Penceredeki Edit tıklanır.
Doğrulama
Test ekibinin engelleme eşiğine ulaşan bir isteğinin kaydında Action ikonunun cümlesine bakılır.
Not blocked — Teacher IP matchedYöntem 3: Conditional Learning
- Nasıl çalışır Kimlikle gelen istekler host grubunun modundan bağımsız olarak Learning modundaki gibi işlenir: engellenmez, Event Logs'a yazılmaz, öğrenme kaydına yazılır ve Analysis & Learning koşusunun girdisi olur (Conditional Learning ile Teacher arasındaki fark nedir; hangisini ne zaman kullanmalıyım?). Learning modunda yapısal denetimler çalışmaz.
- Nerede açılır Left Monitor Panel → WAF-Protected vServices → vService → WAF Management → Learning & Reporting → Learning Methods kartı
- Gereksinim WAF alanında değiştirme yetkisi
- vService tipi HTTP
Adım adım yapılandırma
WAF Management sekmesinde Learning Methods kartının sağ üstündeki kalem ikonu tıklanır.
Conditional Learning anahtarı açılır.
Conditional Learning IP alanına adresler girilir ya da Conditional Learning Cookie / Conditional Learning Header alanına TR7-ANALYZE cookie'sinin ya da header'ının değeri yazılır.
Penceredeki Edit tıklanır. Yöntem kapatılırken kimlik alanları kendiliğinden silinmez ve alanlarda kalan kimlik anahtar kapalıyken de eşleşmeye devam eder. Anahtar kapatıldığında alanlar formdan gizlendiği ve gizli alanlardaki değişiklik kaydedilmediği için yöntem bırakılırken alanlar, anahtar kapatılmadan önce ayrı bir kayıtla boşaltılır (Learning log'un disk ve işlemci yükü nasıl kontrol altında tutulur (Smart Sampling)?).
Doğrulama
WAF Management sekmesindeki kartın satırına bakılır.
Conditional learning is on — the analyst is recognised by IPYöntem 4: Ayrı Virtual Host Group
- Nasıl çalışır Host grubu isteğin Host değerine göre seçildiği için kullanıcı grubunun kullandığı alan adı ayrı bir grupta Monitor modunda tutulur; istekler denetlenir ve kaydedilir ama engellenmez (Aynı vService'te farklı domainler için farklı modlar kullanabilir miyim?). Adrese göre ayrım yapılamaz.
- Nerede açılır Left Monitor Panel → WAF-Protected vServices → vService → WAF Management → Virtual Host Groups bandı
- Gereksinim WAF alanında değiştirme yetkisi; kullanıcı grubunun ayrı bir alan adı (ör.
test.example.com) kullanması - vService tipi HTTP
Adım adım yapılandırma
WAF Management sekmesinde Virtual Host Groups bandının sağ üstündeki ikonla yeni grup penceresi açılır (Host Group nasıl eklenir; Virtual Host Patterns alanına ne yazılır?).
Virtual Host Group Name girilir, WAF Mode = Monitor Mode seçilir ve Virtual Host Patterns alanına alan adı yazılır (ör. test.example.com).
Add tıklanır.
Doğrulama
Alan adına gelen ve saldırı kaydı üreten bir isteğin Action ikonunun cümlesine bakılır.
Not blocked — Monitor modeSık Yapılan Hatalar
- Whitelist koşulunu geniş tutmak. Koşula uyan her istek denetimsiz geçer; aynı adreslerden gelen saldırılar da.
- Frontend Blacklist Exclusions'ı muafiyet sanmak. Yalnızca kara liste isabetini kaldırır; imza ve yapısal ihlaller engellenmeye devam eder (Event Logs'taki "Add to Whitelist (vService)" bir IP'yi WAF incelemesinden muaf tutar mı, yoksa yalnızca kara liste istisnası mı ekler?).
- Teacher'ı iç ağın tamamına açmak. İç ağdaki her istemcinin engellenecek istekleri kural setine öğretilir ve koruma gevşer (Yanlış tanımlanmış bir Teacher'ın riski nedir?).
- Kimliği kapatınca alanların temizlendiğini sanmak. Teacher ya da Conditional Learning kapatıldığında kimlik alanları korunur; Conditional Learning'de alanlarda kalan kimlik anahtar kapalıyken de eşleşmeye devam eder; alanlar anahtar kapatılmadan önce ayrı bir kayıtla boşaltılır.
- CDN arkasında proxy adresini tanımlamak. Gerçek istemci adresi çözülmüyorsa koşul CDN'in adresine uyar ve bütün ziyaretçiler muaf olur.
Dokümantasyonda nasıl yapılır
