Sunucu Loglarından AI Bot Trafiği Nasıl Analiz Edilir?

Yazar: Webizm Web Teknolojileri EditörüYayın: 27 Ağu 2026Güncelleme: 27 Ağu 202616 dk Okuma

Sunucu loglarındaki AI bot trafiği, erişim kayıtlarındaki User-Agent dizeleri ve IP adresleri filtrelenerek analiz edilir. Bu yöntem bant genişliği optimizasyonu sağlar.

Sunucu Loglarından AI Bot Trafiği Nasıl Analiz Edilir? için öne çıkan görsel
Sunucu Loglarından AI Bot Trafiği Nasıl Analiz Edilir? için öne çıkan görsel

Sunucu loglarındaki AI bot trafiği, erişim kayıtlarındaki User-Agent dizeleri ve IP adresleri filtrelenerek analiz edilir. Bu yöntem bant genişliği optimizasyonu sağlar.

Altyapı mühendisleri ve dijital varlık yöneticileri için sunucu kaynaklarının verimli kullanımı, öngörülemeyen maliyet artışlarını engellemenin temel adımıdır. Yapay zeka modellerinin internet genelinde yürüttüğü kontrolsüz tarama faaliyetleri; sunucuların CPU, bellek ve ağ çıkış (egress) kapasitelerini tüketmektedir. Bu rehberde, "Sunucu Loglarından AI Bot Trafiği Nasıl Analiz Edilir?" sorusunun yanıtı; Nginx ve Apache erişim kayıtlarının incelenmesi, komut satırı filtreleme teknikleri, ters DNS (Reverse DNS) doğrulamaları ve bant genişliği optimizasyon yöntemleri üzerinden ele alınmaktadır.

AI Bot Trafiği Analizinin Kurumsal Altyapıdaki Önemi

Büyük dil modellerinin (LLM) eğitimi ve gerçek zamanlı bilgi alma mekanizmaları (RAG - Retrieval-Augmented Generation), internet üzerindeki içeriklerin sürekli ve agresif bir biçimde taranmasını gerektirir. Geleneksel arama motoru tarayıcıları indeksleme amacıyla sayfa hiyerarşisini belirli aralıklarla ziyaret ederken, yapay zeka veri toplayıcıları sayfaları derinlemesine, eşzamanlı yüzlerce istek göndererek ve önbellek mekanizmalarını atlayarak kazıyabilmektedir. Bu kontrolsüz döngü, kurumsal sunucu altyapılarında görünmeyen ancak maliyetli bir kaynak tüketimine yol açar.

Erişim loglarının (access logs) derinlemesine analiz edilmesi, hangi yapay zeka aktörünün web sitenizi ne sıklıkla ziyaret ettiğini, hangi uç noktaları (endpoint) hedef aldığını ve toplam ağ çıkış trafiğinizin (egress traffic) ne kadarını tükettiğini açığa çıkarır. Veri merkezlerinden gelen bu agresif istekler, dinamik sayfa üretim maliyetlerini artırırken, gerçek kullanıcıların erişim performansını da doğrudan tehdit eder.

Log analitiği yapılmadan yönetilen web altyapılarında, bant genişliği aşımları ve ani sunucu kilitlenmeleri kaçınılmaz hale gelir. Analiz süreci, salt bir güvenlik tedbiri olmanın ötesinde, operasyonel süreklilik ve bütçe verimliliği sağlayan stratejik bir BT operasyonudur.

Bant Genişliği Maliyetlerinin Optimizasyonu ve Sunucu Yükü (CPU/RAM) Yönetimi

Yapay zeka tarayıcıları, geleneksel botlara kıyasla sayfaların sadece HTML çıktısını değil, JavaScript dosyalarını, yüksek çözünürlüklü görselleri ve ilişkili JSON veri yapılarını da eşzamanlı olarak indirir. Sunucunuza yönelen bu yoğun istek hacmi, ağ katmanında doğrudan gigabaytlarca, hatta terabaytlarca veri transferi anlamına gelir. Bulut servis sağlayıcılarında (AWS, Google Cloud, Azure veya yerel veri merkezleri) giden ağ trafiği (egress) kural olarak ücretlendirildiğinden, optimize edilmemiş bir bot trafiği doğrudan işletme faturasına ek maliyet olarak yansır.

Donanım tarafında ise durum daha kritiktir. Statik önbellek (caching) katmanlarından geçemeyen, dinamik veritabanı sorguları tetikleyen her istek, uygulama sunucusunun CPU çekirdeklerini ve RAM kaynaklarını tüketir. Çoklu iş parçacığı (multi-threading) kullanarak paralel istekler gönderen bir LLM tarayıcısı, PHP-FPM havuzlarını, Node.js event loop yapılarını veya veritabanı bağlantı havuzlarını (connection pools) saniyeler içinde tüketerek meşru kullanıcıların 504 Gateway Timeout veya 503 Service Unavailable hatalarıyla karşılaşmasına neden olabilir.

