İçeriğe geç

Aksiyonlar

Bir kural eşleştiğinde ne yapılacağını konsolun Aksiyonlar bölümünden seçersiniz; bu sayfadaki başlıklar konsoldaki kutularla birebir aynıdır. Birden fazla aksiyon birlikte seçilebilir; koruma aksiyonlarından ve parametre gerektirenlerden yalnızca birer tane. Örneklerdeki THEN {anahtar} gösterimi, aksiyonun teknik adıyla yazılmış temsilî özetdir.


Tek seçim — bir istek için tek koruma kararı verilir; seçimi tekrar tıklayarak bırakırsınız.

KonsoldaAnahtarNe yapar
Engelleblockİsteği engeller, engel sayfası gösterir (403)
CAPTCHAcaptchaCAPTCHA doğrulaması ister
JS DoğrulamajsJavaScript challenge uygular — kullanıcı fark etmez
İzin VerallowÖnceki kuralların engelini kaldırır, sonraki kuralları atlar
Log (yalnızca izle)logYalnızca Erişim Kayıtları’na yazar; hiçbir işlem yapılmaz
IF ip.country in RU, CN, KP
THEN block
IF waf.bot_score ge 70
THEN captcha
IF waf.client.ip_type == hosting
THEN js
IF ip.list in "office-ips"
THEN allow
IF http.request.base_uri has_prefix /admin
THEN log

Konsolda bu seçimlerle:

  • Ülke engeli — Alan Ülke · Operatör listede · Değer RU, CN, KP → Aksiyon Engelle
  • Bot skoruna CAPTCHA — Alan Bot Skoru (0–100) · Operatör büyük eşittir · Değer 70 → Aksiyon CAPTCHA
  • Veri merkezine JS — Alan IP Altyapı Tipi · Operatör eşittir · Değer hosting → Aksiyon JS Doğrulama
  • Ofis listesine izin — Alan IP Listesi · Operatör listede · Değer office-ips → Aksiyon İzin Ver
  • Admin’i izle — Alan Path (sorgusuz) · Operatör ile başlar · Değer /admin → Aksiyon Log (yalnızca izle)

Çoklu seçim — eşleşen isteği aktif doğrulama ve limit katmanlarından muaf tutar. Güvenilir kaynaklara uygulayın.

KonsoldaAnahtarNe atlar
CAPTCHA MuafbypasscaptchaAktif CAPTCHA modunu
JS MuafbypassjsAktif JS challenge’ı
Rate Limit MuafbypassratelimitDomain geneli rate limit’i
KonsoldaAnahtarNe atlar
Deny Listesi MuafbypassdenylistTehdit İstihbaratı deny listesini
Yönetimli Kural MuafbypassmanagedruleHEIMWALL Yönetilen kurallarını
OWASP MuafbypassowaspOWASP imza taramasını
# Ofis IP'leri CAPTCHA'dan muaf
IF ip.list in "office-ips"
THEN bypasscaptcha
# Partner servisleri rate limit'ten muaf
IF ip.list in "trusted-partners"
THEN bypassratelimit
# CMS admin paneli yönetilen kurallardan muaf
IF ip.list in "cms-admins"
AND http.request.base_uri has_prefix /wp-admin
THEN bypassmanagedrule

Konsolda bu seçimlerle:

  • Ofis IP’leri CAPTCHA’dan muaf — Alan IP Listesi · Operatör listede · Değer office-ips → Aksiyon CAPTCHA Muaf
  • Partnerler rate limit’ten muaf — Alan IP Listesi · Operatör listede · Değer trusted-partners → Aksiyon Rate Limit Muaf
  • CMS admin’i yönetilen kurallardan muaf — Alan IP Listesi · Operatör listede · Değer cms-admins VE Alan Path (sorgusuz) · Operatör ile başlar · Değer /wp-admin → Aksiyon Yönetimli Kural Muaf

Bu istekte ilgili hız optimizasyonunu kapatır. Koruma aksiyonlarıyla çelişmez, birlikte seçilebilir; yalnız kapatma yönü vardır — ilgili optimizasyon zaten kapalıysa etkisizdir.

KonsoldaAnahtarNe yapar
Önbellek BaypasıbypasscacheYanıt önbellekten sunulmaz ve önbelleğe yazılmaz — origin’den taze gelir
Küçültme BaypasıbypassminifyOtomatik küçültmeyi (auto-minify) kapatır — kırılgan JS/CSS bozulmasın diye
Görsel Opt. BaypasıbypassimageoptGörsel optimizasyonunu kapatır — orijinal (kayıpsız) görsel sunulur
# Gerçek zamanlı API her zaman origin'den
IF http.request.base_uri has_prefix /api/live
THEN bypasscache

