nginx ve Apache ile web sunucusu sertleştirme
Uygulamanın önündeki web sunucusunun sızdırdığı bilgileri kapatır, nginx ve Apache yapılandırmasındaki tipik tuzakları düzeltir ve sertleştirmeyi kod olarak yönetip testlerle doğrularsın.
Seviye 201 · 17 ders · 15 pratik lab
Dersler
Temeller
- Web sunucusunun rolleri: statik içerik, ters vekil ve TLS sonlandırma
- Sürüm bilgisini ve varsayılan sayfaları gizlemek
- Çalışan süreçleri yetkisiz kullanıcıyla çalıştırmak
- Klasör listelemeyi ve gizli dosyalara erişimi kapatmak
- Kısa görev: lab sunucusunun sızdırdığı bilgileri bul ve kapat
nginx
- nginx yapılandırma yapısı: http, server ve location
- location ve alias tuzakları: yol geçişine açılan kapı
- İstek boyutu, zaman aşımı ve hız sınırı (limit_req)
- Ters vekilde başlıklar: X-Forwarded-For’a ne kadar güvenmeli
- Kısa görev: nginx yapılandırmasındaki üç hatayı düzelt ve gixy ile doğrula
Apache
- Apache modülleri: gerekmeyeni kapatmak
- .htaccess ve AllowOverride riskleri
- Apache’de istek sınırları ve mod_reqtimeout
- Kısa görev: bir Apache sanal ana makinesini CIS önerilerine göre sertleştir
Doğrulamak
- Yapılandırmayı kod olarak yönetmek ve değişiklik incelemesi
- Sertleştirmeyi tarama ve testlerle doğrulamak
- Bitirme görevi: bir uygulamanın önündeki nginx ve Apache sunucularını sertleştir ve rapor yaz
Pratik lablar
- Server başlığı ve varsayılan sayfa: nginx'in sürüm sızdıran Server başlığını ve varsayılan karşılama sayfasını kapat ve curl ile doğrula.
- Açık klasör listeleme: Klasör listelemesi açık kalan bir yolu bul, listelemeyi kapat ve dizin içeriğinin artık görünmediğini göster.
- Süreç root olarak çalışıyor: Uygulama sunucusunun root olarak çalıştığını göster, ayrı bir hizmet kullanıcısına geçir ve dosya izinlerini buna göre düzenle.
- Gizli dosyalara erişim: .htpasswd ve yedekler: Nokta ile başlayan dosyaların ve yedek uzantılarının sunulduğunu bul ve hepsini engelleyen tek bir kural yazıp test et.
- alias tuzağı: /static../: Sonunda eğik çizgi olmayan location ve alias eşleşmesinin üst klasöre erişim verdiğini kanıtla ve yapılandırmayı düzelt.
- limit_req ile giriş sayfasına sınır: Giriş yoluna limit_req bölgesi tanımla, patlama değerini ayarla ve meşru kullanımın etkilenmediğini test et.
- X-Forwarded-For'a körü körüne güven: Uygulamanın istemci IP'sini sahte X-Forwarded-For başlığından aldığını kanıtla ve real_ip ayarlarını yalnızca güvenilir vekile bağla.
- İstek boyutu ve zaman aşımları: Sınırsız gövde boyutu ve uzun zaman aşımlarıyla yavaş istek saldırısına açık yapılandırmayı düzelt ve yeni sınırları test et.
- gixy bulgularını kapat: Lab nginx yapılandırmasını gixy ile tara, çıkan üç sorunu düzelt ve her düzeltmeyi bir istekle kanıtla.
- Gereksiz Apache modüllerini kapat: Yüklü Apache modüllerini listele, uygulamanın kullanmadıklarını kapat ve sitenin çalıştığını doğrula.
- AllowOverride All ile açılan kapı: Yükleme klasöründe .htaccess ile yapılandırma değiştirilebildiğini göster ve AllowOverride'ı kapatıp kuralları ana yapılandırmaya taşı.
- mod_reqtimeout ve CIS önerileri: Bir sanal ana makineyi istek zaman aşımları ve CIS önerilerine göre sertleştir ve her değişikliği kısa bir testle kanıtla.
- Yapılandırma değişikliğini incele: Bir sunucu yapılandırması çekme isteğindeki güvenlik açısından riskli satırı bul ve gerekçeli inceleme yorumu yaz.
- Sertleştirme testleri yaz: Başlıkları, listelemeyi ve gizli dosyaları kontrol eden otomatik testler yaz ve CI'da çalışır hâle getir.
- İki sunucu, bir rapor: Quillon Eğitim: Kurgusal Quillon Eğitim'in nginx ve Apache sunucularını sertleştir, testlerle doğrula ve önce-sonra tablosuyla kısa rapor yaz.
Kurs hakkında
Uygulamanın önündeki web sunucusunun sızdırdığı bilgileri kapatır, nginx ve Apache yapılandırmasındaki tipik tuzakları düzeltir ve sertleştirmeyi kod olarak yönetip testlerle doğrularsın.
Ne öğreneceksin
- Temeller
- nginx
- Apache
- Doğrulamak
Ön koşullar
Aynı yolun 101 düzeyindeki kurslarını bitirmiş olmak ya da o konuları biliyor olmak yeterlidir.
Lab ortamı
Dersler, tarayıcında açılan sana özel bir Kali Linux terminalinde ve ona bağlı özel bir lab ağında geçer. Kurulum gerekmez.
Sık sorulan sorular
- Bu kurs benim düzeyime uygun mu?
- Kurs 201 düzeyindedir; daha düşük düzeydeki kursların konularını bildiğin varsayılır.
- Kurulum gerekir mi?
- Hayır. Her ders tarayıcında açılan sana özel bir lab ortamında geçer.
- Dersler nasıl işleniyor?
- Her ders 8 ile 10 adımdan ve bir kısa sınavdan oluşur. İlk adımlarda yazman gereken komut gösterilir, sonraki adımlarda yardım azalır; iki denemede takılırsan çözüm açılır.
- Ücretsiz deneyebilir miyim?
- Evet. Her kursun ilk üç dersi ücretsizdir.