Erişim logları üzerinden gerçekleştirilen bant genişliği analitiği, hangi URL yollarının en fazla bayt transferine neden olduğunu net bir şekilde gösterir. Bu veriler ışığında, statik dosyaların CDN üzerinden sunulması, gereksiz dinamik yolların botlara kapatılması ve eşzamanlı istek limitlerinin belirlenmesi mümkün olur.

Fikri Mülkiyetin ve İçeriklerin İzinsiz Veri Kazıma Faaliyetlerine Karşı Korunması

Kurumsal web siteleri, SaaS dokümantasyonları, e-ticaret ürün katalogları ve tescilli araştırma raporları, yüksek maliyetlerle üretilen fikri mülkiyet ürünleridir. Yapay zeka şirketleri, bu verileri modellerini eğitmek amacıyla otomatik web kazıma (web scraping) yöntemleriyle toplar. Log analizleri, içeriklerinizin hangi şirketler veya üçüncü taraf veri aracıları tarafından kopyalandığını tespit etmenize olanak tanır.

Log kayıtlarındaki istek modelleri incelendiğinde, belirli IP bloklarının ve User-Agent dizelerinin sitenin tüm site haritasını (sitemap.xml) sistematik olarak indirdiği, sayfalar arasındaki gezinme mantığını takip ederek veri madenciliği yaptığı görülebilir. Fikri mülkiyetin korunması için bu trafiğin şeffaf bir şekilde izlenmesi şarttır.

Log analizi sonucunda hangi içeriklerin risk altında olduğu saptanır ve şirket politikalarına göre içeriklerin izinsiz eğitim veri setlerine dahil edilmesi teknik filtreleme mekanizmalarıyla engellenir. Bu yaklaşım, dijital varlıkların değer kaybını önlemede temel savunma hattını oluşturur.

Arama Motoru Tarayıcıları ile LLM Eğitim Botlarının Ayrıştırılması

Yapay zeka ekosistemindeki en kritik operasyonel ayrım, arama motorlarının dizine ekleme yapan tarayıcıları ile yalnızca yapay zeka modellerini eğitmek için veri toplayan botlar arasındaki farktır. Örneğin, geleneksel @@CODE0@@ web sitenizi Google Arama sonuçlarında listelemek için tararken, @@CODE1@@ belirteci Gemini gibi modellerin eğitimi için veri toplar. Benzer şekilde, OpenAI'ın @@CODE2@@ aracı ChatGPT Search motoruna canlı indeks sağlarken, @@CODE3@@ salt LLM eğitimi amacıyla içerik çeker.

Bu ayrımı yapamadan uygulanan toptan engelleme (blanket blocking) kuralları, sitenizin arama motorlarındaki organik görünürlüğünü yok edebilir. Log analizi, User-Agent ve IP doğrulaması yaparak arama motoru indeksleyicilerine dokunmadan, salt veri kazıma faaliyeti yürüten botları cerrahi bir hassasiyetle izole etmenizi sağlar.

Aşağıdaki tablo, kurumsal altyapılarda karşılaşılan bot kategorilerini ve bunların teknik etkilerini özetlemektedir:

Bot KategorisiTemel AmaçSunucu Yükü EtkisiSEO / Organik Görünürlük EtkisiÖnerilen Aksiyon
Arama Motoru İndeksleyicileriOrganik arama motoru dizinine eklemeOrta (Tarama bütçesine göre yönetilir)Doğrudan pozitif etki (Engellenmemeli)İzin Ver / Optimize Et
LLM Canlı Arama BotlarıAI tabanlı arama sonuçlarında gerçek zamanlı alıntıOrta-YüksekAI arama platformlarında görünürlük sağlarİzle / Kontrollü İzin Ver
LLM Model EğiticileriYapay zeka ağırlıklarını (weights) eğitmek için veri toplamaÇok Yüksek (Agresif veri kazıma)Organik aramaya doğrudan katkısı yokturKısıtla / Engelle
Ticari Veri Kazıyıcılar (Scrapers)Üçüncü taraflara satılmak üzere veri toplamaAşırı Yüksek (Düzensiz istek paternleri)Yok (Potansiyel güvenlik riski)Tamamen Engelle

Arama Motoru İndeksleyicileri

Temel Amaç

Organik arama motoru dizinine ekleme

Sunucu Yükü Etkisi

Orta (Tarama bütçesine göre yönetilir)

SEO / Organik Görünürlük Etkisi

Doğrudan pozitif etki (Engellenmemeli)

Önerilen Aksiyon

İzin Ver / Optimize Et

LLM Canlı Arama Botları

Temel Amaç

AI tabanlı arama sonuçlarında gerçek zamanlı alıntı

Sunucu Yükü Etkisi

Orta-Yüksek

SEO / Organik Görünürlük Etkisi

AI arama platformlarında görünürlük sağlar

Önerilen Aksiyon

İzle / Kontrollü İzin Ver

LLM Model Eğiticileri

Temel Amaç

