Adım 1: Apache ve ModSecurity'yi Kurmak
İlk olarak, Apache web sunucusunun ve ModSecurity modülünün sisteminizde kurulu olması gerektiğini unutmayın. Eğer bunları daha önce kurmadıysanız, öncelikle Apache'yi yüklemeniz gerekebilir. Bunu yapmak için şu komutları kullanabilirsiniz:
sudo apt-get update
sudo apt-get install apache2
Apache'niz kurulduktan sonra, ModSecurity'yi yüklemeye geçebiliriz. ModSecurity, Apache'ye entegre edilen güçlü bir web uygulama güvenlik duvarıdır. Bunu kurmak için aşağıdaki komutları kullanabilirsiniz:
sudo apt-get install libapache2-mod-security2
Bu komut, ModSecurity modülünü Apache ile uyumlu hale getirir ve sunucunuzda güvenliği artırmaya başlar.
Adım 2: ModSecurity’yi Etkinleştirmek
ModSecurity'yi yükledikten sonra, modülün aktif olup olmadığını kontrol etmek önemlidir. Apache’yi başlattığınızda, ModSecurity'nin varsayılan olarak devre dışı olabileceğini unutmayın. Bunu etkinleştirmek için aşağıdaki komutu kullanın:
sudo a2enmod security2
Ardından, Apache'yi yeniden başlatarak yapılan değişikliklerin geçerli olmasını sağlayın:
sudo systemctl restart apache2
Adım 3: ModSecurity Yapılandırması
ModSecurity'nin düzgün çalışabilmesi için, yapılandırma dosyasını düzenlemeniz gerekir. Apache'nin güvenlik dosyası genellikle "/etc/modsecurity/modsecurity.conf" yolunda bulunur. Bu dosya, güvenlik duvarının davranışlarını kontrol eder.
İlk olarak, bu dosyayı açarak "SecRuleEngine" ayarını değiştirmelisiniz. Bu ayarı "On" yaparak ModSecurity'yi tamamen etkinleştirebilirsiniz:
sudo nano /etc/modsecurity/modsecurity.conf
Dosyayı açtığınızda, "SecRuleEngine DetectionOnly" satırını arayın ve şu şekilde değiştirin:
SecRuleEngine On
Bu değişiklik, ModSecurity'nin aktif şekilde çalışmasını sağlar. Eğer daha fazla güvenlik önlemi almak isterseniz, ek yapılandırmalar da yapabilirsiniz.
Adım 4: ModSecurity'nin Kurallarını Yüklemek
ModSecurity, güvenlik tehditlerini tespit etmek ve engellemek için kurallar kullanır. OWASP (Open Web Application Security Project) tarafından hazırlanan ve yaygın olarak kullanılan kurallar, ModSecurity için mükemmel bir başlangıçtır. Bu kurallar genellikle "OWASP ModSecurity Core Rule Set" (CRS) olarak bilinir.
Aşağıdaki komutla CRS'yi indirip kurabilirsiniz:
sudo apt-get install modsecurity-crs
Bu kurallar, güvenlik risklerini azaltır ve birçok yaygın saldırıya karşı koruma sağlar.
Adım 5: ModSecurity'nin Çalıştığını Kontrol Etmek
Her şey kuruldu ve yapılandırıldı, şimdi ModSecurity'nin düzgün çalışıp çalışmadığını kontrol edebiliriz. Bunu test etmek için basit bir saldırı simülasyonu yapabiliriz. Örneğin, Apache'nin hata loglarına göz atarak ModSecurity'nin engellediği istekleri kontrol edebilirsiniz:
sudo tail -f /var/log/apache2/error.log
Eğer ModSecurity düzgün bir şekilde çalışıyorsa, saldırı tespitleri ve engellenmiş isteklerle ilgili loglar burada görünür.
Adım 6: İleri Seviye Yapılandırma ve Özelleştirme
ModSecurity'nin sunduğu güvenlik özellikleri, birçok saldırıya karşı etkili bir koruma sağlar, ancak her web sitesi farklıdır ve özel yapılandırmalar gerektirebilir. ModSecurity, size özelleştirilebilir güvenlik kuralları ekleme imkanı sunar. Kendi kurallarınızı yazabilir veya mevcut kuralları değiştirebilirsiniz.
Örneğin, SQL injection gibi belirli tehditleri engellemek için aşağıdaki gibi özel kurallar ekleyebilirsiniz:
SecRule ARGS|ARGS_NAMES|REQUEST_HEADERS|XML:/* "@rx select.*from" \
"id:1000001,phase:2,deny,status:403,msg:'SQL Injection Detected'"
Bu tür özelleştirmeler, sitenizin güvenliğini daha da güçlendirebilir.
Sonuç
ModSecurity, Apache sunucularındaki en etkili güvenlik araçlarından biridir. Web uygulama güvenliği konusunda endişeleriniz varsa, ModSecurity'yi etkinleştirerek sitenizi dışarıdan gelebilecek tehditlere karşı güçlü bir şekilde koruyabilirsiniz. Yukarıda verdiğimiz adımları takip ederek Apache'de ModSecurity'yi kurabilir ve yapılandırabilirsiniz. Unutmayın, güvenlik bir süreçtir ve her zaman geliştirilebilir. Bu yüzden, ModSecurity'yi yapılandırırken dikkatli olmalı ve güvenlik açıklarını minimize etmek için kuralları sürekli güncellemelisiniz.