Giriş

Günümüz dijital dünyasında sunucu güvenliği, işletmelerin ve bireylerin dikkat etmesi gereken en önemli konulardan biridir. Sunucunuza istenmeyen erişimleri önlemek, hem performansı artırır hem de maliyetleri düşürür. Bu yazıda, özellikle Nginx ve Apache gibi popüler web sunucuları üzerinden istenmeyen botları ve ülkeleri engellemenin yollarını inceleyeceğiz.

Neden Botları ve Ülkeleri Engellemelisiniz?

Botlar, web sitenizi tararken büyük miktarda bant genişliği harcayabilir ve sunucu yükünü artırabilir. Ayrıca, kötü niyetli aktiviteler için de kullanılırlar. Ülkelere göre erişimi sınırlamak ise bazı durumlarda hukuki ve ticari nedenlerle önem arz edebilir.

Botları Engellemenin Faydaları

  • Sunucu performansını iyileştirmek: Gereksiz veri akışını azaltarak sistem kaynaklarınızı optimize edin.
  • Güvenliği artırmak: Kötü niyetli botların sunucunuza zarar vermesini önleyin.

Nginx Üzerinde İstenmeyen Bot ve Ülke Engelleme

Nginx, performansı ve güvenliği ile bilinen bir web sunucusudur. Aşağıda, Nginx üzerinde botları ve ülkeleri nasıl engelleyebileceğinizi bulabilirsiniz.

Botları Engelleme

Öncelikle, istenmeyen botların User-Agent bilgilerini belirleyin. Nginx konfigürasyon dosyasına aşağıdaki kodu ekleyerek bunları engelleyebilirsiniz:

if ($http_user_agent ~* (BadBot1|BadBot2)) {
    return 403;
}

Ülke Engelleme

Ülke engellemesi için GeoIP modülünü kullanabilirsiniz. GeoIP veritabanını kurduktan sonra, konfigürasyon dosyanıza aşağıdaki satırları ekleyin:

geoip_country /path/to/GeoIP.dat;
map $geoip_country_code $allowed_country {
    default no;
    US yes;
    CA yes;
}
if ($allowed_country = no) {
    return 403;
}

Apache Üzerinde İstenmeyen Bot ve Ülke Engelleme

Apache, geniş kullanıcı tabanıyla tanınmış bir web sunucusudur. Botları ve ülkeleri Apache üzerinde engellemek için modül esnekliğinden yararlanabiliriz.

Botları Engelleme

.htaccess dosyasına aşağıdaki satırları ekleyerek belirli User-Agent'ları engelleyebilirsiniz:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^.*(BadBot1|BadBot2).*$ [NC]
RewriteRule .* - [F]
</IfModule>

Ülke Engelleme

Apache’de ülke engellemek için mod_geoip kullanabilirsiniz. Kurulumdan sonra, istediğiniz ülkeleri engellemek için aşağıdaki kuralları uygulayabilirsiniz:

SetEnvIf GEOIP_COUNTRY_CODE US AllowCountry
SetEnvIf GEOIP_COUNTRY_CODE CA AllowCountry
Allow from env=AllowCountry
Deny from all

Sonuç

Sunucu güvenliği, her ölçekteki işletme için hayati önem taşır. Nginx ve Apache üzerinden istenmeyen botları ve ülkeleri engelleyerek, hem güvenliğinizi artırabilir hem de sunucu kaynaklarınızı daha etkili yönetebilirsiniz. Yukarıda belirtilen adımları takip ederek, bu süreci daha yönetilebilir hale getirebilirsiniz.

Son Söz

Sunucu yönetimi, doğru stratejilerle daha güvenli ve verimli hale gelebilir. Botlar ve ülkelerle ilgili belirlediğiniz politikalar, işletmenizin ihtiyaçlarına göre şekillendirilmeli ve sürekli güncellenmelidir. Unutmayın, iyi bir güvenlik stratejisi daima proaktif olmalıdır.

BulutTekno

Teknoloji ve yazılım dünyasındaki yenilikleri, en güncel rehberleri ve sektörel analizleri sizlerle paylaşıyoruz. BulutTekno editoryal ekibi olarak kaliteli içerik üretmeye devam ediyoruz.

Yazar 2026'den beri

Sıkça Sorulan Sorular

Nginx üzerinde bot engellemesi nasıl yapılır?
Nginx üzerinde istenmeyen botları engellemek için User-Agent bilgilerini kullanarak konfigürasyon dosyanıza uygun kurallar ekleyebilirsiniz.
Apache üzerinde ülke engellemesi nasıl yapılır?
Apache'de ülke engelleyebilmek için mod_geoip modülü kullanılarak ilgili ülke kodlarına göre izin veya engelleme kuralları tanımlanabilir.
Bot engellemenin sunucu performansına etkisi nedir?
Bot engelleme, sunucuya yönelik gereksiz trafiği azalttığı için performansı artırabilir ve kaynak tüketimini optimize edebilir.