Htaccess ile IP engelleme adımları ve daha fazlası için blog yazımıza göz atın!

Web sitenize gelen spam yorumlar ve istenmeyen trafiği engellemek, dijital dünyada en sık karşılaşılan sorunlardan biri. Genellikle ilk çözüm olarak Google disallow aracını kullanarak URL bazlı engellemeler yaparız. Fakat, belirli ülkelerden sürekli saldırılarla karşı karşıya kaldığınızda daha etkili ve kalıcı bir çözüm olan IP engelleme devreye girer. Bu aşamada, web sitenizin güvenliğini sağlamak için .htaccess dosyasına ekleyeceğiniz birkaç basit kod, adeta sitenizi hayata döndürecek kurtarıcı rolünü üstlenir.

Htaccess nedir?

IP engellemenin kolay yolunu öğrenin: Htaccess ile güvenliği artırın!

Htaccess, web sitenizin belirli bir klasörü için özel kurallar belirlemenizi sağlayan basit ama güçlü bir metin dosyasıdır. Bu dosya ile sunucunuza o klasördeki dosyalarla nasıl davranması gerektiğini söylersiniz. Aslında, sitenizin arka planında yönetim kurallarını koyduğunuz bir komut defteri gibidir. İşte birkaç önemli işlevi:

  • Yönlendirme: Bir sayfayı başka bir adrese yönlendirebilir, eski URL’lerinizi yeni adreslere taşıyabilirsiniz.
  • Erişim Kontrolü: Belirli IP adreslerini engelleyebilir ya da şifre koyarak belirli alanları koruyabilirsiniz.
  • Hata Sayfaları: Özel hata sayfaları oluşturabilirsiniz; örneğin, 404 hatası aldığınızda kullanıcınıza kendi stilinizde bir mesaj gösterebilirsiniz.
  • SEO Desteği: URL yapılarını arama motorlarının isteğine göre özelleştirerek SEO performansınızı arttırabilirsiniz.

Htaccess, web sitenizde kontrolü elinizde tutmanıza olanak sağlar. Ancak, doğru yapılandırılmadığında sitenizin erişimi tamamen kapanabilir. Bu nedenle her değişiklikten önce mutlaka yedeğinizi almayı unutmamalısınız. Düşünsenize, sitenizin fişini yanlışlıkla çekmek istemezsiniz, değil mi? 😊

Htaccess ile IP Nasıl Engellenir?

Htaccess ile IP engelleme yapın, istenmeyen trafiği durdurun!

Şimdi, gelelim asıl meseleye: htaccess dosyasını kullanarak IP engelleme. Bu işlem, özellikle sürekli olarak belirli bir IP aralığından gelen kötü niyetli trafiği engellemek için en etkili yollardan biridir. Başlamak için ilk adım, doğru kod dizilimini uygulamaktır. Kod dizilimini uygularken aynı zamanda da CIDR blogğunu tanımlamak ve binary sitemini bilmekte yarar var. Hepsini tek tek okumaya hazırsan devam edelim. 😉

htaccess ile ip engelleme

Yukarıdaki kod dizilimi, belirli bir IP adresini veya adres aralığını nasıl engelleyebileceğinizi gösterir. Örneğin, bir IP aralığındaki tüm adresleri engellemek isterseniz:

Burada “/16” ifadesi, IP aralığının sınırlı bir kısmını belirler ve böylece daha geniş bir engelleme uygulanır. Örneğin 1.187.0.0 ip adresinden 1.187.255.255 aralığındaki tüm ip’lerin engellenmesini istiyorsunuz. Bunun için yazmanız gereken ip komutu yukarıdaki gibidir.

Binary Nasıl Hesaplanır?

Htaccess ile IP engelleme kolaylığı – Güvenliğinizi artırın!

Bir IP adresi 32 bitten oluşur ve bu bitler, noktalarla ayrılan dört gruptan (oktetten) meydana gelir. IP adreslerini binary (ikili) sisteme çevirerek engelleme işlemini daha iyi anlayabiliriz. IP adresindeki sayıları binary sistemine çevirmek için sayıyı ikiye bölerek kalanları takip ederiz. Her sıradaki kalan sayı bir öncekinin önüne yazılarak devam eder. Örneğin 223 ve 208 sayısının binary’e çevrilmesi aşağıdaki gibidir.

Binary Nasıl Hesaplanır?

Buradaki sonuç: 223 = 11011111 (8 bit binary)

Binary Hesaplama

Buradaki sonuç: 208 = 11010000 (8 bit binary)

Bu tür işlemler matematiksel kuralların sonucudur ve manuel olarak yapılabilir, ancak zaman kazandırmak için bilgisayarlar kullanmak daha pratik olabilir.

Peki bu binary sistemi bizim ne gibi işimize yarayacak?

Bir IP adresi aralığını engellerken hangi bitlerin sabit, hangilerinin değişken olduğunu bilmek işimizi kolaylaştırır. Örneğin, 101.2.0.0 ile 101.2.127.255 arasındaki bir IP aralığını engellemek isterseniz, ilk 17 bitin sabit olduğunu görürsünüz. Yani, CIDR notasyonu olarak bu aralığı /17 olarak belirleriz. Bu notasyon, hangi kısmın değişeceğini ve hangi kısmın sabit kalacağını belirtir.

IP Adreslerinin Binary Temsilini Bulma

Başlangıç: 101.2.0.0 olan bir ip adresinden bitiş ip’si olarak 101.2.127.255 olduğunu kabul edersek ve bu aralıktaki ip adreslerini engellemek istersek binary sistemlerini bularak hangi alanların sabit hangi alanların değişken olduğunu tespit etmeliyiz. Aşağıdaki tabloyu inceleyerek devam edelim.

  • 2.0.0 ve 101.2.127.255 adreslerini binary olarak karşılaştıralım:
