AI Learning hiçbir öneri üretmiyor; neden?
Kısa cevap
AI Learning girdi olarak yalnızca Event Logs'a yazılan saldırı kayıtlarını kullanır ve bir false positive'i, aynı host group, sayfa kuralı, denetim alanı ve parametre için Learning Methods penceresindeki eşiklerin tamamı (varsayılan Required Requests 10, Required Clients 5, Required Countries 1) karşılandığında kural setine uygular. Öneri çıkmıyorsa sırasıyla şunlara bakılır: AI Learning Frequency seçilmemişse değerlendirme hiç çalışmaz ve Learning methods kartında "AI learning is on but no period is selected" uyarısı görünür; host group Learning Mode'daysa ya da istekler Conditional Learning kimliği taşıyorsa Event Logs kaydı oluşmadığı için girdi yoktur; WAF Log Suppression Condition'a uyan kayıtlar değerlendirilmez; Country Filter doluysa listede olmayan ülkelerin kayıtlarını, Only Browsers, Only Valid Domain Names ve Skip Blacklist IPs işaretliyse koşula uymayan kayıtları eler; tek bir test istemcisinden ya da TR7 bir CDN arkasındayken Trusted Proxy tanımsızsa farklı istemci ve ülke eşikleri dolmaz. Cluster kurulumunda kanıt cihaz başına ayrı sayılır. Adayların hangi eşikte takıldığı AI Learning Tracking görünümünde Refresh tıklanarak görülür; bilinen bir false positive Learn Selected ile beklemeden uygulanır.
Sorun: AI Learning Açık Ama Hiçbir Şey Öğrenmiyor
AI learning açıldıktan sonra günler geçtiği hâlde AI Learning History görünümü boş; Event Logs'ta aynı false positive tekrar tekrar görünmesine karşın kendiliğinden temizlenmiyor. AI learning, bir false positive'i ancak yeterince yaygın ve meşru göründüğünde öğrenir; girdinin, süzgeçlerin ve eşiklerin her biri bu kararı durdurabilir (AI Learning nedir, nasıl çalışır?).
Olası Nedenler
| Neden | Nasıl ayırt edilir |
|---|---|
| AI learning açık ama AI Learning Frequency None | Learning Methods kartında "AI learning is on but no period is selected" uyarısı |
| Henüz değerlendirme zamanı gelmedi | Kartta "AI learning is on — traffic is evaluated collectively every …" cümlesindeki dönem; değerlendirme zamanları cihaz saatine göre gün başından itibaren hesaplanır (ör. 6 hours seçiliyken 00:00, 06:00, 12:00 ve 18:00; 1 days seçiliyken 00:00) |
| Host group Learning Mode'da ya da istekler Conditional Learning kimliği taşıyor | Mod kartında Learning mode; Event Logs'ta kayıt yok |
| False positive Event Logs kaydı üretmiyor: kayıt yalnızca puan engelleme eşiğine ulaştığında ya da Monitor durumundaki bir imza tetiklendiğinde yazılır | Event Logs'ta ilgili istekler için satır yok (Log hangi durumda üretilir?) |
| Kayıtlar WAF Log Suppression Condition'a uyuyor | Log Settings kartında "WAF logging is suppressed for requests matching:" satırı |
| Country Filter istemcilerin ülkesini içermiyor | AI Learning Tracking'de aday yok; Event Logs'taki Country sekmesinde kayıtların ülkesi filtrede yok |
| Only Browsers işaretli; istemciler tarayıcı değil (mobil uygulama, API istemcisi, entegrasyon) | Event Logs'taki Browser sekmesi boş ya da User Agent bir kütüphane adı |
Only Valid Domain Names işaretli; Host başlığı büyük harf ya da port içeriyor (www.example.com:8443) veya IPv6 adresi | Event Logs'taki Host sekmesi; sade bir IPv4 adresinden oluşan Host ise geçerli sayılır ve elenmez |
| Skip Blacklist IPs işaretli; kaynak adresler kara listede | Event Logs'taki Blacklist sekmesinde Yes |
| Eşikler dolmuyor: öneri az sayıda istemciden, tek ülkeden ya da tek ağdan geliyor | AI Learning Tracking'de satırın Learning Progress değeri %100'ün altında; önizlemedeki kırılımda takılan eksen (Request, Client, Country, ASN network) |
| TR7 bir CDN ya da proxy arkasında ve vService'e Trusted Proxy profili atanmamış; bütün trafik birkaç proxy adresinden geliyor gibi görünüyor | Event Logs'ta Client IP değerleri CDN adresleri; X-Forwarded-For sekmesinde gerçek adresler |
| Cluster kurulumunda trafik iki cihaza bölünüyor; her cihaz eşiği kendi kayıtlarıyla doldurmak zorunda | AI Learning Tracking'de aynı öneri iki satır olarak görünüyor ve her satırın sayıları düşük |
| Kural seti bu isteğe zaten izin veriyor | Event Logs önizlemesinin Attacks sekmesinde Learning Suggestion = Already learned |
Kesin kurallar:
- AI learning yalnızca Event Logs kayıtlarını okur; öğrenme günlüğünü (Learning mode ve Conditional learning kayıtları) okumaz. Learning mode'daki host group'un kural seti Analysis & Learning ile üretilir (Analysis & Learning ile geçmiş trafikten nasıl kural üretirim?).
- Bir önerinin ilerlemesi eksenlerin en düşüğüdür; her eksen gerçek sayının eşiğe oranıdır ve öneri ancak bütün eksenler %100'e ulaştığında uygulanır (Learning Progress nasıl okunur (Request, Client, Country, ASN network eksenleri); neden en düşük eksen belirleyicidir?).
- Only Browsers, Only Valid Domain Names ve Skip Blacklist IPs varsayılan olarak işaretsizdir; Country Filter varsayılan olarak boştur (No restriction). Required ASN Networks boş bırakılırsa ağ ekseni uygulanmaz.
- Her değerlendirme, seçilen dönemin parantez içindeki kayıt penceresini okur (ör. 30 minutes (1 days) seçeneğinde son 1 gün) ve okunan kayıt sayısı dönem uzunluğuyla sınırlıdır: 30 dakikalık dönemde en yeni 45.000 satır okunur, bunlardan en çok 9.000'i değerlendirilir. Yoğun saldırı trafiğinde seyrek bir false positive bu pencereye sığmayabilir.
- Cluster kurulumunda otomatik değerlendirme cluster'ın birinci cihazında çalışır; iki cihazın kayıtları ayrı ayrı değerlendirilip öneriler birleştirilir, kanıtlar toplanmaz (kapsam ve sınırlar).
Nereden İzlenir?
| Ekran | Yol | Ne gösterir |
|---|---|---|
| Learning Methods kartı | WAF-Protected vServices → vService → WAF Management → Learning & Reporting | AI learning'in açık olup olmadığı ve değerlendirme dönemi |
| AI Learning Tracking | WAF-Protected vServices → vService → AI Learning Tracking (Teacher da açıksa AI Learning & Teacher Tracking) sekmesi → View | Henüz uygulanmamış öneriler ve Learning progress değerleri |
| AI Learning History | Aynı sekme → View | Uygulanmış öğrenmeler; Learning type AI learning ya da Manual |
| Event Logs | WAF-Protected vServices → vService → Event Logs | AI learning'in girdisi; filtre şeridi sekmeleriyle istemci, ülke, Host ve tarayıcı dağılımı |
Nasıl Teşhis Edilir?
- Left Monitor Panel → WAF-Protected vServices → vService → WAF Management açılır. Learning & Reporting bölümündeki Learning Methods kartında AI learning cümlesi okunur. "AI learning is on but no period is selected" görülüyorsa Yöntem 1 uygulanır; kartta AI learning kapalı yöntemler arasında yazıyorsa da Yöntem 1 uygulanır.
- Aynı ekranda mod kartlarına bakılır. Host group Learning mode'daysa AI learning'in okuyacağı kayıt oluşmaz; bu durumda kural seti Analysis & Learning ile üretilir.
- Event Logs sekmesi açılır; Date Range değerlendirme penceresini kapsayacak şekilde seçilip Save & Get Logs tıklanır (sunucu filtresi). Öğrenilmesi beklenen false positive'in kayıtları yoksa sorun girdidedir: Log settings kartındaki bastırma satırı kontrol edilir ve isteğin puanının engelleme eşiğine ulaşıp ulaşmadığına bakılır.
- Kayıtlar varsa filtre şeridindeki Client IP, Country, Host ve Browser sekmeleriyle dağılım okunur: tek bir istemci, tek bir ülke, port taşıyan Host ya da tarayıcı dışı istemciler hangi süzgeç ya da eşiğin takıldığını gösterir. Client IP değerleri CDN adresleriyse ve X-Forwarded-For sekmesinde gerçek adresler varsa Trusted Proxy eksiktir.
- AI Learning Tracking sekmesi açılır (Teacher da açıksa sekmenin adı AI Learning & Teacher Tracking'dir); View listesinden AI learning tracking seçilir. Görünüm açılışta veri getirmez.
- Advanced Settings tıklanır; şeritteki Min Progress (%) değeri (varsayılan 50) düşürülür. Bu değer yalnızca listeyi etkiler, gerçek öğrenme eşiklerini değiştirmez (Min Progress (%), Max Suggestions ve Line Limit gelişmiş ayarları ne işe yarar?).
- Refresh tıklanır; adaylar Learning Progress değeriyle listelenir. Satıra tıklanınca önizlemedeki kırılım hangi eksenin (Request, Client, Country, ASN network) eşiğin altında kaldığını, istemci tablosu öneriyi besleyen adresleri gösterir.
- Aday listesi Min progress düşürüldüğünde de boşsa süzgeçler kayıtları eliyordur ya da kural seti bu kayıtlara zaten izin veriyordur; 4. adımdaki dağılıma göre Yöntem 1'deki süzgeçler gözden geçirilir.
Çözüm
Ayarlardan kaynaklanan durumlar Learning methods penceresinden düzeltilir; eşiği dolmayan ama false positive olduğu bilinen bir öneri elle uygulanır. Diğer nedenler kendi sayfalarında çözülür.
| Durumunuz | Uygun yöntem |
|---|---|
| Dönem seçilmemiş, süzgeçler trafiği eliyor ya da eşikler sitenin trafiğine göre yüksek | Yöntem 1: Learning methods ayarlarını düzeltmek |
| Öneri listede görünüyor ama eşiği dolmuyor; false positive olduğu kesin | Yöntem 2: Learn selected ile elle uygulamak |
| Kayıtlar WAF Log Suppression Condition yüzünden değerlendirilmiyor | 418 alan bir istek Event Logs'ta neden görünmüyor? sayfasındaki koşulu daraltma yöntemi |
| TR7 CDN ya da proxy arkasında; istemciler proxy adresinden görünüyor | Loglarda istemci IP'si yerine proxy / CDN IP'si görünüyor; ne yapmalıyım? |
| AI Learning Tracking sekmesi hiç görünmüyor | AI Learning & Teacher Tracking sekmesi neden görünmüyor? |
Yöntem 1: Learning Methods Ayarlarını Düzeltmek Önerilen
- Nasıl çalışır AI learning'in değerlendirme dönemi, kayıtları eleyen süzgeçler ve bir önerinin uygulanması için gereken eşikler aynı pencerede ayarlanır (AI Learning).
- Nerede açılır WAF-Protected vServices → vService → WAF Management → Learning & Reporting → Learning Methods kartı
- Gereksinim WAF alanında değiştirme yetkisi; host group Monitor mode ya da Blocking mode'da
- Kapsam vService geneli; bütün host group'lar
Adım adım yapılandırma
Left Monitor Panel → WAF-Protected vServices → vService → WAF Management açılır.
Learning & Reporting bölümündeki Learning Methods kartının kalem ikonuna tıklanır; Learning Methods penceresi açılır.
AI Learning anahtarı açılır (varsayılan kapalıdır); dönem, süzgeç ve eşik alanları görünür. Anahtar kapalıyken bu alanlar gizlenir ama değerleri korunur.
AI Learning Frequency listesinden dönem seçilir; seçenekler dönem ve parantez içinde okunan kayıt penceresiyle yazılır: 30 minutes (1 days), 1 hours (2 days), 2 hours (4 days), 6 hours (1 weeks), 12 hours (2 weeks), 1 days (1 months), 1 days (3 months). Varsayılan değer None'dır ve None seçiliyken değerlendirme çalışmaz (AI Learning değerlendirme periyotları (30 dk / 1 gün … 1 gün / 3 ay) ne anlama gelir?).
Country Filter boş bırakılırsa bütün ülkeler değerlendirilir; doldurulursa sitenin kullanıcılarının ülkeleri eksiksiz seçilir. Mobil uygulama ya da API trafiği öğretilecekse Only Browsers işareti kaldırılır. Site port numarası taşıyan bir adresle (ör. www.example.com:8443) yayın yapıyorsa Only Valid Domain Names işareti kaldırılır. Skip Blacklist IPs kara listedeki adreslerin kayıtlarını dışarıda bırakır; işaretli tutulması önerilir.
Required Requests (varsayılan 10, en az 1), Required Clients (varsayılan 5, en az 1), Required Countries (varsayılan 1) ve Required ASN Networks (varsayılan boş) sitenin gerçek kullanıcı dağılımına göre ayarlanır. Kullanıcıları tek ülkeden gelen bir sitede Required countries 1'de bırakılır; eşikler düşürüldükçe tek bir istemcinin davranışının kural setine yazılma olasılığı artar.
Edit tıklanır; ayar ayrı bir dağıtım adımı olmadan uygulanır ve bir sonraki değerlendirme zamanında kullanılır. Cluster kurulumunda değişiklik varsayılan auto-sync ile eş cihaza da gönderilir; Manual Sync Mode açıksa Synchronize ile gönderilir.
Doğrulama
WAF Management'taki Learning methods kartına bakılır.
AI learning is on — traffic is evaluated collectively every 6 hoursBir sonraki değerlendirme zamanından sonra AI Learning Tracking sekmesinde View → AI Learning History seçilir.
Learning type = AI learning satırlarıYöntem 2: Learn Selected ile Elle Uygulamak
- Nasıl çalışır AI Learning Tracking görünümündeki bir öneri, eşiklerin dolması beklenmeden kural setine yazılır (Learn selected ile elle uygulama). Uygulanan öğrenme AI Learning History'de Manual olarak görünür.
- Nerede açılır WAF-Protected vServices → vService → AI Learning Tracking sekmesi → View: AI Learning Tracking
- Gereksinim AI learning açık; WAF alanında değiştirme yetkisi
- Kapsam Seçilen öneriler
Adım adım yapılandırma
Left Monitor Panel → WAF-Protected vServices → vService → AI Learning Tracking açılır (Teacher da açıksa sekmenin adı AI Learning & Teacher Tracking'dir).
View listesinden AI Learning Tracking seçilir.
Advanced Settings tıklanır ve Min Progress (%) değeri, öneriyi listeye alacak kadar düşürülür (1–100).
Refresh tıklanır; adaylar listelenir.
Satıra tıklanır; önizlemede Description (kural setinde ne değişeceği), Learning Progress kırılımı ve istemci tablosu incelenir. Öneri tek bir istemciden besleniyorsa genel bir kullanım biçimini değil o istemcinin davranışını yansıtıyor olabilir.
Uygulanacak satırların başındaki kutular işaretlenir.
Araç çubuğundaki Learn Selected tıklanır; ek onay sorulmadan seçilen öneriler kural setine yazılır ve listeden kalkar. Yanlış bir öğrenme, Dashboard ya da WAF Management sekmesinin sağındaki WAF - WAAP Data Flow Panel'in Log sekmesinde, öğrenme kaydının altındaki Revert learning ile geri alınır (Öğrenilen bir kuralı geri alabilir miyim?). Cluster kurulumunda kural değişikliği varsayılan auto-sync ile eş cihaza da gönderilir; Manual Sync Mode açıksa Synchronize ile gönderilir.
Doğrulama
View listesinden AI Learning History seçilir.
Learning type = ManualAynı istek tekrarlandıktan sonra Event Logs'ta yeni kayıt oluşup oluşmadığına bakılır.
Öğretilen saldırı için yeni kayıt yokSık Yapılan Hatalar
- Learning mode'daki host group'ta AI learning'den öneri beklemek. Learning mode'da Event Logs kaydı oluşmaz; AI learning Monitor mode ve Blocking mode'daki kayıtlardan öğrenir.
- Min progress (%) değerini düşürmenin otomatik öğrenmeyi hızlandırdığını sanmak. Bu değer yalnızca AI Learning Tracking listesini genişletir; otomatik uygulama Learning methods'taki eşiklere bakar.
- AI learning tracking'i açınca listenin dolmasını beklemek. Görünüm açılışta veri getirmez; Refresh tıklanır.
- Only browsers'ı API ya da mobil uygulama trafiğinde işaretli bırakmak. Tarayıcı olarak tanınmayan istemcilerin kayıtları değerlendirilmez.
- Eşikleri en düşük değere indirmek. Required clients 1'e indirildiğinde tek bir istemcinin, saldırgan da olabilecek davranışı kural setine yazılabilir; eşik yerine bilinen false positive için Learn selected kullanılır.
- Cluster'da tek cihazın sayılarına bakmak. Kanıt cihaz başına sayılır; trafik iki cihaza bölündüğünde eşik tek cihazın kayıtlarıyla dolmalıdır.
Dokümantasyonda nasıl yapılır
İlgili sorular
- AI Learning nedir, nasıl çalışır?
- Learning Progress nasıl okunur (Request, Client, Country, ASN network eksenleri); neden en düşük eksen belirleyicidir?
- AI Learning'in önerilerini otomatik uygulamasını beklemeden elle uygulayabilir miyim (Learn Selected)?
- Min Progress (%), Max Suggestions ve Line Limit gelişmiş ayarları ne işe yarar?
