Gateway
Cloudflare'in Secure Web Gateway'i. DNS, ağ (L4) ve HTTP (L7) katmanlarında süzüyor — ama her on-ramp her katmanı açmıyor ve varsayılan davranış izin vermek.
- DurumGenel kullanımda
- FiyatKullanıcı başına aylık; ücretsiz katmanda 50 kullanıcı
- Ücretsiz katmanvar
- Doğrulama
Gateway nedir?
“Cloudflare Gateway is Cloudflare’s SWG, built into the Cloudflare One SASE platform. It inspects and filters traffic at the DNS, network (Layer 4), and HTTP (Layer 7) layers.”
Access gelen trafiği koruyor: uygulamalarına kimin ulaşabileceğine karar veriyor. Gateway giden trafiği koruyor: çalışanlarının nereye ulaşabileceğine karar veriyor.
Nasıl çalışır?
Üç katman — ve her birinin göremediği
| DNS | Network (L4) | HTTP (L7) | |
|---|---|---|---|
| Görüyor | Her DNS sorgusu: alan adı, kayıt tipi, çözümlenen IP ve ülkesi, CNAME/MX/PTR/TXT cevapları | “IP addresses, ports, protocols, and the server name sent at the start of an encrypted connection (SNI)” | “the full content of web requests — including URLs, headers, and uploaded or downloaded files” |
| Nasıl engelliyor | Çözümlemeyi durdurarak — “the site never loads because the domain name is never translated to an IP address” | L4 bağlantısını düşürerek | İstek düzeyinde Allow/Block/Isolate/Redirect |
| Göremiyor | URL yolu | TLS’in içini SNI dışında; ESNI/ECH varsa hiçbir şey | HTTP gövdeleri loglanmıyor; WebSocket ne inceleniyor ne loglanıyor |
| Hiç yapamıyor | — | “Gateway cannot log or filter ICMP traffic.” | Cihazlara Cloudflare kök sertifikası kurulmadan çalışmıyor |
On-ramp matrisi — sahadaki bir numaralı yanlış anlama
| Bağlantı yöntemi | DNS | Network | HTTP | En uygun |
|---|---|---|---|---|
| Cloudflare One Client (WARP) | ✅ | ✅ | ✅ | Yönetilen cihazlardaki gezgin kullanıcılar |
| DNS resolver yapılandırması | ✅ | ❌ | ❌ | Yönetilmeyen cihazlar, tüm ağ, ilk kurulum |
| Proxy endpoint (PAC) | ❌¹ | ❌ | ✅ (yalnız tarayıcı) | Ajansız HTTP filtreleme |
| Ağ tüneli (IPsec/GRE) | ✅ | ✅ | ✅ | Şube ve veri merkezi |
¹ Dokümanlar burada kendi içinde çelişiyor. Matris PAC için DNS’i “No” gösteriyor; proxy endpoint sayfası ise “Gateway DNS and resolver policies will always apply to traffic proxied with PAC files, regardless of device configuration” diyor. İkisi de 1 Eylül 2026’da erişildi ve dokümanlar bunu bağdaştırmıyor.
İstemci modu da kilit açıyor:
| Client modu | DNS | Network | HTTP | warp-cli servis modu |
|---|---|---|---|---|
| Traffic and DNS (varsayılan) | ✅ | ✅ | ✅ | WarpWithDnsOverHttps |
| DNS only | ✅ | ❌ | ❌ | DnsOverHttps |
| Traffic only | ❌ | ✅ | ✅ | TunnelOnly |
| Local proxy | ❌ | ❌ | ✅ | WarpProxy on port 40000 |
| Posture only | ❌ | ❌ | ❌ | PostureOnly |
Kimlik temelli kurallar ayrı bir kapı: “Since these on-ramps do not require users to log in
to the Cloudflare One Client, identity-based policies are not supported.” Logda kimliksiz
trafik non_identity@<takım>.cloudflareaccess.com olarak görünüyor.
Değerlendirme sırası
DNS sorgusu → 1. Çözümleme öncesi seçicili DNS kuralları
2. Resolver kuralları
3. Çözümleme sonrası seçicili DNS kuralları
Ağ bağlantısı → 4. Network Firewall (Enterprise)
5. Egress kuralları (Enterprise)
6. TCP SYN → hedef sunucu
7. Network kuralları
8. Do Not Inspect → Isolate → Allow/Block → gövde (DLP, AV, sandbox)
DNS içinde öncelik numarası değil, çözümleme fazı belirleyici. Cloudflare’in kendi örneği:
| Öncelik | Seçici | Değer | Aksiyon |
|---|---|---|---|
| 1 | Resolved Country IP Geolocation | United States | Allow |
| 2 | Domain | example.com | Block |
“Despite an explicit Allow policy ordered first, policy 2 takes precedence because the Domain selector is evaluated before DNS resolution.”
Varsayılan: izin ver
| Kural tipi | Eşleşme yoksa |
|---|---|
| DNS | Allow |
| Network | Allow |
| HTTP | Allow (HTTP ayarlarında varsayılan Block yapılandırdıysan Block) |
“Because the default is to allow unmatched traffic, Gateway follows a permissive model. To switch to a restrictive model, create a catch-all Block policy at the lowest precedence.”
Bu, Access ile en keskin farkı: Access deny-by-default, Gateway allow-by-default. İkisini aynı zihin modeliyle kurmak sık yapılan bir hata.
Ne zaman kullanılır, ne zaman kullanılmaz
Uygun olduğu işler
- Kabul edilebilir kullanım politikasını cihaza yazılım kurmadan uygulamak (DNS lokasyonu yeterli)
- Zararlı ve oltalama alan adlarını çözümleme aşamasında düşürmek
- Yönetilen cihazlarda tam HTTP denetimi: DLP, AV taraması, dosya tipi kısıtı
- SSH, RDP, veritabanı gibi HTTP olmayan trafiği L4’te süzmek
- Shadow IT keşfi ve SaaS kiracı kontrolü (
Restrict-Access-To-Tenantsgibi başlıklarla)
Uygun olmadığı işler
- DNS engelini tek başına yeterli sanmak. IP’yi bilen kullanıcı geçer.
- Sertifika kurmadan HTTP denetimi. Kök sertifika olmadan block page bile görünmüyor.
- Sertifika pinleyen mobil uygulamaları denetlemek. “most mobile applications use certificate pinning.”
- ICMP’yi filtrelemek veya loglamak. Hiç yapılamıyor.
- Başarısız bağlantıları loglamak. Yalnızca kurulan TCP bağlantıları loglanıyor; gerisi Enterprise network session logs.
- Gateway DNS’i Türkiye’ye sabitlemek. “Gateway DNS … cannot be regionalized.”
- Sabit çıkış IP’si beklemek (ücretsiz planda). Aralıklar yayımlanmıyor, dedicated egress Enterprise eklentisi.
Somut örnekler
1. Güvenlik kategorilerini engellemek
Cloudflare’in kendi önerdiği ifade:
any(dns.security_category[*] in {68 178 80 83 176 175 117 131 134 151 153})
Test etmek için resmî alan adları var: malware.testcategory.com,
phishing.testcategory.com, cryptomining.testcategory.com.
2. DNS engelini HTTP ile tamamlamak
DNS kuralı alan adını çözdürmüyor; ama IP’yi bilen kullanıcıyı durdurmuyor. Aynı hedefi HTTP tarafında da yaz:
any(http.request.domains[*] == "yasakli-site.com") → Block
3. Kendi DNS’ini gömen uygulamaları kapatmak
WhatsApp ve Android Studio gibi uygulamalar kendi çözümleyicilerine düşüyor. Network kuralı:
net.dst.ip in {8.8.8.8 8.8.4.4} and net.dst.port == 53 → Block
4. CLI araçlarını TLS denetiminden muaf tutmak
Domain │ in list │ CLI Tool Domains │ Do Not Inspect
Liste içeriği: github.com, *.amazonaws.com, *.docker.io gibi. Kural ana TLS decryption
kuralından önce gelmeli — ama zaten Do Not Inspect kuralları “evaluated before any Allow or
Block policies, regardless of their position.”
5. Türkçe alan adını kurala sokmak
# Bu CALISMAZ:
any(http.request.domains[*] == "örnek.com.tr")
# Bunun yerine: Zero Trust listesine ekle, sonra
any(http.request.domains[*] in $turkce_alan_adlari)
“Gateway policies do not support domains/hostnames with non-Latin characters directly. To use one, add it to a list.”
6. Protokolü porttan bağımsız engellemek
net.protocol.detection == "ssh" → Block
“you can block all SSH traffic on your network without blocking port 22 or any other non-default ports.” Protokol algılama 14 protokol tanıyor ve yalnızca Traffic and DNS modundaki Client trafiğinde çalışıyor.
Demo 1: DNS filtresini kur, block page’in üç yüzünü gör
Ön koşullar: Ubuntu 22.04/24.04 masaüstü veya sunucu, Zero Trust hesabı.
Adım 1 — Cloudflare One Client’ı kur
curl -fsSL https://pkg.cloudflareclient.com/pubkey.gpg \
| sudo gpg --yes --dearmor -o /usr/share/keyrings/cloudflare-warp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/cloudflare-warp-archive-keyring.gpg] https://pkg.cloudflareclient.com/ $(lsb_release -cs) main" \
| sudo tee /etc/apt/sources.list.d/cloudflare-client.list
sudo apt update && sudo apt install -y cloudflare-warp
warp-cli --version
warp-cli registration new <takim-adi>
warp-cli connect
sleep 5
warp-cli status
Adım 2 — Trafiğin gerçekten Gateway’e gittiğini doğrula
curl -s https://1.1.1.1/cdn-cgi/trace | grep -E "warp|gateway|colo"
resolvectl status | grep -A2 "Current DNS"
warp=on ve gateway=on görmelisin. colo alanı Türkiye’den bağlanıyorsan IST olabilir.
Adım 3 — Kategori engelini kur
Panel: Zero Trust → Traffic policies → DNS → Add a policy
| Alan | Değer |
|---|---|
| Selector | Security Categories |
| Operator | in |
| Value | Malware, Phishing, Cryptomining |
| Action | Block |
| Display block page | kapalı (şimdilik) |
Adım 4 — Block page KAPALIYKEN dig çıktısına bak
sleep 60 # kural yayilimi ~60 saniye
dig malware.testcategory.com +short
dig malware.testcategory.com | grep -E "status:|ANSWER:|SERVER:"
Adım 5 — Block page’i AÇ ve farkı gör
Aynı kuralda Display block page anahtarını aç.
sleep 60
dig malware.testcategory.com +short
Şimdi 162.159.36.12 ve 162.159.46.12 dönmeli — Cloudflare’in block page IP’leri.
Adım 6 — Sertifikasız tarayıcıda ne olduğunu gör
Kök sertifikayı kurmadan tarayıcıda https://malware.testcategory.com aç.
Block page yerine ERR_SSL_PROTOCOL_ERROR ya da HTTP 526 görüyorsun — çünkü tarayıcı block
page’in sunduğu sertifikaya güvenmiyor.
Adım 7 — Sertifikayı kur, block page görünsün
# Client'in otomatik kurulumunu ac: Devices > Management >
# Global Cloudflare One Client settings > Install CA to system certificate store
ls -l /var/lib/cloudflare-warp/installed_cert.pem
ls -l /usr/local/share/ca-certificates/managed-warp.pem
sudo update-ca-certificates
Adım 8 — Logu oku ve allowedOnNoLocation sinyalini anla
Panel: Zero Trust → Insights → Logs → DNS
Şimdi kasıtlı olarak yanlış yapılandır: kuralı bir DNS lokasyonuna bağlama veya cihazı farklı bir çözümleyiciye çevir, sonra tekrar sorgula.
dig @1.1.1.1 malware.testcategory.com +short # Gateway'i atla
Logda allowedOnNoLocation (değer 4) görüyorsan sorgu hiçbir DNS lokasyonuna eşleşmemiş —
yani hiçbir kuralın çalışmamış.
Demo 2: DNS-only tuzağı ve TLS denetiminin kırdıkları
Bu demo iki gerçek arıza üretiyor: HTTP kuralının hiç tetiklenmemesi, ve TLS denetimi açıkken CLI araçlarının bozulması.
Adım 1 — HTTP kuralı yaz
Panel: Traffic policies → HTTP → Add a policy
Selector: URL Path │ Operator: contains │ Value: /gizli-yol │ Action: Block
Adım 2 — Cihazı DNS-only moda al
Mod değişikliği panelden yapılıyor: Zero Trust → Team & Resources → Devices → Device
profiles → bu cihazın eşleştiği profili düzenle → Client mode = DNS only
(API karşılığı service_mode: DnsOverHttps).
warp-cli disconnect && warp-cli connect
sleep 5
warp-cli status
curl -s https://1.1.1.1/cdn-cgi/trace | grep -E "warp|gateway"
Şimdi HTTP kuralını tetiklemeyi dene:
curl -s -o /dev/null -w "DNS-only modda: %{http_code}\n" https://ornek.com/gizli-yol
Geçiyor. Kural doğru, kural açık, ama cihaz HTTP trafiğini Gateway’e hiç göndermiyor.
Adım 3 — Traffic and DNS moduna dön
Aynı profilde Client mode = Traffic and DNS mode.
warp-cli disconnect && warp-cli connect
sleep 5
warp-cli status
curl -s -o /dev/null -w "Traffic and DNS modda: %{http_code}\n" https://ornek.com/gizli-yol
Şimdi engelleniyor.
Adım 4 — TLS denetimini aç
Panel: Traffic policies → Traffic settings → Proxy and inspection → Inspect HTTPS requests with TLS decryption
Adım 5 — Gerçek arızayı üret
git clone https://github.com/cloudflare/cloudflared.git /tmp/test-clone 2>&1 | tail -3
pip download requests -d /tmp/pip-test 2>&1 | tail -3
docker pull hello-world 2>&1 | tail -3
Beklenen hatalar: SSL certificate problem: self-signed certificate in certificate chain,
SSL: CERTIFICATE_VERIFY_FAILED, veya x509: certificate signed by unknown authority.
Adım 6 — Do Not Inspect ile düzelt
Panel: Traffic policies → Lists → Create → ad CLI Tool Domains, tip Domain, içerik:
github.com
*.github.com
*.githubusercontent.com
*.amazonaws.com
*.docker.io
*.pypi.org
files.pythonhosted.org
Sonra HTTP kuralı:
Domain │ in list │ CLI Tool Domains │ Do Not Inspect
sleep 60
git clone https://github.com/cloudflare/cloudflared.git /tmp/test-clone2 2>&1 | tail -2
docker pull hello-world 2>&1 | tail -2
Adım 7 — Bedelini de gör
Aynı alan adına bir istek at ve loga bak. Do Not Inspect trafiğinde yalnızca SNI görünüyor; URL, başlıklar ve dosya bilgisi yok.
“you will lose the ability to log or block HTTP requests, apply DLP policies, and perform AV scanning… However, you can still apply network policies to this traffic.”
Adım 8 — Kural sırasının önemini kanıtla
Do Not Inspect kuralını listenin en altına taşı ve aynı komutları tekrarla. Hâlâ çalışıyorlar — çünkü “All Do Not Inspect policies are evaluated before any Allow or Block policies, regardless of their position in the policy list.”
Ölçüm tablosu
| Ölçüt | Değer |
|---|---|
warp=on / gateway=on durumu | |
Block page kapalıyken dig sonucu (0.0.0.0 / REFUSED / başka) | |
| Block page açıkken dönen IP’ler | |
| Sertifikasız tarayıcıda görülen hata | |
| Gateway atlandığında resolver decision değeri | |
| DNS-only modda HTTP kuralı sonucu | |
| Traffic and DNS modda HTTP kuralı sonucu | |
| TLS denetimi açıkken kırılan araç sayısı | |
| Do Not Inspect sonrası çalışan araç sayısı | |
| Do Not Inspect edilen istekte logda görünen alan sayısı |
Fiyatlandırma
Gateway, Cloudflare One’ın kullanıcı başına fiyatlandırmasına dahil. Ürün sayfasından, 1 Eylül 2026:
| Free | Pay-as-you-go | Contract | |
|---|---|---|---|
| Fiyat | 0 USD | 7 USD / kullanıcı / ay | Özel |
| Kullanıcı | 50’ye kadar | Sınırsız | Sınırsız |
| DNS lokasyonu | 3 | 50 | 250 |
| Log saklama | 24 saat | 30 gün | 6 aya kadar; Logpush |
| Browser Isolation | — | Eklenti | Eklenti |
| Dedicated egress IP | — | — | Eklenti |
| DLP | Sınırlı hazır profil | Sınırlı hazır profil | Tam özellikli (eklenti) |
| AV dosya boyutu | 15 MB | 25 MB | 100 MB |
Enterprise gerektirenler (dokümandan, pazarlama sayfasından değil): Egress kuralları, dedicated egress IP, Resolver kuralları, Network Firewall paket filtreleme, Logpush, source IP proxy endpoint’leri, BYO Gateway sertifikası (BYOPKI), MCP server portalları, istemci engel bildirimleri, User Risk Score seçicisi, katmanlı kurallar, file sandboxing, ve başarısız bağlantılar için network session logları.
Lisanslama ve hukuki çerçeve
Gateway tescilli bir hizmettir ve Cloudflare Hizmet Şartlarına tabidir.
Log saklama — yetkili tablo dokümanda:
| Log tipi | Free | Standard | Access | Gateway | Enterprise |
|---|---|---|---|---|---|
| Admin | 18 ay | 18 ay | 18 ay | 18 ay | 18 ay |
| Access | 24 saat | 30 gün | 30 gün | 24 saat | 180 gün |
| DNS | 24 saat | 30 gün | 24 saat | 30 gün | 180 gün |
| Network | 24 saat | 30 gün | 24 saat | 30 gün | 30 gün |
| HTTP | 24 saat | 30 gün | 24 saat | 30 gün | 30 gün |
| DEX | 7 gün | 7 gün | 7 gün | 7 gün | 7 gün |
| Cihaz duruşu | 30 gün | 30 gün | 30 gün | 30 gün | 30 gün |
Dikkat: beş plan sütunu var ve pazarlama sayfasının hiç bahsetmediği ürüne özgü Access ve Gateway sütunları bulunuyor. Ayrıca Enterprise’da bile Network ve HTTP logları yalnızca 30 gün — pazarlama sayfasındaki “6 ay” yalnızca Access ve DNS loglarına ait.
Kişisel veri. İki mod var: Redact PII (varsayılan) — “PII is stored in logs but hidden from view. Only the Super Administrator and users with the Cloudflare Zero Trust PII role can view redacted PII.” Exclude PII — “PII is not stored in logs at all. No user, including the Super Administrator, can retrieve it.”
Türkiye — kısmen mümkün. Cloudflare Türkiye’yi Regional Services bölgesi olarak destekliyor, ama Gateway için dipnot şart koyuyor:
“Gateway HTTP (web traffic filtering) supports Regional Services. Gateway DNS (domain name filtering) does not yet support regionalization. ICMP proxy … and Mesh proxy are not available to Regional Services users. File Sandboxing … is incompatible with DLS.”
Gerekçesi teknik: “Regional Services controls where Cloudflare decrypts traffic. Because most DNS traffic is not encrypted, Gateway DNS cannot be regionalized using Regional Services.” Ve bir ön koşul daha: “Regional Services only apply when using the Cloudflare One Client in Traffic and DNS mode.”
Loglar Türkiye’de tutulamıyor. Customer Metadata Boundary yalnızca us ve eu destekliyor,
ve “Gateway activity logs are not available in the dashboard if you turn on the Customer
Metadata Boundary.” — Enterprise’da Logpush ile dışa aktarmak gerekiyor.
Trafiğin Türkiye’de kaldığını kanıtlamak için Zero Trust Network Session loglarındaki
IngressColoName alanına bak: “Since regionalization is applied upstream from Gateway, the
ingress data center will be located within your configured regional map.”
Zero Trust dokümantasyonunda Türkiye hiç geçmiyor. 8,4 MB’lık gövdede Turkey, Türkiye,
Turkish, Istanbul, KVKK ve kişisel sıfır eşleşme veriyor; pozitif kontrol aynı gövdede
Germany 16, United States 21, India 17, Japan 9, France 7.
Sık yapılan hatalar
DNS engelini tek katman sanmak
“users can still access the site if they know its IP address.” DNS + HTTP birlikte yazılmalı.
Cihazı DNS-only modda bırakmak
HTTP ve Network kuralları hiç tetiklenmiyor, ama panelde her şey doğru görünüyor.
Kök sertifikayı kurmamak
Block page bile görünmüyor; kullanıcı ERR_SSL_PROTOCOL_ERROR alıyor. Ve otomatik kurulum
yalnızca Debian tabanlı Linux’ta, iOS/Android/ChromeOS’ta hiç çalışmıyor.
Windows’ta sertifikayı yanlış depoya kurmak
“If your certificate is installed in the Local Machine Store, the device posture check looking for a certificate will fail. Install the certificate in the Current User Store.”
TLS denetimini açıp CLI araçlarını unutmak
git, aws, kubectl, terraform, Docker ve ChatGPT masaüstü uygulaması işletim sisteminin
güven deposunu kullanmıyor. Do Not Inspect kuralı şart.
Kural önceliğini ters kurmak
“A lower order number in the list means a higher precedence. Gateway stops processing further
policies when it encounters the first rule that matches.… An Allow policy for
teams.microsoft.com should be placed before a general Block policy for all file sharing
applications.”
Engellenen sitenin hâlâ açıldığına şaşırmak
Dokümanın kendi kontrol listesi: kural henüz yayılmamış olabilir (~60 saniye); cihazda başka bir DNS çözümleyicisi olabilir; kural bir DNS lokasyonuna atanmamış olabilir; tarayıcı var olan bir bağlantıyı yeniden kullanıyor olabilir — “To block the domain, close any related tabs or restart your browser.”
Split Tunnel’dan hariç tuttuğunu unutmak
“Gateway policies will not apply for excluded traffic.”
Başarısız bağlantıların loglanacağını sanmak
Yalnızca kurulan TCP bağlantıları loglanıyor. Başarısızlar için Enterprise network session logs gerekiyor.
ip.geoip.country benzeri eski alanlarda olduğu gibi, sip seçicisini guard’sız kullanmak
SNI seçicileri varsayılan olarak yalnızca 443’te çalışıyor: “By default, SNI selectors only
apply to HTTPS traffic on port 443.” Tüm portlarda istiyorsan protokol algılamayı açman
gerekiyor — ama o da TLS’i her portta kesmeye çalışacağı için ayrı Do Not Inspect kuralları
isteyebilir.
Sıkça sorulan sorular
- Gateway ile Secure Web Gateway farklı ürünler mi?
- Hayır, aynı ürün. SWG pazar kategorisinin adı, Gateway ürünün adı. Ürün sayfasının başlığı birebir
Cloudflare Gateway - Secure Web Gateway, dokümanı “Cloudflare Gateway is Cloudflare's SWG, built into the Cloudflare One SASE platform” diyor, ve Cloudflare One'ın kendi ürün listesinde SWG bağlantısı doğrudan Gateway dokümanına gidiyor. Panelde bölümün adı artık Traffic policies. - DNS'te engelledim ama kullanıcı siteye hâlâ giriyor.
- Çünkü üç katman bağımsız. Birebir: “DNS and resolver policies are standalone. For example, if you block a site with a DNS policy but do not create a corresponding HTTP policy, users can still access the site if they know its IP address.” DNS engeli alan adının çözülmesini durduruyor; IP'yi bilen ya da başka bir çözümleyici kullanan kişiyi durdurmuyor. Kapsamlı engelleme için DNS + HTTP (veya Network) kuralını birlikte yazman gerekiyor.
- WARP kurdum ama HTTP kuralım hiç tetiklenmiyor.
- Büyük ihtimalle cihaz DNS-only modda. Resmî mod tablosu: Traffic and DNS mode (varsayılan) → DNS ✅ Network ✅ HTTP ✅; DNS only mode → DNS ✅ Network ❌ HTTP ❌; Traffic only mode → DNS ❌ Network ✅ HTTP ✅; Local proxy mode → yalnızca HTTP; Posture only mode → hiçbiri. Yalnızca Traffic and DNS modu “DNS policies, network policies, HTTP policies, Browser Isolation, identity-based policies, device posture checks, AV scanning, and Data Loss Prevention” kilidini açıyor. Kontrol:
warp-cli statusve servis modu. - Hangi on-ramp hangi kuralları çalıştırıyor?
- Resmî matris: Cloudflare One Client → DNS ✅ Network ✅ HTTP ✅. DNS resolver yapılandırması → DNS ✅, Network ❌, HTTP ❌. Proxy endpoint (PAC) → DNS ❌, Network ❌, HTTP ✅ (yalnızca tarayıcı). Network tunnel (IPsec/GRE) → üçü de ✅. Cloudflare'in kendi özeti: “DNS resolver configuration is the easiest to deploy … but it only enforces DNS policies. Proxy endpoints enable HTTP inspection through browser proxy configuration without installing an agent, but they are limited to browser traffic.” Bir çelişki var: matris PAC için DNS'i “No” gösteriyor ama proxy endpoint sayfası “Gateway DNS and resolver policies will always apply to traffic proxied with PAC files, regardless of device configuration” diyor. Dokümanlar bunu bağdaştırmıyor.
- Kimlik temelli kurallar neden çalışmıyor?
- Kullanıcı giriş yapmadıysa kimlik yok. Birebir: “you can isolate HTTP traffic from on-ramps such as proxy endpoints … or Cloudflare WAN… Since these on-ramps do not require users to log in to the Cloudflare One Client, identity-based policies are not supported.” Kimlik seçicileri “require you to deploy the Cloudflare One Client in Traffic and DNS mode.” Logda kimliksiz trafik
non_identity@<takım>.cloudflareaccess.comolarak görünüyor. Tek istisna: authorization proxy endpoint — kullanıcı Access ile doğrulanıyor. Bedeli: “Gateway always performs TLS decryption for traffic routed through an authorization endpoint, even if you turn off TLS decryption at the account level” ve “You cannot selectively bypass TLS inspection for specific destinations when using an authorization endpoint.” Ayrıca her kullanıcı bir Gateway koltuğu tüketiyor. - İstemci olmadan kimlik temelli DNS kuralı yazabilir miyim?
- Evet, DoH token'ıyla. Birebir: “For identity-based DNS policies without the Cloudflare One Client, configure DNS over HTTPS with user tokens.” Uç nokta
https://<ACCOUNT_ID>.cloudflare-gateway.com/dns-query, başlıkCF-Authorization: <USER_DOH_TOKEN>. İki kısıt: DoH token'ları 24 saatte doluyor ve “Each Cloudflare account can only have one active Access service token authorized for DoH at a time.” - Block page görünmüyor, tarayıcı kendi hata sayfasını gösteriyor.
- İki sebep olabilir. (1) Sertifika yok: “In order to display the block page as the URL of the blocked domain, your organization's devices must have a Cloudflare certificate installed… If you do not install a certificate, the block page will not display correctly.” Sertifikasız kullanıcı
ERR_SSL_PROTOCOL_ERRORya da HTTP 526 görüyor. (2) DNS'te varsayılan kapalı: “For DNS Block policies, you will need to turn on the block page for each policy… For HTTP Block policies, Gateway automatically displays your global block page setting by default.” Bir de sinsi olan: “If an HTTP request that matches a block policy does not arrive at the same Cloudflare data center as its DNS query, Gateway will display the default block page instead of your custom block page.” - Block page kapalıyken dig ne döndürüyor?
- Üç resmî sayfa üç farklı cevap veriyor; üçünü de veriyoruz. (1) DNS policies sayfası: “Gateway will respond to blocked queries with an
Arecord (IPv4) of0.0.0.0or anAAAArecord (IPv6) of::.” (2) Test sayfası: “If the block page is turned off for the policy, you should seeREFUSED” ve örnekdigçıktısındastatus: REFUSED, ANSWER: 0. (3) DoH sayfası: “If the block page is disabled, the response will be0.0.0.0.” Üçü de 1 Eylül 2026'da erişildi. Hangisini görürsen gör yanlış yapılandırdığını düşünme. Block page açıkken cevap net:162.159.36.12ve162.159.46.12. - Kategori engelini nasıl test ederim?
- Cloudflare test alan adları yayımlıyor:
<KATEGORİ_ADI>.testcategory.com— örneğinmalware.testcategory.com,phishing.testcategory.com,cryptomining.testcategory.com. Güvenlik kategorileri 14 tane: Anonymizer, Brand Embedding (“Sites that imitate a verified brand, for example facobook.com”), Command and Control & Botnet, Compromised Domain, Cryptomining, DGA Domains, DNS Tunneling, Malware, Phishing, Potentially Unwanted Software, Private IP Address, Scam, Spam, Spyware. İçerik kategorileri 27 tane. - Loglarda hiçbir şey görünmüyor.
- İlk bakılacak alan DNS log'undaki resolver decision değeri.
4=allowedOnNoLocation— “Allowed because query did not match a Gateway DNS location”. Bunu görüyorsan sorgu hiçbir DNS lokasyonuna eşleşmemiş, dolayısıyla hiçbir kuralın çalışmamış. Diğer değerler:3blockedByCategory,5allowedOnNoPolicyMatch,6blockedAlwaysCategory,7overrideForSafeSearch,8overrideApplied,9blockedRule,10allowedRule. Ayrıca analitiğin görünmesi “up to 5 minutes” sürebiliyor. - Gateway neleri loglamıyor?
- Belgelenmiş on bir boşluk var. Öne çıkanlar: Başarısız bağlantılar — “Gateway only logs TCP connections that were successfully established. If a connection is not complete (such as a TCP SYN with no SYN ACK), Gateway does not record it”; bunun için network session logs gerekiyor ve o Enterprise. HTTP gövdeleri — “Gateway does not log HTTP bodies”, istisna hatalı isteklerde ilk 512 bayt, 30 gün. WebSocket — hiç incelenmiyor ve loglanmıyor. Do Not Inspect trafiği — yalnızca SNI loglanıyor. ICMP — “Gateway cannot log or filter ICMP traffic.” Ulaşılamaz IP'ye Network Override — “The traffic fails silently with no log entry.” Ve yönetici kapatabiliyor: “You can choose to disable logging entirely or only log blocked requests” — ama “These settings only apply to logs displayed in Cloudflare One. Logpush data is unaffected.”
- TLS decryption açtım, git ve docker bozuldu.
- Beklenen ve belgelenmiş. Birebir: “command-line tools (such as
git,aws,kubectl, andterraform) or desktop applications (such as ChatGPT or Docker) stop working… Applications may return errors such asSSL: CERTIFICATE_VERIFY_FAILED,self-signed certificate in certificate chain… These applications do not use the operating system's trust store and therefore do not trust the Cloudflare root certificate.” Resmî çözüm bir Do Not Inspect kuralı:Domain · in list · CLI Tool Domains, listede “hosts such asgithub.com,*.amazonaws.com, and*.docker.io”, ve kural ana TLS decryption kuralından önce gelmeli. Cloudflare alternatifi de yazıyor ama önermiyor: “You can configure some tools to trust a custom CA or disable SSL verification. This is less secure and harder to manage at scale.” - TLS decryption neyi hiç inceleyemiyor?
- Cloudflare'in kendi listesi birebir: “Gateway does not support TLS decryption for applications which use: Certificate pinning · Self-signed certificates · Mutual TLS (mTLS) authentication · ESNI and ECH handshake encryption · Automatic HTTPS upgrades.” Ayrıntılar: “most mobile applications use certificate pinning”; mTLS'te “Because Gateway cannot forward the client's certificate to the origin, the mTLS handshake fails”; ECH'de “Gateway relies on the SNI to match an HTTP request to a policy — if the SNI is encrypted, Gateway cannot determine which policy to apply”. Ayrıca “Non-web traffic: Some applications send non-web traffic over TLS, such as SIP … and XMPP. Gateway cannot inspect these protocols.”
- Do Not Inspect kuralının bedeli ne?
- Birebir: “When you create a Do Not Inspect policy for a given hostname, application, or app type, you will lose the ability to log or block HTTP requests, apply DLP policies, and perform AV scanning. Information contained within HTTPS encryption, such as the full requested URL, will not be visible… However, you can still apply network policies to this traffic.” Ve sıralaması özel: “All Do Not Inspect policies are evaluated before any Allow or Block policies, regardless of their position in the policy list” — yani listedeki yeri fark etmiyor, her zaman önce çalışıyor.
- Cloudflare hangi trafiği kendisi baypas ediyor?
- Üç ayrı cevap var ve karıştırılıyor. (1) Global policies — her hesapta otomatik, yalnızca Cloudflare'in kendi altyapısı:
*.cloudflare-gateway.com,api.cloudflare.com,*.dash.cloudflare.com,*.cloudflareaccess.com,*.cloudflarestatus.com, captive portal alan adları, ve OCSP. Ayrıca kaldırılamayan tek engel: Always Blocked Categories → Child Abuse. LoglardaGlobal Policy - Allow Zero Trust Servicesgibi görünüyorlar. (2) “Do Not Inspect” app type — opt-in, tek kuralla açılıyor: “Gateway automatically groups applications incompatible with TLS decryption into the Do Not Inspect app type… Gateway will periodically update this app type to add new applications.” App type ID 16; içeriği dokümanda listelenmiyor, API'den sorgulanıyor. (3) Microsoft 365 traffic integration — opt-in; açınca “Microsoft 365 Auto Generated” adında bir Do Not Inspect kuralı oluşuyor. Üçüncü taraf uygulamalar için varsayılan otomatik baypas yoktur — pozitif kontrollü doğrulandı. - Block kuralım origin'e paket gitmesini engelliyor mu?
- Hayır. Birebir: “When a user connects to a server with Gateway, Gateway first establishes a TCP connection with the destination server… If the TCP connection to the destination server is successful, Gateway will apply policies… If the TCP connection to the destination server is unsuccessful, Gateway will not run any policies.” Sonucu: “Because Gateway sends a TCP SYN to the destination server before evaluating policies, Gateway Network or HTTP Block policies do not prevent the initial TCP SYN from reaching the destination server.” Paketin hiç çıkmamasını istiyorsan tek yol Cloudflare Network Firewall paket kuralı (Enterprise) — o boru hattında daha erken çalışıyor.
- Kurallar hangi sırada değerlendiriliyor?
- Kural tipleri arası sıra: 1. Çözümleme öncesi seçicili DNS kuralları → 2. Resolver kuralları → 3. Çözümleme sonrası seçicili DNS kuralları → 4. Egress kuralları → 5. Network kuralları → 6. HTTP kuralları. DNS içinde öncelik numarası değil çözümleme fazı belirleyici: Cloudflare'in kendi örneğinde 1. sıradaki Allow (Resolved Country) ile 2. sıradaki Block (Domain) yarışıyor ve 2 kazanıyor, çünkü Domain seçicisi çözümlemeden önce değerlendiriliyor. Ve “If a policy contains both pre-resolution and post-resolution selectors, Gateway will evaluate the entire policy after DNS resolution.” HTTP içinde: tüm Do Not Inspect → tüm Isolate → Allow/Block/Do Not Scan → gövde değerlendirmesi (DLP, AV, sandbox).
- Eşleşme olmazsa ne oluyor?
- İzin veriliyor — ve bu Access'in tam tersi. Varsayılanlar: DNS Allow, Network Allow, HTTP Allow. Birebir: “Because the default is to allow unmatched traffic, Gateway follows a permissive model. To switch to a restrictive model (block by default, allow by exception), create a catch-all Block policy at the lowest precedence.” Karşılaştırma için: “All Access applications are deny by default.” İki ürünü aynı zihin modeliyle kurmak en sık yapılan hata.
- Block page neden bir gün aniden görünmez oldu?
- 14 Temmuz 2025'te bir davranış değişikliği oldu ve resmî tablo şöyle: Network Block + HTTP Block birlikteliğinde eski davranış “Gateway blocks traffic and displays the block page and/or follows the client notification settings on the HTTP policy”; yeni davranış “Gateway blocks traffic. Gateway does not display the block page but will follow the client notification settings on the Network policy.” Diğer iki kombinasyonda değişiklik yok.
- Kaç kural ve lokasyon tanımlayabilirim?
- Resmî varsayılanlar — ve “These limits may be increased on Enterprise accounts”: hesap başına DNS 500, Network 500, HTTP 500, Egress 500, Resolver 500 kural; DNS lokasyonu 250; lokasyon başına kaynak IP CIDR 1.500; liste 100, liste başına giriş 1.000 (Standard) / 5.000 (Enterprise); Lists API dakikada 600 istek (aşarsan 120 saniye engel); PAC dosyası 50 (Standard) / 1.000 (Enterprise); policy ifadesi 140.000 karakter. Plan tarafındaki DNS lokasyon kapıları ayrı: Free 3, Pay-as-you-go 50, Contract 250.
- DNS sorgu hızı sınırı var mı?
- Yayımlanmamış — doğrulanmış negatif bulgu. Cloudflare One doküman gövdesinde
queries per second,qps,query volume,throttlaramaları anlamlı sonuç vermiyor; çıkan tek şey Lists API'nin dakikada 600 isteği ve paket filtreleme tarafındaki ayrı bir rate limiting beta'sı. Pozitif kontrol: aynı gövdederate limit20'den fazla gerçek eşleşme veriyor. Tek dolaylı ipucu, saklama tablosunun dipnotu: “Enterprise users on per query plans” — yani sorgu hacmine dayalı Enterprise sözleşmeleri var ama rakam yayımlanmıyor. - Sabit bir çıkış IP'si alabilir miyim?
- Enterprise eklentisiyle. Varsayılan durum: “traffic that exits through Cloudflare Gateway shares a source IP address with all other Cloudflare One Client users.” Ve önemli: “Cloudflare does not publish Cloudflare One Client egress IP ranges.” Yani bir banka veya kamu portalı senden IP izin listesi isterse, ücretsiz/PAYG planda verilebilecek bir cevap yok. Dedicated egress IP: “Only available as an add-on to Zero Trust Enterprise plans”; hesap başına “at least two dedicated egress IPs in two different cities”, IPv6 için /64, ve hedef IP + port kombinasyonu başına 40.000 eşzamanlı bağlantı. IP coğrafi konumunun veritabanlarına yansıması “at least six weeks” sürüyor. Ücretsiz alternatif: “route traffic through a Cloudflare Tunnel so that it exits using that same IP. This is called source IP anchoring — it allows you to keep your existing egress IPs without purchasing Cloudflare dedicated egress IPs.” (cloudflared 2025.7.0+)
- Bazı uygulamalar Gateway'i tamamen atlıyor.
- Belgelenmiş üç yol var. (1) Kendi DNS'ini gömen uygulamalar: “Some applications (for example, WhatsApp and Android Studio) have backup DNS servers built into their code… these apps automatically retry the query against their built-in DNS servers (for example, Google's
8.8.8.8), which bypasses your policies entirely.” Çözüm:8.8.8.8, 8.8.4.4hedefine TCP/UDP 53'ü engelleyen bir Network kuralı. (2) Üçüncü taraf gizlilik katmanları: “Gateway will not properly filter traffic sent through third-party VPNs or other Internet filtering software, such as iCloud Private Relay or Google Chrome IP Protection.” (3) Split Tunnel: “Gateway policies will not apply for excluded traffic.” - Türkçe alan adını kurala yazamıyorum.
- Beklenen. Birebir: “Gateway policies do not support domains/hostnames with non-Latin characters directly. To use one, add it to a list.” Yani
örnek.com.trgibiı ğ ü ş ö çiçeren bir alan adını doğrudan HTTP kuralına yazamıyorsun; bir Zero Trust listesine ekleyip listeyi referans göstermen gerekiyor. İlgili limitler: hesap başına 100 liste, liste başına 1.000 (Standard) / 5.000 (Enterprise) giriş. - Gateway trafiğimi Türkiye'de tutabilir miyim?
- Kısmen — ve önemli bir istisnayla. Uyumluluk matrisinin Gateway satırı Regional Services için 🚧 ve dipnotu birebir: “Gateway HTTP (web traffic filtering) supports Regional Services. Gateway DNS (domain name filtering) does not yet support regionalization. ICMP proxy … and Mesh proxy are not available to Regional Services users. File Sandboxing … is incompatible with DLS.” Ayrıca “Regional Services only apply when using the Cloudflare One Client in Traffic and DNS mode” ve gerekçesi: “Regional Services controls where Cloudflare decrypts traffic. Because most DNS traffic is not encrypted, Gateway DNS cannot be regionalized.” Loglar tarafında da kapı var: CMB yalnızca
usveeu, ve “Gateway activity logs are not available in the dashboard if you turn on the Customer Metadata Boundary.” Trafiğin Türkiye'de kaldığını kanıtlamak için Zero Trust Network Session loglarındakiIngressColoNamealanına bak. - Panel Türkçe var mı?
- Yok. Resmî liste on dil: Almanca, İngilizce, İspanyolca, Fransızca, İtalyanca, Japonca, Korece, Portekizce, Basitleştirilmiş ve Geleneksel Çince. Ayrıca Zero Trust dokümantasyonunun tamamında (8,4 MB)
Turkey,Türkiye,Turkish,IstanbulveKVKKsıfır eşleşme veriyor — pozitif kontrol olarak aynı gövdede Germany 16, United States 21, India 17, Japan 9 eşleşme var.
İlgili servisler
- Accessİç uygulamalara VPN yerine identity ve device temelli erişim policy’leri koyar.
- Browser IsolationWeb sayfasını uzaktaki bir tarayıcıda çalıştırıp cihaza yalnızca render’ı gönderir.
- Data Loss PreventionTCKN, kart numarası, kaynak kodu gibi hassas verinin dışarı çıkmasını yakalar.
- CASBGoogle Workspace, Microsoft 365 gibi SaaS hesaplarındaki misconfiguration’ları tarar.
- Cloudflare TunnelŞirket içi sunucunu, güvenlik duvarında port açmadan Cloudflare’e giden bir tünelle yayınlar.
- Cloudflare WANŞube, veri merkezi ve cloud ağlarını Cloudflare backbone’u üzerinden birbirine bağlar.
Bu sayfadaki fiyat ve özellik bilgileri 1 Eylül 2026 tarihinde Cloudflare’in resmî kaynaklarından doğrulanmıştır. Cloudflare fiyatlandırmasını önceden haber vermeden değiştirebilir; bağlayıcı bilgi içinresmî sayfaya bakın.