İp adreslerinin binary temsilini bulma

Yukarıdaki tablo incelendiğinde ilk 17 bit sabit kalırken, 18 bitten itibaren ise değişimin başlandığı görüntülenmektedir. 17 sayısını bulma süreci, IP adreslerinin hangi bitlerinin sabit kaldığını ve hangi bitlerinin değiştiğini analiz etmeye dayanır. Bu, IP aralığının hangi bölgesinin sabit olduğuna ve hangi kısmının değişken olduğuna bakarak yapılır. Adım adım farklı bir örnek ile nasıl hesaplandığını açıklayayım:

Adım 1: IP Adreslerini Binary Formatına Çevirme

101.208.0.0 ve 101.223.225.225 aralığında olan IP adreslerinin binary (ikilik) formatlarına aşağıdaki şekilde inceleyebiliriz.

Adım 1: IP Adreslerini Binary Formatına Çevirme

Adım 2: Sabit ve Değişken Bitleri Belirleme

Bu iki IP adresini bit bit karşılaştırarak hangi bitlerin sabit kaldığını ve hangi bitlerin değiştiğini belirleyelim:

Adım 2: Sabit ve Değişken Bitleri Belirleme

Adım 3: CIDR Notasyonunun Belirlenmesi

  • İlk 12 bitin sabit kaldığını görüyoruz (ilk oktet ve ikinci oktetin ilk 4 biti).
  • Bu durumda, ilk 12 bit sabit kaldığı için CIDR notasyonu olarak /12 kullanılır.
  • Geriye kalan 20 bit değişken olduğundan dolayı bu aralığı belirtirken 208.0.0/12 şeklinde yazılmalıdır.

Bu konuyu da daha basit şekilde toparlamak gerekirse:

1.Adımda 101.208.0.0 ve 101.223.255.255 IP adreslerinin ikinci oktetlerini (208 ve 223) ikilik sisteme çevirip karşılaştıralım.

2.Adımda iki sayıyı (208 ve 223) karşılaştırarak hangi bitlerin sabit, hangilerinin değiştiğine bakalım. 208 (11010000) ve 223 (11011111)

3.Adımda sabitleri ve değişkenleri tespit edelim. İlk 4 bit (1101) sabit kalıyor. Sonraki 4 bit değişiyor (0000 ile 1111 arasında)

Bu yüzden, 208 ve 223 arasındaki farkı açıklayan kısım bu 4 bit değişimidir. Sabit kalan kısım ise ilk 12 bittir. Bu nedenle de /12 olarak yani, 101.208.0.0/12 notasyonu doğru şekilde yazılmıştır.

.htaccess Dosyasında Belirli IP Aralıklarını Nasıl Engellersin?

Web sitenizi belirli IP adreslerinden gelen isteklerden korumanız gerektiğinde, .htaccess dosyası etkili bir çözüm sunar. IP adreslerine yönelik erişim kontrolü sağlayarak, istenmeyen ziyaretçilerin sitenize ulaşmasını engelleyebilirsiniz. Aşağıdaki örnek, basit bir IP engelleme kodu üzerinden bu işlemin nasıl yapıldığını açıklayalım.

order allow,deny
deny from 41.55
allow from all

.htaccess dosyasında belirli IP aralıklarını nasıl engellersin?

Yukarıdaki .htaccess kodunun anlamı:

  1. order allow,deny: Bu satır, hangi kuralların öncelikli olarak uygulanacağını belirler. İki seçenek vardır: allow,deny ve deny,allow. Yazılan allow,deny sırası, önce genel izin verir ve daha sonra belirli IP adreslerini yasaklar.
    • allow,deny: Bu sırada çalışırsa, önce erişime izin verilir (allow), ardından belirtilen kurallara göre bazı IP’lere veya aralıklara erişim engellenir (deny). Bu durumda, kural sırasına göre IP’ye izin verildikten sonra engelleme yapılır.
    • deny,allow: Tersine çalışır, yani önce engelleme kuralları çalışır ve daha sonra izin kuralları uygulanır.
  2. deny from 41.55: Bu satır, 41.55 ile başlayan IP adreslerini (örneğin, 41.55.x.x aralığındaki tüm adresler) yasaklar. Yani, bu IP adreslerinden gelen istekler reddedilecektir. Ancak bu yazım biçimi, sadece tam bir IP adresi (örneğin: 41.55.0.0/16 gibi) ya da tam bir dizi blok belirtmiyorsa, çok geniş bir yelpazeyi kapsayabilir.
  3. allow from all: Tüm diğer IP adreslerine erişim izni verilir. Yani, 41.55 dışındaki tüm IP adresleri siteye erişebilir.

 

Tüm bu işlemlerin sonucunda:

Htaccess dosyasıyla IP engelleme, web sitenizi istenmeyen trafik ve saldırılara karşı korumanın en etkili yollarından biridir. Özellikle spam saldırıları, botlar ve kötü niyetli kullanıcılar gibi güvenlik risklerini minimuma indirirken, sunucunuzun performansını da artırır. Belirli ülkelerden ya da IP aralıklarından gelen trafiği kısıtlayarak siteye sadece güvenilir kullanıcıların erişimini sağlarsınız. Ayrıca, site güvenliğini artırarak, daha stabil bir kullanıcı deneyimi sunabilir ve potansiyel SEO kayıplarının önüne geçebilirsiniz.