Yapay zeka ağırlıklarını (weights) eğitmek için veri toplama

Sunucu Yükü Etkisi

Çok Yüksek (Agresif veri kazıma)

SEO / Organik Görünürlük Etkisi

Organik aramaya doğrudan katkısı yoktur

Önerilen Aksiyon

Kısıtla / Engelle

Ticari Veri Kazıyıcılar (Scrapers)

Temel Amaç

Üçüncü taraflara satılmak üzere veri toplama

Sunucu Yükü Etkisi

Aşırı Yüksek (Düzensiz istek paternleri)

SEO / Organik Görünürlük Etkisi

Yok (Potansiyel güvenlik riski)

Önerilen Aksiyon

Tamamen Engelle

Yaygın Yapay Zeka Botları ve User-Agent İmzaları

Sunucu erişim kayıtlarında bir isteğin kaynağını tespit etmenin ilk adımı, HTTP başlığında (header) yer alan User-Agent dizesini incelemektir. Meşru yapay zeka şirketleri, RFC standartlarına uygun olarak tarayıcılarının kimliklerini bu başlıkta beyan eder. Bu sayede sistem yöneticileri, log analizi sırasında karmaşık algoritmalar çalıştırmadan doğrudan dize eşleme yöntemleriyle temel filtrelemeleri yapabilirler.

Ancak bot ekosistemi statik değildir. Yapay zeka sağlayıcıları, farklı kullanım amaçları için farklı tarayıcı ajanları tanımlamaktadır. Kullanıcıların sohbet arayüzünden tetiklediği canlı web gezintileri, genel model eğitim taramaları ve arama motoru indeksleme botları farklı başlıklar kullanır.

Bu imzaların doğru bilinmesi, analiz aşamasında hatalı pozitif (false positive) veya hatalı negatif (false negative) sonuçların önüne geçer. Aşağıdaki alt bölümlerde sektörde en yüksek trafik hacmine sahip ana yapay zeka botlarının User-Agent yapıları ve teknik profilleri ele alınmaktadır.

OpenAI Ekosistemi: GPTBot, ChatGPT-User ve OAI-SearchBot

OpenAI, web üzerindeki içerikleri tüketmek amacıyla üç temel ajan kullanır. Bunların her biri sunucunuza farklı bir amaçla ve farklı sıklıkta istek gönderir:

  1. GPTBot: OpenAI'ın temel büyük dil modellerini (GPT serisi) eğitmek için internet genelinde veri toplayan ana tarayıcıdır. Standart User-Agent dizesi şu şekildedir:

Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.2; +https://openai.com/gptbot)
GPTBot, sitenizin tamamını tarama eğilimindedir ve yüksek bant genişliği tüketebilir.

  1. ChatGPT-User: ChatGPT kullanıcılarının arayüz üzerinden bir web sayfasının linkini vererek "bu sayfayı özetle" veya "incele" komutu vermesi durumunda tetiklenen gerçek zamanlı ajandır. User-Agent formatı:

Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot
Bu istekler doğrudan son kullanıcı aksiyonuyla tetiklendiği için düşük hacimli ancak anlıktır.

  1. OAI-SearchBot: OpenAI'ın arama motoru özellikleri için web içeriğini dizine eklemek amacıyla kullandığı protokoldür. Arama sonuçlarında kaynak gösterilmek ve trafik almak isteyen sitelerin bu bota izin vermesi beklenir:

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) AppleWebKit/537.36 (KHTML, like Gecko; compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot)

Google AI Tarayıcıları: Google-Extended ve Gemini

Google, arama ekosistemi ile yapay zeka eğitim süreçlerini birbirinden ayırmak için özel User-Agent token yapıları geliştirmiştir. Bu ayrım, web yöneticilerine arama indeksinde kalırken AI eğitimine veri sağlamama esnekliği tanır:

  • Google-Extended: Google'ın Gemini ve Vertex AI gibi yapay zeka teknolojilerini eğitmek için kullandığı özel tarayıcı belirtecidir. Ayrı bir HTTP User-Agent göndermek yerine, Googlebot altyapısı üzerinden çalışır ancak robots.txt dosyasında Google-Extended belirteciyle kontrol edilir. Log analizinde Google IP aralıklarından gelen ancak AI veri toplama kapsamındaki istekleri tespit etmek için reverse DNS ve IP eşleştirmeleri birlikte değerlendirilmelidir.

  • Google Other / Gemini Web: Google'ın arama dışı diğer operasyonları ve Ar-Ge amaçlı veri kazıma işlemleri için kullandığı @@CODE0@@ ajanları da erişim kayıtlarında sıkça görülür. Bu ajanlar genellikle @@CODE1@@ dizesini taşır.

Anthropic (ClaudeBot), Applebot-Extended ve CCBot Altyapıları

OpenAI ve Google dışındaki büyük teknoloji kuruluşları ve açık veri konsorsiyumları da sunucularda kayda değer bir trafik hacmi oluşturur:

  • ClaudeBot (Anthropic): Anthropic tarafından geliştirilen Claude modellerinin eğitimi için veri toplayan ajandır. User-Agent dizesi tipik olarak şöyledir:

