Apache ve ModSecurity Nedir?
ModSecurity, web uygulamanızda olup biten her şeyi denetler ve zararlı aktiviteleri tespit ederek önler. Şimdi, adım adım nasıl kuracağımıza bakalım.
Apache ModSecurity Kurulumu
1. Apache ve ModSecurity'yi Yükleyin:
İlk adım olarak, Apache web sunucusunun ve ModSecurity modülünün yüklü olduğundan emin olmanız gerekiyor. Çoğu Linux dağıtımında bu paketleri apt veya yum komutlarıyla yükleyebilirsiniz.
Debian/Ubuntu tabanlı sistemlerde:
sudo apt update
sudo apt install apache2
sudo apt install libapache2-mod-security2
CentOS/RHEL tabanlı sistemlerde:
sudo yum install epel-release
sudo yum install mod_security
2. ModSecurity Modülünü Etkinleştirin:
Yükleme tamamlandığında, ModSecurity modülünü etkinleştirmeniz gerekir. Apache'yi yeniden başlatmadan önce bu adımı kontrol edin.
sudo a2enmod security2
sudo systemctl restart apache2
Bu komutlarla Apache'yi yeniden başlatarak ModSecurity'yi etkinleştirmiş olduk.
ModSecurity Yapılandırması
1. ModSecurity Konfigürasyon Dosyasını Düzenleyin:
ModSecurity'nin yapılandırma dosyası, `/etc/modsecurity/modsecurity.conf` yolunda bulunur. Bu dosyayı bir metin düzenleyicisiyle açarak yapılandırmaları değiştirebilirsiniz. ModSecurity'yi aktif hale getirmek için şu satırı düzenlemeniz gerekir:
SecRuleEngine On
Bu satır, ModSecurity'nin etkinleştirilmesini sağlar. Eğer güvenlik duvarını devre dışı bırakmak isterseniz, "On" değerini "Off" ile değiştirebilirsiniz. Ancak, bu önerilmez!
2. Güvenlik Kuralları Ekleyin:
ModSecurity, çalıştığı uygulamaları korumak için çeşitli güvenlik kuralları kullanır. Bu kurallar, en yaygın saldırı türlerini tespit eder ve engeller. Genellikle, ModSecurity'nin en yeni güvenlik kuralları setini `OWASP CRS (Core Rule Set)` ile kullanmak çok etkilidir.
OWASP CRS'yi yüklemek için şu adımları izleyebilirsiniz:
sudo apt install modsecurity-crs
Bu komut, size en güncel güvenlik kurallarını sağlar. Şimdi, bu kuralları etkinleştirmeniz gerekir. `modsecurity_crs_10_setup.conf` dosyasını açarak aşağıdaki satırı kontrol edin:
IncludeOptional /usr/share/modsecurity-crs/base_rules/*.conf
Bu satır, OWASP CRS kurallarını Apache’ye dahil eder.
Test Etme ve İzleme
sudo tail -f /var/log/apache2/error.log
Bu komut, Apache'nin hata günlüğünü canlı olarak izlemenize olanak tanır.
ModSecurity'yi Özelleştirme
Birçok kullanıcı, kendi güvenlik seviyelerini belirlemek için `SecRule` komutlarını kullanır. Örneğin, SQL enjeksiyonlarına karşı daha sıkı bir kural seti eklemek istiyorsanız:
SecRule ARGS|ARGS_NAMES|REQUEST_HEADERS|XML:/* "(?i)union.*select.*\(" "id:12345,phase:2,deny,status:403,msg:'SQL Injection Attempt'"
Sonuç: Web Güvenliğinizi Sağlama
Güvenlik her zaman ön planda olmalı ve ModSecurity, bu konuda sizin en büyük yardımcınız olabilir. Umarım bu yazı, Apache üzerinde ModSecurity kurulumunu ve yapılandırmasını kolayca yapmanıza yardımcı olmuştur. Şimdi, güvenli bir web deneyiminin tadını çıkarabilirsiniz!