Konsolda bu seçimlerle: Alan Path (sorgusuz) · Operatör ile başlar · Değer /api/live → Aksiyon Önbellek Baypası


Aynı kuralda yalnızca biri kullanılabilir; her biri konsolda ek alanlar açar.

KonsoldaAnahtarParametreler
YönlendirredirectHedef URL + durum kodu (301/302/303/307/308); URL’de $request_uri gibi değişkenler kullanılabilir
Rate Limitratelimitİstek sayısı (1–100000) + pencere (5–600 sn) + IPv6 öneki — token bucket
Backend DeğiştirbackendKonsolda tanımlı backend grubunun adı
Upstream Seçoriginİsteği farklı upstream (origin) grubuna yönlendirir
İstek Header’ırequestheaderOrigin’e giden isteğe ad=değer başlığı ekler (değer ham yazılır, şablon yok)
Yanıt Header’ıresponseheaderKullanıcıya dönen yanıta ad=değer başlığı ekler
Çerez Göndersetcookiename, value, path, max_age, httponly, secure, samesite
Çerez SildeletecookieSilinecek çerezin adı
# Login endpoint'ine rate limit
IF http.request.base_uri == /login
THEN ratelimit 10/60s
# Eski URL'yi yeniye yönlendir
IF http.request.base_uri has_prefix /eski
THEN redirect https://example.com/yeni
# Origin'in tanıyacağı işaret başlığı ekle
IF http.request.base_uri has_prefix /api
THEN requestheader X-Edge-Verified=1
# CORS başlığı ekle
IF http.request.base_uri has_prefix /api
THEN responseheader Access-Control-Allow-Origin=*

Konsolda bu seçimlerle:

  • Login’e rate limit — Alan Path (sorgusuz) · Operatör eşittir · Değer /login → Aksiyon Rate Limit (10 istek / 60 sn)
  • Eski URL’yi yönlendir — Alan Path (sorgusuz) · Operatör ile başlar · Değer /eski → Aksiyon Yönlendir (hedef https://example.com/yeni)
  • İşaret başlığı ekle — Alan Path (sorgusuz) · Operatör ile başlar · Değer /api → Aksiyon İstek Header’ı (X-Edge-Verified = 1)
  • CORS başlığı ekle — Alan Path (sorgusuz) · Operatör ile başlar · Değer /api → Aksiyon Yanıt Header’ı (Access-Control-Allow-Origin = *)

Çoklu seçim — ağır endpoint’leri eşzamanlı yük ve yavaş origin baskısından korur.

KonsoldaAnahtarParametre
Eşzamanlı İstek Sınırımaxconcurrent0–100000; aşan istek doğrudan 503 alır (0 = sınırsız)
Origin Yanıt Süresi (bu kural için)origintimeoutSaniye (1–600); origin zaman aşımını bu istek için kısaltır — domain tavanı aşılamaz
# Rapor endpoint'ine eşzamanlı limit
IF http.request.base_uri == /report/generate
THEN maxconcurrent 5
# Hızlı endpoint'te yavaş origin'i erken kes
IF http.request.base_uri == /health
THEN origintimeout 2

Konsolda bu seçimlerle:

  • Rapor endpoint’ine limit — Alan Path (sorgusuz) · Operatör eşittir · Değer /report/generate → Aksiyon Eşzamanlı İstek Sınırı (5)
  • Health’te origin’i erken kes — Alan Path (sorgusuz) · Operatör eşittir · Değer /health → Aksiyon Origin Yanıt Süresi (2 sn)

KonsoldaAnahtarAçıklama
Failban (IP Ban Sayacı)failbanEşleşen IP’nin ban sayacını artırır; eşik aşılınca IP banlanır. Yanıt fazında çalışır
Webhook TetiklewebhookEşleşmede webhook çağrısı yapar
Bu kuraldan sonra işlemeyi durdurstopEşleşirse listede kalan kurallar değerlendirilmez; başka bir aksiyonla birlikte kullanılır
# Origin 401 döndürünce failban sayacını artır
IF http.response.status == 401
THEN failban
# Güvenilir IP'yi geçir ve kural zincirini durdur
IF ip.list in "trusted-ips"
THEN allow stop

Konsolda bu seçimlerle:

  • 401’leri say — Alan Origin Yanıt Kodu · Operatör eşittir · Değer 401 → Aksiyon Failban (IP Ban Sayacı) (konsol bu alanda aksiyonu otomatik kilitler)
  • Geçir ve durdur — Alan IP Listesi · Operatör listede · Değer trusted-ips → Aksiyon İzin Ver + Bu kuraldan sonra işlemeyi durdur