@@CODE0@@ veya @@CODE1@@
ClaudeBot, yapılandırılmış metin içeriği yüksek olan sayfalara yoğunlaşır.

  • Applebot-Extended: Apple'ın Siri ve Apple Intelligence ekosistemindeki üretken yapay zeka modellerini eğitmek amacıyla kullandığı veri toplama belirtecidir. Standart @@CODE0@@ arama indekslemesi yaparken, @@CODE1@@ sadece model eğitimi verisi toplar.

  • CCBot (Common Crawl): İnternetin en büyük açık kaynaklı veri havuzunu oluşturan Common Crawl vakfının tarayıcısıdır. Pek çok açık kaynaklı LLM (Llama, Mistral vb.) doğrudan Common Crawl veri setleri üzerinden eğitildiği için, CCBot dolaylı olarak tüm yapay zeka sektörünün veri kaynağıdır:

CCBot/2.0 (https://commoncrawl.org/faq/)
CCBot, terabaytlarca veriyi çekebilen en agresif tarayıcılardan biridir.

Aşağıdaki tablo, erişim kayıtlarında aranması gereken temel User-Agent kalıplarını listelemektedir:

Bot / OrganizasyonUser-Agent İmzası KalıbıBirincil Görevi
OpenAI GPTBotGPTBot/LLM Temel Eğitimi
OpenAI ChatGPTChatGPT-User/Anlık Kullanıcı İsteği
OpenAI SearchOAI-SearchBot/AI Arama İndeksleme
Anthropic Claude@@CODE0@@ veya @@CODE1@@LLM Temel Eğitimi
Common CrawlCCBot/Genel Açık Veri Seti Üretimi
Bytespider (ByteDance)BytespiderLLM & Algoritma Eğitimi
Coherecohere-aiKurumsal LLM Eğitimi
PerplexityPerplexityBot/AI Arama & Dizinleme

OpenAI GPTBot

User-Agent İmzası Kalıbı

GPTBot/

Birincil Görevi

LLM Temel Eğitimi

OpenAI ChatGPT

User-Agent İmzası Kalıbı

ChatGPT-User/

Birincil Görevi

Anlık Kullanıcı İsteği

User-Agent İmzası Kalıbı

OAI-SearchBot/

Birincil Görevi

AI Arama İndeksleme

Anthropic Claude

User-Agent İmzası Kalıbı

@@CODE0@@ veya @@CODE1@@

Birincil Görevi

LLM Temel Eğitimi

Common Crawl

User-Agent İmzası Kalıbı

CCBot/

Birincil Görevi

Genel Açık Veri Seti Üretimi

Bytespider (ByteDance)

User-Agent İmzası Kalıbı

Bytespider

Birincil Görevi

LLM & Algoritma Eğitimi

Cohere

User-Agent İmzası Kalıbı

cohere-ai

Birincil Görevi

Kurumsal LLM Eğitimi

Perplexity

User-Agent İmzası Kalıbı

PerplexityBot/

Birincil Görevi

AI Arama & Dizinleme

Sunucu Erişim Loglarında Adım Adım Bot Tespiti

Web sunucularına gelen her HTTP/HTTPS isteği, web sunucusu yazılımı tarafından erişim loglarına (access log) kaydedilir. Bu kayıtlar; istemcinin IP adresini, istek zamanını, HTTP metodunu (GET, POST), istenen URL yolunu, HTTP yanıt durum kodunu (200, 404, 500 vb.), aktarılan bayt miktarını ve istemcinin User-Agent dizesini içerir.

AI bot trafiğinin tespiti, bu devasa metin dosyaları içerisinden belirli anahtar kelimelerin, IP bloklarının ve anomali gösteren istek paternlerinin ayrıştırılması sürecidir. Küçük ve orta ölçekli sistemlerde bu işlem doğrudan Linux kabuk (shell) araçlarıyla saniyeler içinde yapılabilirken, yüksek trafikli kurumsal sistemlerde merkezi log yönetim çözümleri devreye girer.

Log analizi yaparken doğru dosya yollarının bilinmesi ve sunucunun kayıt formatı yapısının anlaşılması, analiz sürecinin hatasız ilerlemesini sağlar.

Nginx ve Apache Log Dosyası Mimarisi ve Formatları

Nginx ve Apache web sunucuları genellikle Combined Log Format standardını kullanır. Bu formatın yapısını bilmek, filtreleme komutlarında hangi sütunun hangi veriyi temsil ettiğini anlamak için zorunludur:

Standart bir Nginx Combined log formatı şu şekildedir:

$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"

Gerçek bir log satırı örneği:

192.0.2.45 - - [27/Aug/2026:14:32:10 +0000] "GET /api/v1/articles/enterprise-infra HTTP/1.1" 200 45210 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.2; +https://openai.com/gptbot)"

Bu örnekte:

  • @@CODE0@@: İsteği yapan IP adresi ($remoteaddr - 1. sütun)

  • @@CODE0@@: İstek zamanı ($timelocal - 4. sütun)

  • GET /api/v1/articles/enterprise-infra HTTP/1.1: İstek içeriği ($request - 6. ve 7. sütunlar)

  • 200: HTTP yanıt kodu ($status - 9. sütun)

  • 45210: İstemciye aktarılan veri miktarı (bayt cinsinden - 10. sütun)

  • GPTBot/1.2...: User-Agent dizesi (Son sütun)

Log dosyaları varsayılan olarak şu dizinlerde saklanır:

  • Nginx: /var/log/nginx/access.log

  • Apache (Debian/Ubuntu): /var/log/apache2/access.log

  • Apache (RHEL/CentOS): /var/log/httpd/access_log

Linux Komut Satırı Araçlarıyla (grep, awk, sed) Hızlı Filtreleme

Büyük boyutlu log dosyalarında hızlı ve kesin analizler gerçekleştirmek için Linux'un yerleşik metin işleme araçları (@@CODE0@@, @@CODE1@@, @@CODE2@@, @@CODE3@@, wc) kullanılır. Aşağıdaki komutlar, sistem yöneticilerinin en sık başvurduğu operasyonel analiz sorgularıdır:

1. Belirli Bir AI Botunun Toplam İstek Sayısını Bulma:
Log dosyasında GPTBot geçen tüm satırları saymak için:

grep -c "GPTBot" /var/log/nginx/access.log

2. En Çok İstek Yapan AI Botlarını Listeleme:
Yaygın AI botlarının User-Agent imzalarını tarayarak hangi botun kaç istek attığını sıralamak için:

grep -Ei "GPTBot|ClaudeBot|CCBot|Bytespider|PerplexityBot" /var/log/nginx/access.log | awk -F'"' '{print $6}' | sort | uniq -c | sort -nr

3. Bir Botun En Çok Ziyaret Ettiği Sayfaları (URL) Tespit Etme:
ClaudeBot'un en çok hangi sayfalara yüklendiğini görmek için:

grep "ClaudeBot" /var/log/nginx/access.log | awk '{print $7}' | sort | uniq -c | sort -nr | head -n 20

4. AI Botlarının Tükettiği Toplam Bant Genişliğini (Bayt) Hesaplama:
GPTBot tarafından indirilen toplam veri miktarını megabayt (MB) cinsinden toplamak için:

grep "GPTBot" /var/log/nginx/access.log | awk '{sum += $10} END {print "Toplam Tüketim:", sum / (1024*1024), "MB"}'

5. Botların Aldığı HTTP Durum Kodlarının Dağılımı:
Botların isteklerinin başarılı mı (200), engellendi mi (403), yoksa bulunamadı mı (404) olduğunu görmek için:

grep "GPTBot" /var/log/nginx/access.log | awk '{print $9}' | sort | uniq -c

Büyük Ölçekli Veriler İçin Gelişmiş Log Analiz Araçları

Günlük gigabaytlarca log üreten yüksek trafikli platformlarda komut satırı araçları tek başına yeterli olmayabilir. Bu senaryolarda merkezi log yönetim ve analiz platformları devreye girer:

  • GoAccess: Terminal tabanlı çalışan, anlık ve görsel HTML raporları üretebilen açık kaynaklı ve son derece hızlı bir log analiz aracıdır. Sunucuda ekstra yük oluşturmadan saniyeler içinde bot analiz raporu çıkarır:

  goaccess /var/log/nginx/access.log -o /var/www/html/report.html --log-format=COMBINED --real-time-html
  • Elasticsearch, Logstash, Kibana (ELK / OpenSearch): Log satırlarını JSON formatında indeksleyerek IP, User-Agent, durum kodu ve aktarılan bayt verilerini gerçek zamanlı grafiklere dönüştürür. Kibana üzerinde "AI Bot Trafiği" özel gösterge panelleri (dashboard) kurularak saatlik anomaliler izlenebilir.

  • Grafana Loki: Logları indekslemeden doğrudan etiketler üzerinden toplayarak hafif ve maliyet odaklı bir izleme altyapısı sunar. Promtail ajanları aracılığıyla Nginx loglarındaki bot hareketleri anlık olarak Grafana üzerinde görselleştirilir.

SÜREÇ ADIMLARI

Log Dosyalarında Bot Tespiti İçin Uygulama Adımları

Sunucu erişim kayıtlarını analiz ederken izlenmesi gereken standart operasyonel adımlar:

01

Log Dosyası Konumunu ve Formatını Doğrulayın

Sunucunuzun Nginx veya Apache yapılandırma dosyasından erişim logunun tam yolunu ve sütun hiyerarşisini kontrol edin.

02

Hedef User-Agent İmzalarını Filtreleyin

grep ve awk komutları yardımıyla OpenAI, Anthropic ve Common Crawl gibi bilinen bot imzalarını tarayarak istek sayılarını çıkarın.

03

Bant Genişliği ve Yanıt Kodlarını Ölçümleyin

Botların çektiği toplam bayt miktarını toplayın ve 200/403/429/503 durum kodlarının oranlarını analiz edin.

04

Anomali Gösteren URL Yollarını Raporlayın

Botların en çok hedef aldığı veritabanı veya API yollarını belirleyerek altyapı önlemlerini planlayın.

Sahte (Spoofed) AI Botlarını Tespit Etme ve Doğrulama Yöntemleri

HTTP protokolünün doğası gereği, bir istemcinin gönderdiği @@CODE0@@ başlığı istemci tarafından serbestçe değiştirilebilir. Kötü niyetli web kazıyıcılar, güvenlik açıklarını tarayan botlar ve saldırganlar, sistem yöneticilerinin veya güvenlik duvarlarının meşru botlara tanıdığı ayrıcalıklardan yararlanmak amacıyla User-Agent dizelerini @@CODE1@@, @@CODE2@@ veya @@CODE3@@ olarak taklit ederler. Bu duruma User-Agent Spoofing (Kullanıcı Aracısı Sahteciliği) denir.

Sunucu loglarında GPTBot dizesini görmek, o isteğin kesinlikle OpenAI sunucularından geldiği anlamına gelmez. Eğer sunucunuzda sadece User-Agent filtresine güvenerek kurallar oluşturursanız, sahte botların sistem kaynaklarınızı sömürmesine veya güvenlik açıklarınızı taramasına farkında olmadan izin vermiş olursunuz.

Bu nedenle kurumsal düzeyde yapılan analizlerde, bot kimliğinin ağ düzeyinde (IP ve DNS tabanlı) doğrulanması zorunludur.

Ters DNS (Reverse DNS) ve Çift Yönlü Doğrulama Mantığı

Bir botun gerçekten iddia ettiği şirkete ait olup olmadığını anlamanın endüstri standardı yöntemi FCrDNS (Forward-Confirmed reverse DNS - İleri Yönlü Doğrulanmış Ters DNS) sürecidir. Bu süreç iki aşamalı bir sorgulama mantığıyla çalışır:

  1. Ters DNS (PTR Kaydı) Sorgusu: İstekte bulunan IP adresinin hangi ana makine adına (hostname) sahip olduğu DNS sunucularına sorulur.

  2. İleri DNS (A/AAAA Kaydı) Sorgusu: Elde edilen alan adının (hostname) tekrar DNS sorgusu yapılarak aynı IP adresine işaret edip etmediği kontrol edilir.

Örnek bir doğrulama senaryosu:
Log dosyanızda @@CODE0@@ IP adresinden gelen ve kendisini @@CODE1@@ olarak tanıtan bir istek olduğunu varsayalım.

Adım 1: PTR Sorgusu Yapma

host 192.0.2.1

Dönen yanıt:
1.2.0.192.in-addr.arpa domain name pointer gptbot-192-0-2-1.openai.com.

Burada dönen alan adının OpenAI'ın resmi alan adı (openai.com) ile bittiği görülmelidir.

Adım 2: A Kaydı ile Doğrulama

host gptbot-192-0-2-1.openai.com

Dönen yanıt:
gptbot-192-0-2-1.openai.com has address 192.0.2.1

Eğer A kaydı sorgusunda dönen IP, ilk istekteki IP ile birebir eşleşiyorsa, bu istek kesin olarak meşru bir OpenAI botudur. Eğer ters sorguda alan adı sahte çıkarsa veya ikinci sorgudaki IP eşleşmezse, istek sahte (spoofed) bir bottur ve güvenlik duvarı seviyesinde derhal engellenmelidir.

IP Aralığı (CIDR) Doğrulaması ve ASN Kontrolleri

Yapay zeka şirketleri (OpenAI, Anthropic, Google vb.), botlarının kullandığı resmi IP aralıklarını (CIDR blokları) ve ASN (Autonomous System Number) numaralarını JSON formatında düzenli olarak yayımlarlar. DNS sorgularının yaratacağı gecikmeyi istemeyen yüksek performanslı altyapılarda, doğrudan bu IP listeleri üzerinden statik doğrulama yapılır:

  • OpenAI IP Listesi: OpenAI, GPTBot ve arama botlarının güncel IP bloklarını https://openai.com/gptbot.json adresinde sunar.

  • Anthropic IP Listesi: Anthropic, ClaudeBot trafiğinin çıktığı IP adreslerini resmi dokümantasyonunda liste olarak paylaşır.

  • Google IP Aralıkları: Google'ın tüm botlarına ait IP blokları https://developers.google.com/search/apis/ipranges/googlers.json adresinden programatik olarak çekilebilir.

Log analizi yaparken şüpheli bir IP'nin ASN bilgisini kontrol etmek için Linux terminalinde whois aracı kullanılır:

whois 192.0.2.1 | grep -iE "OrgName|AutonomousSystem|NetName"

Eğer kendisini GPTBot olarak tanıtan bir isteğin ASN sorgusunda bilinmeyen bir hosting sağlayıcısı veya şüpheli bir veri merkezi görünüyorsa, söz konusu istek doğrudan sahte bot olarak etiketlenmelidir.

Analiz Sonrası Bant Genişliği ve Kaynak Optimizasyonu Stratejileri

Log analizleri sonucunda hangi botların ne kadar kaynak tükettiği ve hangilerinin sahte olduğu belirlendikten sonra, altyapıyı korumak ve maliyetleri düşürmek için operasyonel adımlar atılmalıdır. Pasif izleme aşamasından aktif yönetim aşamasına geçiş; web sunucusu, güvenlik duvarı (WAF) ve robots.txt katmanlarında yapılandırılacak kurallarla sağlanır.

Optimizasyonun temel amacı, faydalı yapay zeka arama botlarına kontrollü geçiş hakkı tanırken, altyapıyı tüketen agresif kazıyıcıları ve sahte botları sunucuya yük bindirmeden sınırlandırmaktır.

Uygulanacak stratejiler, şirketin dijital pazarlama hedefleri ve fikri mülkiyet politikaları ile tam bir uyum içerisinde tasarlanmalıdır.

Web Application Firewall (WAF) Düzeyinde Hız Sınırlandırma (Rate Limiting)

İsteklerin web sunucusuna (Nginx/Apache) ve uygulama katmanına ulaşmadan önce ağın uç noktasında (Edge) filtrelenmesi, CPU ve bellek tasarrufunun en etkili yoludur. Cloudflare, AWS WAF, Akamai veya Fastly gibi WAF çözümleri, log analizinden elde edilen veriler doğrultusunda yapılandırılabilir.

WAF üzerinde uygulanabilecek temel optimizasyon kural setleri:

  1. Hız Sınırlandırma (Rate Limiting): Belirli bir User-Agent veya IP bloğu için dakikada izin verilen maksimum istek sayısı belirlenir. Örneğin, GPTBot'un saniyede 50 istek atması yerine, dakikada en fazla 30 istek atmasına izin verilecek bir kural tanımlanabilir.

  2. Kolektif Bot Yönetimi (Bot Management): WAF'ın yerleşik makine öğrenimi modelleri kullanılarak, ters DNS doğrulaması başarısız olan sahte botlar doğrudan Edge katmanında HTTP 403 Forbidden ile düşürülür.

  3. Statik Yanıt Önbellekleme: AI botlarının sıkça ziyaret ettiği sayfalar WAF seviyesinde uzun süreli önbelleğe alınarak, isteklerin doğrudan CDN üzerinden yanıtlanması sağlanır; böylece ana sunucuya (origin) hiçbir yük binmez.

Nginx seviyesinde basit bir rate limiting yapılandırması:

# Nginx http bloğu içinde botlar için bellek alanı tanımlama
limit_req_zone $binary_remote_addr zone=ai_bots:10m rate=5r/m;

server {
    location / {
        # Eğer gelen istek GPTBot veya ClaudeBot ise hız sınırını uygula
        if ($http_user_agent ~* (GPTBot|ClaudeBot)) {
            limit_req zone=ai_bots burst=10 nodelay;
        }
        try_files $uri $uri/ /index.php?$args;
    }
}

Robots.txt ile İzin ve Tarama Bütçesi Yönetimi

Meşru yapay zeka botları, web sitenizi taramadan önce kök dizinde yer alan robots.txt dosyasını kontrol eder ve buradaki kurallara uyar. Sitenizin belirli bölümlerini (örneğin yönetim paneli, arama sonuç sayfaları, yüksek CPU tüketen dinamik filtreler) veya tümünü bu botlara kapatabilirsiniz.

Örnek kurumsal robots.txt yapılandırması:

# Temel Arama Motorlarına İzin Ver
User-agent: Googlebot
User-agent: Bingbot
Allow: /

# OpenAI LLM Eğitim Botunu Engelle
User-agent: GPTBot
Disallow: /

# OpenAI Arama Botuna İzin Ver (AI Arama Görünürlüğü İçin)
User-agent: OAI-SearchBot
Allow: /

# Anthropic Claude Botunu Engelle
User-agent: ClaudeBot
Disallow: /

# Common Crawl Açık Veri Kazıyıcısını Engelle
User-agent: CCBot
Disallow: /

# Tüm Botlar İçin Ağır Dinamik Yolları Kapat
User-agent: *
Disallow: /search/
Disallow: /api/internal/

HTTP 429 ve HTTP 403 ile Kaynak Koruması

Sunucunuz anlık olarak aşırı yüklendiğinde, bot isteklerine standart 200 OK yanıtı dönüp ağır sayfayı render etmek yerine, hızlı durum kodlarıyla yanıt vermek altyapıyı kurtarır:

  • HTTP 429 Too Many Requests: Bota, sunucunun şu anda çok fazla istek aldığını ve yavaşlaması gerektiğini bildirir. Retry-After: 3600 gibi bir HTTP başlığı eklenerek botun 1 saat sonra tekrar denemesi sağlanabilir.

  • HTTP 403 Forbidden: Robots.txt kurallarını ihlal eden, şüpheli davranış sergileyen veya sahte olduğu tespit edilen IP adreslerine doğrudan erişim reddi dönülür. Nginx seviyesinde return 403; direktifi, PHP veya Node.js motorunu çalıştırmadan bağlantıyı kapattığı için milisaniyeler içinde minimum kaynakla işlenir.

Sıkça Sorulan Sorular

Sunucu loglarında AI bot trafiği ne kadar geriye dönük incelenmelidir?

Anomali tespiti ve trend analizi için en az 30 ile 90 günlük erişim loglarının incelenmesi tavsiye edilir. Bu süre, botların tarama sıklığındaki dönemsel artışları, model güncelleme dönemlerindeki agresif kazımaları ve bant genişliğine olan kümülatif etkileri doğru ölçümlemek için yeterli bir veri havuzu sağlar.

AI botlarını engellemek SEO performansını veya organik trafiği olumsuz etkiler mi?

Salt yapay zeka modellerini eğiten GPTBot, ClaudeBot ve CCBot gibi ajanların engellenmesi standart Google ve Bing arama sıralamalarını olumsuz etkilemez. Ancak OAI-SearchBot veya PerplexityBot gibi yapay zeka tabanlı arama motoru indeksleyicilerinin engellenmesi, AI destekli arama yanıtlarında ve özet kartlarında sitenizin alıntılanmasını durdurabilir.

Bant genişliği tüketiminin bir bot saldırısı mı yoksa normal bir tarama mı olduğu nasıl anlaşılır?

Normal bir AI taraması belirli bir User-Agent taşır, robots.txt kurallarına uyar, istekler zamana yayılır ve meşru IP bloklarından gelir. Dağıtık bir kazıma saldırısında (DDoS/Scraping) ise farklı rastgele IP'lerden, saniyede yüzlerce eşzamanlı istek, geçersiz User-Agent dizeleriyle ve önbelleği atlatacak sahte URL parametreleriyle sunucuya yönelir.

User-Agent başlığı sahte olan bir bot sunucu düzeyinde nasıl engellenir?

Nginx veya Apache yapılandırmasında FCrDNS (Forward-Confirmed Reverse DNS) modülleri kullanılarak veya WAF katmanında doğrulanmamış bot imzaları filtrelenerek engellenir. IP adresi resmi şirket ASN veya CIDR bloklarıyla eşleşmeyen ancak meşru bot User-Agent'ı kullanan istekler doğrudan 403 Forbidden ile düşürülür.

robots.txt dosyasına yazılan Disallow kurallarına tüm AI botları uyar mı?

OpenAI, Anthropic, Google ve Apple gibi büyük kurumsal teknoloji sağlayıcıları robots.txt kurallarına kesin olarak uyar. Ancak yasa dışı veri toplayan üçüncü taraf kazıyıcılar, merdiven altı scraper yazılımları ve kötü niyetli aktörler robots.txt yönergelerini görmezden gelir; bu aktörler için WAF ve IP düzeyinde aktif engelleme gerekir.

Nginx loglarında AI botlarının harcadığı veri trafiği nasıl hesaplanır?

Nginx access log dosyasındaki 10. sütun ($body bytes sent) istemciye aktarılan bayt miktarını tutar. grep "GPTBot" /var/log/nginx/access.log | awk '{sum+=$10} END {print sum/1024/1024 " MB"}' komutu çalıştırılarak ilgili botun tükettiği toplam veri hacmi megabayt cinsinden kolayca hesaplanabilir.

ChatGPT-User ile GPTBot arasındaki temel fark nedir?

GPTBot, OpenAI'ın gelecekteki modellerini eğitmek amacıyla internet genelinde otonom tarama yapan bir veri toplama botudur. ChatGPT-User ise bir kullanıcının ChatGPT sohbet ekranına belirli bir link yapıştırıp soru sorması sonucu tetiklenen, anlık ve tekil bir sayfa getirme (fetching) ajanıdır.

AI bot trafiğini analiz etmek için sunucuya ek bir yazılım kurmak şart mıdır?

Ek bir yazılım kurmak zorunlu değildir; Linux işletim sisteminin yerleşik komut satırı araçları (grep, awk, sed, sort) mevcut log dosyalarını analiz etmek için tamamen yeterlidir. Ancak trafiği anlık ve grafik arayüzlerle takip etmek isteyen sistem yöneticileri GoAccess, Grafana Loki veya ELK Stack gibi açık kaynaklı araçları tercih edebilir.

Son Adım

Dijital projenizi bugün planlayalım

Web, yazılım, e-ticaret, mobil uygulama, entegrasyon, SEO veya GEO ihtiyacınızı net bir kapsama dönüştürelim.

Sunucu Loglarından AI Bot Trafiği Nasıl Analiz Edilir? | Webizm