{"id":2156,"date":"2025-10-22T16:31:44","date_gmt":"2025-10-22T13:31:44","guid":{"rendered":"https:\/\/saviorhost.com\/blog\/?p=2156"},"modified":"2025-10-22T16:31:44","modified_gmt":"2025-10-22T13:31:44","slug":"web-sitelerinde-spam-trafigini-engelleme-2025-rehberi","status":"publish","type":"post","link":"https:\/\/saviorhost.com\/blog\/web-sitelerinde-spam-trafigini-engelleme-2025-rehberi\/","title":{"rendered":"Web Sitelerinde Spam Trafi\u011fini Engelleme (2025 Rehberi)"},"content":{"rendered":"<h2 data-start=\"364\" data-end=\"413\" id=\"neden-bot-%e2%89%a0-tek-tip-tehdit-modelini-oturt\">Neden \u201cbot\u201d \u2260 tek tip? (Tehdit modelini oturt)<\/h2>\n<p data-start=\"414\" data-end=\"845\">Spam trafi\u011fi; <strong data-start=\"428\" data-end=\"516\">credential stuffing, carding, scraping, brute force, form spam, API k\u00f6t\u00fcye kullan\u0131m\u0131<\/strong> gibi farkl\u0131 otomasyon davran\u0131\u015flar\u0131ndan olu\u015fur. OWASP\u2019\u0131n <strong data-start=\"573\" data-end=\"620\">Automated Threats to Web Applications (OAT)<\/strong> s\u0131n\u0131fland\u0131rmas\u0131, hangi u\u00e7 noktalar i\u00e7in hangi sald\u0131r\u0131lar\u0131n tipik oldu\u011funa dair ortak bir dil sa\u011flar; savunmay\u0131 tek bir CAPTCHA\u2019ya indirgemek yerine tehdit odakl\u0131 d\u00fc\u015f\u00fcnmeyi kolayla\u015ft\u0131r\u0131r. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/owasp.org\/www-project-automated-threats-to-web-applications\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">owasp.org<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<h2 data-start=\"847\" data-end=\"888\" id=\"ana-savunma-katmanlari-ozet-strateji\">Ana savunma katmanlar\u0131 (\u00f6zet strateji)<\/h2>\n<ol data-start=\"889\" data-end=\"2691\">\n<li data-start=\"889\" data-end=\"1130\">\n<p data-start=\"892\" data-end=\"1130\"><strong data-start=\"892\" data-end=\"916\">WAF + kural setleri:<\/strong> ModSecurity ile <strong data-start=\"933\" data-end=\"962\">OWASP Core Rule Set (CRS)<\/strong> ba\u015flang\u0131\u00e7 bariyeri sa\u011flar; SQLi\/XSS gibi klasik istismarlara ek olarak brute force ve h\u0131z s\u0131n\u0131rlamaya yard\u0131mc\u0131 kurallar i\u00e7erir. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/owasp.org\/www-project-modsecurity-core-rule-set\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">owasp.org<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"1131\" data-end=\"1382\">\n<p data-start=\"1134\" data-end=\"1382\"><strong data-start=\"1134\" data-end=\"1184\">Oran s\u0131n\u0131rlama (rate limit) \/ ba\u011flant\u0131 kotas\u0131:<\/strong> Nginx\u2019in <code data-start=\"1194\" data-end=\"1205\">limit_req<\/code> ve <code data-start=\"1209\" data-end=\"1221\">limit_conn<\/code> mod\u00fclleri IP ya da \u00f6zel anahtarlar (\u00f6rn. IP+username) \u00fczerinden istek h\u0131z\u0131n\u0131 d\u00fc\u015f\u00fcr\u00fcr; leaky-bucket algoritmas\u0131 kullan\u0131r. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/nginx.org\/en\/docs\/http\/ngx_http_limit_req_module.html?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">nginx.org<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"1383\" data-end=\"1679\">\n<p data-start=\"1386\" data-end=\"1679\"><strong data-start=\"1386\" data-end=\"1412\">Risk skorlu do\u011frulama:<\/strong> <strong data-start=\"1413\" data-end=\"1437\">Cloudflare Turnstile<\/strong> gibi \u201csessiz\u201d taray\u0131c\u0131 sinyali tabanl\u0131 \u00e7\u00f6z\u00fcmler; d\u00fc\u015f\u00fck g\u00fcven h\u00e2linde hafif challenge g\u00f6stererek s\u00fcrt\u00fcnmeyi azalt\u0131r. Google <strong data-start=\"1561\" data-end=\"1587\">reCAPTCHA (Enterprise)<\/strong>, OAT kategorilerine g\u00f6re ak\u0131\u015f bazl\u0131 \u00f6neriler sunar. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/developers.cloudflare.com\/turnstile\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Cloudflare Docs<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+2<\/span><\/span><span class=\"flex h-4 w-full items-center justify-between absolute\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Cloudflare Docs<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+2<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"1680\" data-end=\"1960\">\n<p data-start=\"1683\" data-end=\"1960\"><strong data-start=\"1683\" data-end=\"1713\">Honeypot\/decoy taktikleri:<\/strong> G\u00f6r\u00fcnmeyen form alanlar\u0131, sahte endpoint\u2019ler ve (Cloudflare taraf\u0131nda) <strong data-start=\"1785\" data-end=\"1801\">AI Labyrinth<\/strong> gibi \u201cy\u00f6nlendirip oyalayan\u201d \u00e7\u00f6z\u00fcmlemeler, robots.txt\u2019ye uymayan yeni nesil taray\u0131c\u0131lara kar\u015f\u0131 etkili bir ek katmand\u0131r. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/blog.cloudflare.com\/ai-labyrinth\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">The Cloudflare Blog<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"1961\" data-end=\"2298\">\n<p data-start=\"1964\" data-end=\"2298\"><strong data-start=\"1964\" data-end=\"2012\">Scraper ekosistemi ve robots.txt ger\u00e7ekli\u011fi:<\/strong> 2024\u20132025\u2019te yay\u0131nc\u0131lar ve altyap\u0131 sa\u011flay\u0131c\u0131lar\u0131, <strong data-start=\"2063\" data-end=\"2090\">robots.txt\u2019yi yok sayan<\/strong> ve kimli\u011fini gizleyen AI taray\u0131c\u0131lar\u0131na kar\u015f\u0131 (\u00f6rn. varsay\u0131lan engelleme, \u201cPay Per Crawl\u201d gibi) daha agresif \u00f6nlemler duyurdu; robots.txt <strong data-start=\"2229\" data-end=\"2257\">tek ba\u015f\u0131na yeterli de\u011fil<\/strong>. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/www.theverge.com\/news\/695501\/cloudflare-block-ai-crawlers-default?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">The Verge<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+2<\/span><\/span><span class=\"flex h-4 w-full items-center justify-between absolute\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Reuters<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+2<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"2299\" data-end=\"2484\">\n<p data-start=\"2302\" data-end=\"2484\"><strong data-start=\"2302\" data-end=\"2322\">\u00d6l\u00e7\u00fcm temizli\u011fi:<\/strong> Ba\u015far\u0131y\u0131 \u00f6l\u00e7mek i\u00e7in GA4\u2019te <strong data-start=\"2351\" data-end=\"2363\">internal<\/strong> ve <strong data-start=\"2367\" data-end=\"2380\">developer<\/strong> trafi\u011fini filtrele; aksi h\u00e2lde bot azaltma etkisini g\u00f6remezsin. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/support.google.com\/analytics\/answer\/10104470?hl=en&amp;utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Google Yard\u0131m<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"2485\" data-end=\"2691\">\n<p data-start=\"2488\" data-end=\"2691\"><strong data-start=\"2488\" data-end=\"2519\">API\u2019lere \u00f6zel s\u0131k\u0131la\u015ft\u0131rma:<\/strong> 2024\u2019te web sald\u0131r\u0131lar\u0131 %33 artarken API\u2019ler birincil hedef h\u00e2line geldi; rate limit + kimlik do\u011frulama + davran\u0131\u015fsal sinyaller \u015fart. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/vmblog.com\/archive\/2025\/04\/28\/akamai-research-web-attacks-up-33-apis-emerge-as-primary-targets.aspx?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">vmblog.com<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<\/ol>\n<hr data-start=\"2693\" data-end=\"2696\" \/>\n<h2 data-start=\"2698\" data-end=\"2748\" id=\"uygulanabilir-kontrol-listesi-hizli-baslangic\">Uygulanabilir kontrol listesi (H\u0131zl\u0131 ba\u015flang\u0131\u00e7)<\/h2>\n<ul data-start=\"2749\" data-end=\"4021\">\n<li data-start=\"2749\" data-end=\"2939\">\n<p data-start=\"2751\" data-end=\"2939\"><strong data-start=\"2751\" data-end=\"2775\">Kritik u\u00e7lar\u0131 \u00e7\u0131kar:<\/strong> <code data-start=\"2776\" data-end=\"2784\">\/login<\/code>, <code data-start=\"2786\" data-end=\"2795\">\/signup<\/code>, \u00f6deme\/form ak\u0131\u015flar\u0131, <code data-start=\"2818\" data-end=\"2827\">\/search<\/code>, \u00fcr\u00fcn beslemeleri ve API u\u00e7lar\u0131; her birini OAT kategorisiyle e\u015fle\u015ftir. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/owasp.org\/www-project-automated-threats-to-web-applications\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">owasp.org<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"2940\" data-end=\"3073\">\n<p data-start=\"2942\" data-end=\"3073\"><strong data-start=\"2942\" data-end=\"2973\">WAF\/CRS\u2019i a\u00e7 ve tuning yap:<\/strong> Hatal\u0131 pozitifleri azaltmak i\u00e7in istisna kurallar\u0131 tan\u0131mla. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/coreruleset.org\/docs\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">CRS Project<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"3074\" data-end=\"3197\">\n<p data-start=\"3076\" data-end=\"3197\"><strong data-start=\"3076\" data-end=\"3093\">Oran s\u0131n\u0131rla:<\/strong> Nginx ile IP ve ak\u0131\u015fa \u00f6zg\u00fc anahtarlarla rate limiting uygula. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/nginx.org\/en\/docs\/http\/ngx_http_limit_req_module.html?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">nginx.org<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"3198\" data-end=\"3389\">\n<p data-start=\"3200\" data-end=\"3389\"><strong data-start=\"3200\" data-end=\"3231\">Riskli ak\u0131\u015flarda challenge:<\/strong> Turnstile\/reCAPTCHA\u2019y\u0131 login, kay\u0131t ve \u00f6deme gibi <strong data-start=\"3282\" data-end=\"3299\">y\u00fcksek riskli<\/strong> ak\u0131\u015flarda puan\/karar mekanizmas\u0131yla devreye al. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/developers.cloudflare.com\/turnstile\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Cloudflare Docs<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"3390\" data-end=\"3520\">\n<p data-start=\"3392\" data-end=\"3520\"><strong data-start=\"3392\" data-end=\"3416\">Honeypot\/decoy ekle:<\/strong> Form honeypot\u2019lar\u0131 + (Cloudflare kullan\u0131yorsan) AI Labyrinth. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/blog.cloudflare.com\/ai-labyrinth\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">The Cloudflare Blog<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"3521\" data-end=\"3640\">\n<p data-start=\"3523\" data-end=\"3640\"><strong data-start=\"3523\" data-end=\"3544\">Scraper y\u00f6netimi:<\/strong> ASN\/\u00fclke\/UA sinyalleriyle kurallar, h\u0131z limitleri, JSON\/Feed u\u00e7lar\u0131na Accept\/Referer hijyeni.<\/p>\n<\/li>\n<li data-start=\"3641\" data-end=\"3739\">\n<p data-start=\"3643\" data-end=\"3739\"><strong data-start=\"3643\" data-end=\"3663\">\u00d6l\u00e7\u00fcm temizli\u011fi:<\/strong> GA4 i\u00e7\/developer trafi\u011fini d\u0131\u015fla. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/support.google.com\/analytics\/answer\/10104470?hl=en&amp;utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Google Yard\u0131m<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"3740\" data-end=\"3866\">\n<p data-start=\"3742\" data-end=\"3866\"><strong data-start=\"3742\" data-end=\"3761\">S\u00fcrekli g\u00f6zlem:<\/strong> 429\/5xx oranlar\u0131, \u00e7erezsiz istek patlamalar\u0131, belirli ASN\/\u00fclkelerden ani s\u0131\u00e7ramalar i\u00e7in alarmlar kur.<\/p>\n<\/li>\n<li data-start=\"3867\" data-end=\"4021\">\n<p data-start=\"3869\" data-end=\"4021\"><strong data-start=\"3869\" data-end=\"3888\">Trendleri izle:<\/strong> Akamai\u2019nin y\u0131ll\u0131k\/\u00e7eyreklik SOTI raporlar\u0131 API\/bot e\u011filimlerini takip i\u00e7in iyi bir referans. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/www.akamai.com\/resources\/state-of-the-internet?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Akamai<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<hr data-start=\"4023\" data-end=\"4026\" \/>\n<h2 data-start=\"4028\" data-end=\"4064\" id=\"uygulama-taslagi-kopyala-uyarla\">Uygulama Tasla\u011f\u0131 (kopyala\u2013uyarla)<\/h2>\n<h3 data-start=\"4066\" data-end=\"4113\" id=\"a-nginx-oran-sinirlama-ve-basit-isaretler\">A) Nginx: Oran s\u0131n\u0131rlama ve basit i\u015faretler<\/h3>\n<p data-start=\"4114\" data-end=\"4171\"><strong data-start=\"4114\" data-end=\"4171\">Login ak\u0131\u015f\u0131 i\u00e7in IP + kullan\u0131c\u0131 ad\u0131 birle\u015fik anahtar:<\/strong><\/p>\n<div class=\"contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary\">\n<div class=\"sticky top-9\">\n<div class=\"absolute end-0 bottom-0 flex h-9 items-center pe-2\">\n<div class=\"bg-token-bg-elevated-secondary text-token-text-secondary flex items-center gap-4 rounded-sm px-2 font-sans text-xs\"><\/div>\n<\/div>\n<\/div>\n<div class=\"overflow-y-auto p-4\" dir=\"ltr\"><code class=\"whitespace-pre! language-nginx\"><span class=\"hljs-comment\"># X-Real-IP varsa onu kullan<\/span><br \/>\n<span class=\"hljs-attribute\">map<\/span> <span class=\"hljs-variable\">$http_x_real_ip<\/span> <span class=\"hljs-variable\">$client_ip<\/span> { <span class=\"hljs-attribute\">default<\/span> <span class=\"hljs-variable\">$remote_addr<\/span>; }<br \/>\n<span class=\"hljs-comment\"># IP + username kombinasyonu (query\/body'den 'username' geldi\u011fini varsayal\u0131m)<\/span><br \/>\n<span class=\"hljs-attribute\">map<\/span> <span class=\"hljs-string\">\"<span class=\"hljs-variable\">$client_ip<\/span><\/span>:<span class=\"hljs-variable\">$arg_username<\/span>\" <span class=\"hljs-variable\">$login_key<\/span> { <span class=\"hljs-attribute\">default<\/span> <span class=\"hljs-variable\">$request_uri<\/span>; }<\/p>\n<p><span class=\"hljs-comment\"># Limit alanlar\u0131<\/span><br \/>\n<span class=\"hljs-attribute\">limit_req_zone<\/span> <span class=\"hljs-variable\">$client_ip<\/span> zone=perip:<span class=\"hljs-number\">20m<\/span>   rate=10r\/m;<br \/>\n<span class=\"hljs-attribute\">limit_req_zone<\/span> <span class=\"hljs-variable\">$login_key<\/span> zone=peruser:<span class=\"hljs-number\">20m<\/span> rate=5r\/m;<br \/>\n<span class=\"hljs-attribute\">limit_conn_zone<\/span> <span class=\"hljs-variable\">$client_ip<\/span> zone=ipconn:<span class=\"hljs-number\">10m<\/span>;<\/p>\n<p><span class=\"hljs-section\">server<\/span> {<br \/>\n  <span class=\"hljs-section\">location<\/span> = \/login {<br \/>\n    <span class=\"hljs-attribute\">limit_req<\/span> zone=perip burst=<span class=\"hljs-number\">20<\/span> nodelay;<br \/>\n    <span class=\"hljs-attribute\">limit_req<\/span> zone=peruser burst=<span class=\"hljs-number\">5<\/span>;<br \/>\n    <span class=\"hljs-attribute\">limit_conn<\/span> ipconn <span class=\"hljs-number\">20<\/span>;<\/p>\n<p>    <span class=\"hljs-comment\"># Basit bot i\u015faretleri (\u00f6rnek)<\/span><br \/>\n    <span class=\"hljs-attribute\">if<\/span> (<span class=\"hljs-variable\">$http_user_agent<\/span> <span class=\"hljs-regexp\">~* \"(curl|wget|bot|spider)\")<\/span> { <span class=\"hljs-attribute\">return<\/span> <span class=\"hljs-number\">429<\/span>; }<br \/>\n    <span class=\"hljs-attribute\">proxy_pass<\/span> http:\/\/app_upstream;<br \/>\n  }<br \/>\n}<br \/>\n<\/code><\/div>\n<\/div>\n<blockquote data-start=\"4873\" data-end=\"5049\">\n<p data-start=\"4875\" data-end=\"5049\">Nginx\u2019in <code data-start=\"4884\" data-end=\"4895\">limit_req<\/code> mod\u00fcl\u00fc leaky-bucket y\u00f6ntemiyle \u00e7al\u0131\u015f\u0131r; anahtar se\u00e7iminde IP\u2019nin NAT arkas\u0131nda payla\u015f\u0131l\u0131yor olabilece\u011fini unutma. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/nginx.org\/en\/docs\/http\/ngx_http_limit_req_module.html?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">nginx.org<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/blockquote>\n<p data-start=\"5051\" data-end=\"5092\"><strong data-start=\"5051\" data-end=\"5092\">Form spam i\u00e7in honeypot + h\u0131z limiti:<\/strong><\/p>\n<div class=\"contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary\">\n<div class=\"sticky top-9\">\n<div class=\"absolute end-0 bottom-0 flex h-9 items-center pe-2\">\n<div class=\"bg-token-bg-elevated-secondary text-token-text-secondary flex items-center gap-4 rounded-sm px-2 font-sans text-xs\"><\/div>\n<\/div>\n<\/div>\n<div class=\"overflow-y-auto p-4\" dir=\"ltr\"><code class=\"whitespace-pre! language-nginx\"><span class=\"hljs-comment\"># \/contact\/submit i\u00e7in IP ba\u015f\u0131na saatlik limit<\/span><br \/>\n<span class=\"hljs-attribute\">limit_req_zone<\/span> <span class=\"hljs-variable\">$binary_remote_addr<\/span> zone=formip:<span class=\"hljs-number\">10m<\/span> rate=30r\/h;<\/p>\n<p><span class=\"hljs-section\">location<\/span> = \/contact\/submit {<br \/>\n  <span class=\"hljs-attribute\">limit_req<\/span> zone=formip burst=<span class=\"hljs-number\">10<\/span>;<br \/>\n  <span class=\"hljs-comment\"># 'hp_field' honeypot alan\u0131 dolu geldiyse reddet<\/span><br \/>\n  <span class=\"hljs-attribute\">if<\/span> (<span class=\"hljs-variable\">$arg_hp_field<\/span> != <span class=\"hljs-string\">\"\"<\/span>) { <span class=\"hljs-attribute\">return<\/span> <span class=\"hljs-number\">403<\/span>; }<br \/>\n  <span class=\"hljs-attribute\">proxy_pass<\/span> http:\/\/app_upstream;<br \/>\n}<br \/>\n<\/code><\/div>\n<\/div>\n<p data-start=\"5411\" data-end=\"5470\"><strong data-start=\"5411\" data-end=\"5470\">S\u0131k kaz\u0131nan u\u00e7lar (search\/feed\/sitemap) i\u00e7in dar bo\u011faz:<\/strong><\/p>\n<div class=\"contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary\">\n<div class=\"sticky top-9\">\n<div class=\"absolute end-0 bottom-0 flex h-9 items-center pe-2\">\n<div class=\"bg-token-bg-elevated-secondary text-token-text-secondary flex items-center gap-4 rounded-sm px-2 font-sans text-xs\"><\/div>\n<\/div>\n<\/div>\n<div class=\"overflow-y-auto p-4\" dir=\"ltr\"><code class=\"whitespace-pre! language-nginx\"><span class=\"hljs-attribute\">limit_req_zone<\/span> <span class=\"hljs-variable\">$binary_remote_addr<\/span> zone=scrape:<span class=\"hljs-number\">20m<\/span> rate=1r\/s;<\/p>\n<p><span class=\"hljs-section\">location<\/span> <span class=\"hljs-regexp\">~ ^\/(search|feed|sitemap\\.xml|products\\.json)$<\/span> {<br \/>\n  <span class=\"hljs-attribute\">limit_req<\/span> zone=scrape burst=<span class=\"hljs-number\">10<\/span> nodelay;<br \/>\n  <span class=\"hljs-attribute\">proxy_pass<\/span> http:\/\/app_upstream;<br \/>\n}<br \/>\n<\/code><\/div>\n<\/div>\n<h3 data-start=\"5684\" data-end=\"5741\" id=\"b-cloudflare-turnstile-waf-mantigi-ai-labyrinth\">B) Cloudflare: Turnstile + WAF mant\u0131\u011f\u0131 + AI Labyrinth<\/h3>\n<p data-start=\"5742\" data-end=\"5776\"><strong data-start=\"5742\" data-end=\"5776\">Turnstile entegrasyonu (\u00f6zet):<\/strong><\/p>\n<div class=\"contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary\">\n<div class=\"sticky top-9\">\n<div class=\"absolute end-0 bottom-0 flex h-9 items-center pe-2\">\n<div class=\"bg-token-bg-elevated-secondary text-token-text-secondary flex items-center gap-4 rounded-sm px-2 font-sans text-xs\"><\/div>\n<\/div>\n<\/div>\n<div class=\"overflow-y-auto p-4\" dir=\"ltr\"><code class=\"whitespace-pre! language-html\"><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">script<\/span><\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/challenges.cloudflare.com\/turnstile\/v0\/api.js\"<\/span> <span class=\"hljs-attr\">async<\/span> <span class=\"hljs-attr\">defer<\/span>&gt;<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">script<\/span><\/span>&gt;<br \/>\n<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">form<\/span><\/span> <span class=\"hljs-attr\">id<\/span>=<span class=\"hljs-string\">\"login-form\"<\/span> <span class=\"hljs-attr\">method<\/span>=<span class=\"hljs-string\">\"POST\"<\/span> <span class=\"hljs-attr\">action<\/span>=<span class=\"hljs-string\">\"\/login\"<\/span>&gt;<br \/>\n  <span class=\"hljs-comment\">&lt;!-- alanlar --&gt;<\/span><br \/>\n  <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">div<\/span><\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"cf-turnstile\"<\/span> <span class=\"hljs-attr\">data-sitekey<\/span>=<span class=\"hljs-string\">\"YOUR_SITE_KEY\"<\/span> <span class=\"hljs-attr\">data-theme<\/span>=<span class=\"hljs-string\">\"auto\"<\/span>&gt;<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">div<\/span><\/span>&gt;<br \/>\n  <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">button<\/span><\/span> <span class=\"hljs-attr\">type<\/span>=<span class=\"hljs-string\">\"submit\"<\/span>&gt;Giri\u015f<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">button<\/span><\/span>&gt;<br \/>\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">form<\/span><\/span>&gt;<br \/>\n<\/code><\/div>\n<\/div>\n<p data-start=\"6080\" data-end=\"6351\">Sunucuda (\u00f6r. Node) do\u011frularken token\u2019\u0131 <strong data-start=\"6120\" data-end=\"6135\">\/siteverify<\/strong> ile kontrol et; puan d\u00fc\u015f\u00fckse ek do\u011frulama iste. Turnstile, Cloudflare CDN\u2019i kullanmasan bile g\u00f6m\u00fclebilir; \u00f6nce sessiz sinyaller toplar, gerekirse hafif bir challenge g\u00f6sterir. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/developers.cloudflare.com\/turnstile\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Cloudflare Docs<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<p data-start=\"6353\" data-end=\"6598\"><strong data-start=\"6353\" data-end=\"6397\">AI Labyrinth (decoy sayfalarla oyalama):<\/strong> robots.txt\u2019ye uymayan\/bilinen AI taray\u0131c\u0131lar\u0131na kar\u015f\u0131 botu \u201clabirente\u201d sokarak kaynaklar\u0131n\u0131 t\u00fcketen yeni savunma; Cloudflare \u00fczerinde \u00fccretsiz\/opt-in sunuluyor. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/blog.cloudflare.com\/ai-labyrinth\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">The Cloudflare Blog<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<p data-start=\"6600\" data-end=\"6838\"><strong data-start=\"6600\" data-end=\"6618\">G\u00fcncel ba\u011flam:<\/strong> Cloudflare 2025\u2019te <strong data-start=\"6638\" data-end=\"6678\">AI crawler\u2019lar\u0131 varsay\u0131lan engelleme<\/strong> ve <strong data-start=\"6682\" data-end=\"6699\">Pay Per Crawl<\/strong> se\u00e7eneklerini duyurdu; robots.txt\u2019yi yok sayan botlara kar\u015f\u0131 altyap\u0131 seviyesinde kontrol sa\u011fl\u0131yor. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/www.theverge.com\/news\/695501\/cloudflare-block-ai-crawlers-default?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">The Verge<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<h3 data-start=\"6840\" data-end=\"6888\" id=\"c-aws-waf-bot-control-yonetilen-kurallar\">C) AWS WAF: Bot Control + y\u00f6netilen kurallar<\/h3>\n<ul data-start=\"6889\" data-end=\"7055\">\n<li data-start=\"6889\" data-end=\"7055\">\n<p data-start=\"6891\" data-end=\"7055\"><strong data-start=\"6891\" data-end=\"6914\">AWS WAF Bot Control<\/strong>: Bilinen bot kategorilerini (iyi\/k\u00f6t\u00fc) ay\u0131ran y\u00f6netilen kurallar; \u00f6zel kurallarla birle\u015ftirilebilir. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/docs.aws.amazon.com\/waf\/latest\/developerguide\/waf-bot-control.html?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">docs.aws.amazon.com<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<p data-start=\"7057\" data-end=\"7111\"><strong data-start=\"7057\" data-end=\"7111\">\u00d6rnek (IP ba\u015f\u0131na \/login rate limit + Bot Control):<\/strong><\/p>\n<div class=\"contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary\">\n<div class=\"sticky top-9\">\n<div class=\"absolute end-0 bottom-0 flex h-9 items-center pe-2\">\n<div class=\"bg-token-bg-elevated-secondary text-token-text-secondary flex items-center gap-4 rounded-sm px-2 font-sans text-xs\"><\/div>\n<\/div>\n<\/div>\n<div class=\"overflow-y-auto p-4\" dir=\"ltr\"><code class=\"whitespace-pre! language-json\"><span class=\"hljs-punctuation\">[<\/span><br \/>\n  <span class=\"hljs-punctuation\">{<\/span><br \/>\n    <span class=\"hljs-attr\">\"Name\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"AllowPartners\"<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"Priority\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-number\">0<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"Statement\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"IPSetReferenceStatement\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"ARN\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"arn:aws:wafv2:...:ipset\/partners\"<\/span> <span class=\"hljs-punctuation\">}<\/span> <span class=\"hljs-punctuation\">}<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"Action\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"Allow\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span><span class=\"hljs-punctuation\">}<\/span> <span class=\"hljs-punctuation\">}<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"VisibilityConfig\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"SampledRequestsEnabled\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-literal\"><span class=\"hljs-keyword\">true<\/span><\/span><span class=\"hljs-punctuation\">,<\/span> <span class=\"hljs-attr\">\"CloudWatchMetricsEnabled\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-literal\"><span class=\"hljs-keyword\">true<\/span><\/span><span class=\"hljs-punctuation\">,<\/span> <span class=\"hljs-attr\">\"MetricName\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"AllowPartners\"<\/span> <span class=\"hljs-punctuation\">}<\/span><br \/>\n  <span class=\"hljs-punctuation\">}<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n  <span class=\"hljs-punctuation\">{<\/span><br \/>\n    <span class=\"hljs-attr\">\"Name\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"AWSBotControl\"<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"Priority\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-number\">1<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"Statement\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"ManagedRuleGroupStatement\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"VendorName\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"AWS\"<\/span><span class=\"hljs-punctuation\">,<\/span> <span class=\"hljs-attr\">\"Name\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"AWSManagedRulesBotControlRuleSet\"<\/span> <span class=\"hljs-punctuation\">}<\/span> <span class=\"hljs-punctuation\">}<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"OverrideAction\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"None\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span><span class=\"hljs-punctuation\">}<\/span> <span class=\"hljs-punctuation\">}<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"VisibilityConfig\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"SampledRequestsEnabled\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-literal\"><span class=\"hljs-keyword\">true<\/span><\/span><span class=\"hljs-punctuation\">,<\/span> <span class=\"hljs-attr\">\"CloudWatchMetricsEnabled\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-literal\"><span class=\"hljs-keyword\">true<\/span><\/span><span class=\"hljs-punctuation\">,<\/span> <span class=\"hljs-attr\">\"MetricName\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"BotControl\"<\/span> <span class=\"hljs-punctuation\">}<\/span><br \/>\n  <span class=\"hljs-punctuation\">}<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n  <span class=\"hljs-punctuation\">{<\/span><br \/>\n    <span class=\"hljs-attr\">\"Name\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"RateLimitLoginPerIP\"<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"Priority\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-number\">10<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"Statement\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span><br \/>\n      <span class=\"hljs-attr\">\"RateBasedStatement\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span><br \/>\n        <span class=\"hljs-attr\">\"Limit\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-number\">300<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n        <span class=\"hljs-attr\">\"AggregateKeyType\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"IP\"<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n        <span class=\"hljs-attr\">\"ScopeDownStatement\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span><br \/>\n          <span class=\"hljs-attr\">\"ByteMatchStatement\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span><br \/>\n            <span class=\"hljs-attr\">\"SearchString\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"\/login\"<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n            <span class=\"hljs-attr\">\"FieldToMatch\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"UriPath\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span><span class=\"hljs-punctuation\">}<\/span> <span class=\"hljs-punctuation\">}<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n            <span class=\"hljs-attr\">\"TextTransformations\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">[<\/span><span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"Type\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"NONE\"<\/span><span class=\"hljs-punctuation\">,<\/span> <span class=\"hljs-attr\">\"Priority\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-number\">0<\/span> <span class=\"hljs-punctuation\">}<\/span><span class=\"hljs-punctuation\">]<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n            <span class=\"hljs-attr\">\"PositionalConstraint\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"STARTS_WITH\"<\/span><br \/>\n          <span class=\"hljs-punctuation\">}<\/span><br \/>\n        <span class=\"hljs-punctuation\">}<\/span><br \/>\n      <span class=\"hljs-punctuation\">}<\/span><br \/>\n    <span class=\"hljs-punctuation\">}<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"Action\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"Block\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span><span class=\"hljs-punctuation\">}<\/span> <span class=\"hljs-punctuation\">}<\/span><span class=\"hljs-punctuation\">,<\/span><br \/>\n    <span class=\"hljs-attr\">\"VisibilityConfig\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-punctuation\">{<\/span> <span class=\"hljs-attr\">\"SampledRequestsEnabled\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-literal\"><span class=\"hljs-keyword\">true<\/span><\/span><span class=\"hljs-punctuation\">,<\/span> <span class=\"hljs-attr\">\"CloudWatchMetricsEnabled\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-literal\"><span class=\"hljs-keyword\">true<\/span><\/span><span class=\"hljs-punctuation\">,<\/span> <span class=\"hljs-attr\">\"MetricName\"<\/span><span class=\"hljs-punctuation\">:<\/span> <span class=\"hljs-string\">\"RateLogin\"<\/span> <span class=\"hljs-punctuation\">}<\/span><br \/>\n  <span class=\"hljs-punctuation\">}<\/span><br \/>\n<span class=\"hljs-punctuation\">]<\/span><br \/>\n<\/code><\/div>\n<\/div>\n<h3 data-start=\"8400\" data-end=\"8455\" id=\"d-google-recaptcha-enterprise-oat-uyumlu-mimari\">D) Google reCAPTCHA (Enterprise): OAT uyumlu mimari<\/h3>\n<p data-start=\"8456\" data-end=\"8779\">Google\u2019\u0131n <strong data-start=\"8466\" data-end=\"8473\">OAT<\/strong> tehditlerine g\u00f6re en iyi uygulamalar k\u0131lavuzu, kart doland\u0131r\u0131c\u0131l\u0131\u011f\u0131, credential stuffing vb. senaryolarda <strong data-start=\"8580\" data-end=\"8596\">puan tabanl\u0131<\/strong> karar ak\u0131\u015flar\u0131 ve \u201cek do\u011frulama\u201d \u00f6nerir. Uygulamada, skor\/ba\u011flama g\u00f6re \u201cizin ver \/ MFA iste \/ insan do\u011frulamas\u0131 iste \/ reddet\u201d kural\u0131 tan\u0131mla. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/cloud.google.com\/recaptcha\/docs\/best-practices-oat?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Google Cloud<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<h3 data-start=\"8781\" data-end=\"8839\" id=\"e-ga4-ic-developer-trafigini-disla-olcum-temizligi\">E) GA4: \u0130\u00e7\/developer trafi\u011fini d\u0131\u015fla (\u00f6l\u00e7\u00fcm temizli\u011fi)<\/h3>\n<ul data-start=\"8840\" data-end=\"9150\">\n<li data-start=\"8840\" data-end=\"9010\">\n<p data-start=\"8842\" data-end=\"9010\"><strong data-start=\"8842\" data-end=\"8862\">Internal traffic<\/strong>: IP\u2019leri \u201cDefine internal traffic\u201d ile tan\u0131mla, ard\u0131ndan <strong data-start=\"8920\" data-end=\"8936\">Data Filters<\/strong>\u2019ta <strong data-start=\"8940\" data-end=\"8951\">Exclude<\/strong> olarak aktif et. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/support.google.com\/analytics\/answer\/10104470?hl=en&amp;utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Google Yard\u0131m<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"9011\" data-end=\"9150\">\n<p data-start=\"9013\" data-end=\"9150\">(\u0130pucu) GA4, i\u00e7 trafikten gelen vuru\u015flara <code data-start=\"9055\" data-end=\"9068\">tt=internal<\/code> i\u015fareti koyar; validasyonu kolayla\u015ft\u0131r\u0131r. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/selnekovic.com\/ga4-internal-traffic-filtering-with-traffic-type-marker\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">selnekovic.com<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<h3 data-start=\"9152\" data-end=\"9183\" id=\"f-izleme-alarm-fikirleri\">F) \u0130zleme &amp; alarm fikirleri<\/h3>\n<ul data-start=\"9184\" data-end=\"9513\">\n<li data-start=\"9184\" data-end=\"9246\">\n<p data-start=\"9186\" data-end=\"9246\"><strong data-start=\"9186\" data-end=\"9203\">429\/5xx oran\u0131<\/strong> ve <strong data-start=\"9207\" data-end=\"9243\">endpoint ba\u015f\u0131na z-skor sapmalar\u0131<\/strong>.<\/p>\n<\/li>\n<li data-start=\"9247\" data-end=\"9310\">\n<p data-start=\"9249\" data-end=\"9310\"><strong data-start=\"9249\" data-end=\"9270\">Cookie-less istek<\/strong> oran\u0131, <strong data-start=\"9278\" data-end=\"9290\">ASN\/\u00fclke<\/strong> bazl\u0131 patlamalar.<\/p>\n<\/li>\n<li data-start=\"9311\" data-end=\"9395\">\n<p data-start=\"9313\" data-end=\"9395\"><strong data-start=\"9313\" data-end=\"9342\">Decoy\/honeypot isabetleri<\/strong> metriki (AI Labyrinth\/honeypot sayfalar\u0131na giri\u015f).<\/p>\n<\/li>\n<li data-start=\"9396\" data-end=\"9513\">\n<p data-start=\"9398\" data-end=\"9513\"><strong data-start=\"9398\" data-end=\"9423\">API sald\u0131r\u0131 trendleri<\/strong> i\u00e7in Akamai\u2019nin SOTI raporlar\u0131n\u0131 periyodik takip. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/vmblog.com\/archive\/2025\/04\/28\/akamai-research-web-attacks-up-33-apis-emerge-as-primary-targets.aspx?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">vmblog.com<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<hr data-start=\"9515\" data-end=\"9518\" \/>\n<h2 data-start=\"9520\" data-end=\"9560\" id=\"neden-robots-txt-tek-basina-yetmiyor\">Neden robots.txt tek ba\u015f\u0131na yetmiyor?<\/h2>\n<p data-start=\"9561\" data-end=\"9839\">Son 1 y\u0131lda; kimli\u011fini gizleyen, <strong data-start=\"9594\" data-end=\"9627\">robots.txt\u2019yi g\u00f6rmezden gelen<\/strong> ya da <strong data-start=\"9634\" data-end=\"9655\">UA\/ba\u015fl\u0131k taklidi<\/strong> yapan AI taray\u0131c\u0131lar\u0131na dair \u00e7ok say\u0131da bulgu payla\u015f\u0131ld\u0131. Bu y\u00fczden <strong data-start=\"9724\" data-end=\"9757\">altyap\u0131 seviyesinde engelleme<\/strong> (WAF\/ASN\/UA\/Rate limit\/Decoy) gereklidir. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/arstechnica.com\/tech-policy\/2025\/01\/ai-haters-build-tarpits-to-trap-and-trick-ai-scrapers-that-ignore-robots-txt\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">arstechnica.com<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<hr data-start=\"9841\" data-end=\"9844\" \/>\n<h2 data-start=\"9846\" data-end=\"9897\" id=\"kullanici-deneyimi-kademeli-surtunme-prensibi\">Kullan\u0131c\u0131 deneyimi: \u201ckademeli s\u00fcrt\u00fcnme\u201d prensibi<\/h2>\n<ul data-start=\"9898\" data-end=\"10164\">\n<li data-start=\"9898\" data-end=\"10164\">\n<p data-start=\"9900\" data-end=\"10164\">Herkese CAPTCHA g\u00f6stermek yerine, <strong data-start=\"9934\" data-end=\"9949\">risk skorlu<\/strong> ve <strong data-start=\"9953\" data-end=\"9965\">kademeli<\/strong> zorla\u015ft\u0131rma kullan\u0131n: d\u00fc\u015f\u00fck riskli ak\u0131\u015flarda s\u00fcrt\u00fcnme yok; risk y\u00fckseldik\u00e7e <strong data-start=\"10042\" data-end=\"10079\">MFA \/ challenge \/ manuel inceleme<\/strong>. Turnstile ve reCAPTCHA bu modeli destekler. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/developers.cloudflare.com\/turnstile\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Cloudflare Docs<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<hr data-start=\"10166\" data-end=\"10169\" \/>\n<h2 data-start=\"10171\" data-end=\"10211\" id=\"ek-somut-kural-seti-taslagi-ozet\">Ek: Somut \u201ckural seti\u201d tasla\u011f\u0131 (\u00f6zet)<\/h2>\n<ol data-start=\"10212\" data-end=\"11171\">\n<li data-start=\"10212\" data-end=\"10398\">\n<p data-start=\"10215\" data-end=\"10398\"><strong data-start=\"10215\" data-end=\"10224\">Nginx<\/strong>: <code data-start=\"10226\" data-end=\"10234\">\/login<\/code> i\u00e7in IP+username anahtar\u0131yla <code data-start=\"10264\" data-end=\"10275\">limit_req<\/code>; form u\u00e7lar\u0131na honeypot + saatlik limit; \u201cs\u0131cak\u201d scraping u\u00e7lar\u0131na 1 r\/s s\u0131n\u0131r\u0131. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/nginx.org\/en\/docs\/http\/ngx_http_limit_req_module.html?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">nginx.org<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"10399\" data-end=\"10633\">\n<p data-start=\"10402\" data-end=\"10633\"><strong data-start=\"10402\" data-end=\"10416\">Cloudflare<\/strong>: Turnstile\u2019\u0131 yaln\u0131zca <strong data-start=\"10439\" data-end=\"10461\">login\/signup\/\u00f6deme<\/strong> gibi riskli ak\u0131\u015flara yerle\u015ftir; <strong data-start=\"10494\" data-end=\"10510\">AI Labyrinth<\/strong>\u2019i a\u00e7; bilinen AI UA\u2019lar\u0131 ve \u201c\u015f\u00fcpheli oran\u201d i\u00e7in WAF\u2019ta Managed Challenge uygula. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/developers.cloudflare.com\/turnstile\/?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Cloudflare Docs<\/span><span class=\"-me-1 flex h-full items-center rounded-full px-1 text-[#8F8F8F]\">+1<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"10634\" data-end=\"10771\">\n<p data-start=\"10637\" data-end=\"10771\"><strong data-start=\"10637\" data-end=\"10648\">AWS WAF<\/strong>: \u00d6nde Allowlist \u2192 <strong data-start=\"10667\" data-end=\"10682\">Bot Control<\/strong> \u2192 <strong data-start=\"10685\" data-end=\"10704\">Common Rule Set<\/strong> \u2192 ak\u0131\u015fa \u00f6zel rate limit. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/docs.aws.amazon.com\/waf\/latest\/developerguide\/waf-bot-control.html?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">docs.aws.amazon.com<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"10772\" data-end=\"10916\">\n<p data-start=\"10775\" data-end=\"10916\"><strong data-start=\"10775\" data-end=\"10782\">GA4<\/strong>: Internal\/Developer filtreleri <strong data-start=\"10814\" data-end=\"10824\">Active<\/strong>; bot benzeri oturumlar i\u00e7in ayr\u0131 segment olu\u015ftur. <span class=\"\" data-state=\"closed\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out text-token-text-secondary! bg-[#F4F4F4]! dark:bg-[#303030]!\" href=\"https:\/\/support.google.com\/analytics\/answer\/10104470?hl=en&amp;utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Google Yard\u0131m<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<li data-start=\"10917\" data-end=\"11029\">\n<p data-start=\"10920\" data-end=\"11029\"><strong data-start=\"10920\" data-end=\"10943\">S\u00fcrekli iyile\u015ftirme<\/strong>: Hatal\u0131 pozitif vakalar\u0131n\u0131 toplay\u0131p istisnalar yaz; e\u015fikleri haftal\u0131k g\u00f6zden ge\u00e7ir.<\/p>\n<\/li>\n<li data-start=\"11030\" data-end=\"11171\">\n<p data-start=\"11033\" data-end=\"11171\"><strong data-start=\"11033\" data-end=\"11049\">Trend takibi<\/strong>: API sald\u0131r\u0131lar\u0131 ve scraper davran\u0131\u015flar\u0131na dair Akamai SOTI raporlar\u0131n\u0131 takip et. <span class=\"\" data-state=\"delayed-open\" aria-describedby=\"radix-_r_1jf_\"><span class=\"ms-1 inline-flex max-w-full items-center relative top-[-0.094rem] animate-[show_150ms_ease-in]\" data-testid=\"webpage-citation-pill\" aria-describedby=\"radix-_r_1jf_\"><a class=\"flex h-4.5 overflow-hidden rounded-xl px-2 text-[9px] font-medium transition-colors duration-150 ease-in-out bg-token-text-primary! text-token-main-surface-primary!\" href=\"https:\/\/www.akamai.com\/resources\/state-of-the-internet?utm_source=chatgpt.com\" target=\"_blank\" rel=\"noopener nofollow\"><span class=\"relative start-0 bottom-0 flex h-full w-full items-center\"><span class=\"flex h-4 w-full items-center justify-between overflow-hidden\"><span class=\"max-w-[15ch] grow truncate overflow-hidden text-center\">Akamai<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Spam ve bot trafi\u011fini WAF\/CRS, Nginx rate limiting, Turnstile\/reCAPTCHA, honeypot ve GA4 \u00f6l\u00e7\u00fcm temizli\u011fiyle azalt\u0131n. Uygulanabilir kural setleri ve kontrol listesi i\u00e7erir.<\/p>\n","protected":false},"author":1,"featured_media":2157,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[62,75,66],"tags":[],"class_list":["post-2156","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-guvenlik","category-hosting","category-nginx"],"_links":{"self":[{"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/posts\/2156","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/comments?post=2156"}],"version-history":[{"count":1,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/posts\/2156\/revisions"}],"predecessor-version":[{"id":2158,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/posts\/2156\/revisions\/2158"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/media\/2157"}],"wp:attachment":[{"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/media?parent=2156"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/categories?post=2156"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/tags?post=2156"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}