özellikleri ile site yöneticilerinin gözdesi CloudFlare, ücretsiz hesaplara da firewall (güvenlik duvarı) kuralları ekleme imkanı sunuyor. Cloudflare Firewall ile bu kural tanımlayabilme özelliği sayesinde; tüm sitemiz, hedeflediğimiz sayfa veya içerik için bir çok güvenlik kuralı oluşturabiliyoruz. Böylece sitemize yapılan erişimleri filtreleme ve zararlı erişim denemelerini daha oluşmadan engelleyebiliyoruz. Bu yazıda kural tanımlama, kural sentaksları ve bazı örnek temel kuralların uygulamasını anlatmaya çalışacağım.
Öncelikle belirtmeliyim ki; buradaki amacım sizlere sadece hazır kuralları vermek değil. Kural oluşturma ve kuralların çalışma mantığını doğru şekilde anlamanızı sağlayabilmek. böylece hem kendi kurallarınızı ihtiyacınıza göre yazabilir, hem de hazır bulduğunuz kuralların güvenilirliğini bir noktaya kadar kontrol edebilirsiniz. Bu sebeple yazım biraz uzun, bol örnekli ve detaylı olacak ancak oldukça işinize yarayacağını umuyorum.
Yazı sonunda görüşlerinizi benimle paylaşmayı lütfen ihmal etmeyin. Bu sayede sadece yazı içeriğimi ve anlatımımı değil, her konuda ben de kendimi geliştirme imkanı bulabilirim.
Sitenizi henüz Cloudflare üzerinden çalıştırmaya başlamadıysanız; bu yazımında dahil olduğu toplam 12 yazıdan oluşan Sıfırdan WordPress, Güvenlik ve Hız Yazı Dizisi başlıklı yazı dizimi inceleyebilirsiz.
Cloudflare Firewall
Cloudflare Firewall (güvenlik duvarı) ayarlarına erişebilmek için öncelikle Cloudflare hesabımıza giriş yapıyor ve ardından Firewall sekmesine tıklıyoruz.
Add Filter (Filtre ekleme)
Açılan Firewall sayfasının Overview alt sekmesinde bulunan Add Filter özelliği ile başlayalım. Bu özellik firewall tarafından uygulanan kurallar ile oluşan sonuçları listelememizi sağlar.
Örneğin Add Filter ‘a tıklıyor, ilk menüden Country‘i, ikinciden equals‘ı, sonuncudan da Afganistan ‘ı seçiyor ve Apply diyoruz. Böylece Afganistan kaynaklı site erişim denemelerine uygulanan firewall kurallarının sonuçlarını listeliyoruz. Bunun dışında bazı örnek filtrelemeler ve anlamları şu şekildedir;
- Path – contains – wp-login.php (Erişim sağlanmak istenen adres yolu – içeriyor – wp-login.php)
- Query String – contains – wp-content (Erişim sağlanmak istenen adres içeriği – içeriyor – wp-content)
- Action – equals – block (Uygulanan kural – eşit – engelleme)
Aşağıdaki ilk resim wp-login.php panel konumuna erişim denemelerini, ikinci resim ise erişim denemelerinden birisinin detaylarını göstermektedir.


Last 24 Hours yazan menüden ise, belirlediğiniz filtre ile listelenecek olayları, ayrıca seçeceğiniz zaman dilimi içerisinde oluşanlar olarak kendi içerisinde tekrar filtreleyebilirsiniz.
Managed Rules (Yönetilen Kurallar)
Managed Rules sekmesindeki özellikler ücretli hesaplara özel (pro) olduğu için değinmeden geçiyorum. Cloudflare tüm kullanıcılarına 3 ve 4 katmanlı saldırılara karşı ücretsiz DDoS koruması sağlıyor. Bu filtreleme bloglar ve küçük işletmeler için aslında yeterli. Daha yüksek katmanlardaki saldıralara karşı da koruma istendiğinde ücretli sürüme geçilmesi gerekiyor.
Cloudflare Firewall uygulamasının en önemli özelliği olan Firewall Rules konusuna artık geçebiliriz.
Firewall Rules (Güvenlik Duvarı Kuralları)
Firewall Rules kısmı güvenlik duvarımız ile ilgili kurallar belirleyebileceğimiz ve yazımızın ana konusu olan kısımdır. Cloudflare toplamda 5 adet kural başlığı tanımlanmasına izin veriyor. Bu başlıklar düzenli ve planlı bir şekilde kullanılırsa bir çok farklı kural topluluğunu içerebilirler ve fazlasıyla işimizi görürler. Burada dikkat edilmesi gereken nokta aynı kural sonuç eylemine sahip kuralları bir arada toplamaktır.
Kural sonuç eylemi; yazdığınız kural ile belirlediğiniz şartların sağlanması haline ne yapılacağı bilgisidir. Örneğin; belirli bir ülkeden gelen erişimlerin engellenmesi, sadece belirli bir ip adresine bazı sayfalara ulaşım için izin verilmesi, bazı sayfalara erişimde Captcha doğrulaması istenmesi gibi durumlarda kullandılan engelle, izin ver, captcha doğrula gibi işlemler sonuç eylemidir.
İsterseniz artık kural oluşturma konusuna geçelim.
Öncelikle kural oluşturmak için, cloudflare hesabımızdaki Firewall sayfasına giriyor ve Create a Firewall Rule düğmesine tıklıyoruz. Açılan ekranda Rule Name kısmında oluşturacağımız kurala bir isim veriyoruz. Burada tavsiyem; verilecek isim ileride bu kuralın ne görev gördüğünün kolayca anlaşılmasını sağlamalıdır. Sitenizin belirli bir sayfası veya belirli bir fonksiyonu ile ilgili bir filtre oluşturacaksanız, ismini de buna göre belirlemelisiniz. Bu durum bir sorun yaşanırsa hata ayıklama işlemlerinde kolaylık sağlayacaktır.
Örneğin; sitenizin giriş (login) ekranına sadece Türkiye’den erişime izin verilecek bir kural oluşturacaksanız, kural ismini SadeceTrGiris şeklinde vermeniz hatırlatıcı bir ipucu olacaktır. Ancak Cloudflare’in 5 kural sınırı sebebiyle kural haklarımızı daha verimli kullanmak için çoklu kurallar tanımlamamız gerekecektir. Bu sebeple tavsiyem; kuralları tür ve sonuç eylemine odaklı bir kategorilemeye bağlı olarak isimlendirmenizdir. Örneğin; Girisİzinler, Engeller gibi.
Şimdi bir kaç örnek ile konuyu pratikte görelim.