Bu döküman sayesinde  Apache Konfigürasyon (unuzu)  daha güvenli hale getire bilirsiniz…Â

1) İlk olarak en son yamalarıgeçtiğinize emin olun
Eğer kapınız açık ise pencerelere kilit koymanın bir mantığıyoktur. Aynışekilde, eğer gerekli yamalarıkurmadıysanız, diğer önerilere yamalarıgeçtikten sonra bakın.

2) Apache sürüm numarasınıve diğer bilgileri gizleyin
Varsayılan olarak, bütün Apache kurulumlarıbütün dünyaya hangi Apache sürümünü, işletim sistemini çalıştırdığınızıve hatta hangi Apache modüllerinin sunucuda kurulu olduğunu söyleyecektir. Saldırganlar bu bilgileri kullanırlar. Ayrıca varsayılan ayarlarıellemediğinizi belirten bir mesaj da verilmiş olur.

httpd.conf dosyasında aşağıdaki iki direktifi vermeniz gerekiyor:
ServerSignature Off
ServerTokens Prod

ServerSignature direktifi 404 sayfaları, klasör listeleri gibi apache tarafından yaratılan sayfaların en altında bilgilerin görüntülenmesi ile ilgilidir.
ServerTokens direktifi ise Apache’nin HTTP cevap başlığında Server kısmına ne yazacağınıbelirler. Bunu Prod’a set ederek HTTP cevabında aşağıdaki şekilde cevap verdirmek mümkün:
Server: Apache
Eğer fazla paranoyaksanız bunu da kaynak kodunda değişiklik yaparak veya mod_security kullanarak (aşağıda anlatılıyor) değiştirebilirsiniz.

3) Apache’yi kendi kullanıcıhesabıve grubunda çalıştırın
Çeşitli apache kurulumlarınobOdy kullanıcıhesabıile çalışır. Eğer hem Apache hem de Eposta sunucunuzun da nobOdy kullanıcıhesabıile çalıştırıldığınıvarsayarsak, Apache’ye yapılan başarılıbir saldırısonrasıeposta sunucusunun da ele geçirilmesi veya bunun tersi mümkün olabilir.
User apache
Group apache

4) Web klasörünün dışındaki dosyalara erişimi engelleyin
Apache’nin web ana klasörü dışındaki dosyalara erişimini istemeyiz. Bütün web sitelerinizin aynıklasör altında olduğunu varsayarsak (örnekte /web olarak geçiyor) aşağıdaki gibi bir ayar yapmalısınız:

Order Deny,Allow
Deny from all
Options None
AllowOverride None

Order Allow,Deny
Allow from all

Not: Options None ve AllowOverride None set ettiğimiz için bu sunucunun tüm override işlemlerini kapatacaktır. Bu sebeple Option veya Override gerektiren her bir klasör için elle ekleme yapmanız gerekir.

5) Klasör içeriği görüntülemeyi kapatın
Bunu bir Directory tag’i içerisinde Options ile yapabilirsiniz. Options’ıNone veya -Indexes olarak set edin:
Options -Indexes

6) Sunucu tarafıdahil etmeleri (server side include) kapatın
Bu da Directory tag’i içerisinde Options ile yapılıyor. Options’ıNone veya -Includes olacak şekilde ayarlayın:
Options -Includes

7) CGI çalıştırmayıkapatın
Eğer CGI kullanmıyorsanız Directory tag’i içerisinde Options’da set ederek kapatın. Options’ıNone veya -ExecCGI olarak set edin:
Options -ExecCGI

8) Apache’nin sembolik link’leri takip etmesine izin vermeyin
Bu da Directory tag’i içerisinde Options ile yapılıyor. Options’ıNone veya -FollowSymLinks olacak şekilde ayarlayın:
Options -FollowSymLinks

9) Bütün Options özelliklerinin kapatılması
Bütün Options’larıkapatmak istiyorsanız,
Options None
olarak set edin. Birden fazla özellik kapatmak isterseniz aynısatır içerisinde boşluk vererek belirtin:
Options -ExecCGI -FollowSymLinks -Indexes

10) .htaccess dosyalarıiçin desteğin kaldırılması
Bu Directory tag’i içerisinde AllowOverride direktifi ile yapılıyor. None olacak şekilde ayarlayın:
AllowOverride None

Eğer Overrides’a ihtiyacınız varsa indirilemediklerinden (download) ve/veya isimlerini .htaccess’den başka bir şeye değiştirin. Örneğin .httpdoverride olarak değiştirelim ve .ht ile başlayan bütün dosyaların indirilmesini engelleyelim:
AccessFileName .httpdoverride

Order allow,deny
Deny from all
Satisfy All

11) mod_security çalıştırın
mod_security, Apache Security kitabının da yazarıolan Ivan Ristic tarafından hazırlanmış yararlıbir Apache modülüdür.
mod_security ile aşağıdakileri yapabilirsiniz:
* Basit filtreleme
* Regular Expression tabanlıfiltreleme
* URL kodlama kontrolü
* Unicode kodlama kontrolü
* Denetim (Auditing)
* Null byte saldırısıönleme
* Upload hafıza sınırları
* Sunucu kimliği maskeleme
* Dahili chroot desteği
* ve dahası

12) Gereksiz modülleri kapatın
Apache tipik olarak çeşitli modüllerle birlikte kurulmaktadır. Apache modül dokümantasyonuna göz atarak hangi modülün ne yaptığınıöğrenin. Aktif durumda olan bazımodüllere ihtiyacınız olmayabilir.
httpd.conf dosyasında LoadModüle içeren satırlara bakın. Bir modülü devre dışıbırakmak için basitçe satırın başına bir # işareti koyun (comment out). Modülleri aratmak için
grep LoadModule httpd.conf
komutunu çalıştırın.
Genelde aktif olan fakat ihtiyaç duyulmayan modüllere örnek olarak,
mod_imap, mod_include, mod_info, mod_userdir, mod_status, mod_cgi, mod_autoindex
verilebilir.

13) Apache’nin konfigürasyon ve çalıştırılabilir dosyalarına sadece root’un okuma izni olsun
Eğer Apache kurulumunuzun /usr/local/apache olduğunu varsayarsak:
chown -R root:root /usr/local/apache
chmod -R o-rwx /usr/local/apache

14) Timeout değerini düşürün
Timeout (zaman aşımı) süresi varsayılan olarak 300 saniyeye ayarlıdır. Servis kullanımıengelleme saldırılarının (DoS) potansiyel etkilerini azaltmak için bunu düşürebilirsiniz:
Timeout 45

15) Büyük boyutlu isteklerin sınırlanması
Apache bir http isteğinin boyutunu sınırlamanıza izin veren çeşitli direktifler sunar. Bu özellik de servis kullanımıengelleme saldırılarının etkilerini azaltmak için kullanılabilir.
Başlangıç olarak LimitRequestbOdy direktifi kullanılabilir. Bu direktif varsayılan olarak unlimited/sınırsız olarak ayarlıdır. Eğer 1mb’ın üzerinde dosya gönderimine izin vermiyorsanız bunu:
LimitRequestbOdy 1048576
olarak set edebilirsiniz. Eğer dosya gönderimlerine (upload) izin vermiyorsanız daha da düşük tutabilirsiniz.
Bakılabilecek diğer direktifler ise LimitRequestFields, LimitRequestFieldSize ve LimitRequestLine. Bu direktifler çoğu sunucu için varsayılan olarak makul değerlere ayarlıdır fakat ihtiyaçlarınıza göre değişiklik yapabilirsiniz. Detaylıbilgi için Apache dokümanına göz atın.

16) XML bOdy boyutunu sınırlamak
Eğer mod_dav kullanıyorsanız bir XML isteğinin gövedesinin maksimum boyutunu sınırlamak isteyebilirsiniz. LimitXMLRequestbOdy sadece Apache 2’de var ve varsayılan değeri 1 milyon byte (yaklaşık 1mb). Çoğu makalede eğer WebDAV kullanıyor ve büyük dosyalar upload ediliyorsa, bu değeri 0’a set ederek boyut sınırlamasının kaldırılmasından bahsedilir. Fakat sadece kaynak (source) kontrol için kullanıyorsanız bu değeri 10mb gibi bir değerle sınırlayabilirsiniz:
LimitXMLRequestbOdy 10485760

17) Aynıanda kullanım (concurrency) sınırlaması
Apache aynıanda yapılan istekleri işleme ile ilgili olarak çeşitli konfigürasyon ayarlarısunar. MaxClients isteklere hizmet için maksimum olarak kaç child process’in yaratılacağınıbelirler. Eğer sunucunuzun çok sayıda concurrent isteği karşılayacak kadar hafızasıyoksa bu değeri yüksek tutmak isteyebilirsiniz.
MaxSpaceServer, MaxRequestsPerChild ve Apache2 deki ThreadsPerChild, ServerLimit, ve MaxSpareThreads direktifleri de işletim sistemi ve donanımınıza uyacak şekilde ayarlanabilir.

18) Erişimleri IP’ye göre kısıtlama
Eğer sadece belirli bir ağdan veya IP adresinden erişilmesi gereken kaynaklarınız varsa bunu apache konfigürasyonunda ayarlayabilirsiniz. Örneğin intranet’inize sadece 176.16 ağından erişim yapılmasınıistiyorsanız:

Order Deny,Allow
Deny from all
Allow from 176.16.0.0/16

veya IP kısıtlaması:
Order Deny,Allow
Deny from all
Allow from 127.0.0.1

19) KeepAlive ayarları
Apache dokümantasyonuna göre HTTP Keep Alive özelliği istemci performansını%50 oranında artırmaktadır. Bu sebeple bu ayarlarıdeğiştirirken dikkatli olun, servis kullanımıengelleme saldırısına karşıaz bir koruma sağlarken performans’dan önemli ölçüde ödün verebilirsiniz.
KeepAlive varsayılan olarak aktiftir ve açık bırakabilirsiniz, fakat varsayılan olarak 100 olan MaxKeepAliveRequests değerini ve 15’e ayarlıolan KeepAliveTimeout değerini değiştirebilirsiniz.Log dosyalarınızıanaliz ederek uygun değerleri bulmaya çalışın.

20) Apache’yi chroot ortamında çalıştırın
chroot programlarıkendi ayrıştırılmış hapishanelerinde (jail) çalıştırmanızısağlar. Bu da bir servisin kırılma durumunda sunucudaki diğer şeyleri etkilemesini engeller.

Yukarıda mod_security modülünün kendisinin chroot desteği olduğunu söylemiştim. Bu modül sayesinde aşağıdaki direktifi eklemek yeterli:
SecChrootDir /chroot/apache

Powered by

Benzer Yazılar

Keywords: Apache Konfigürasyon Güvenirliği , Apache Konfigürasyon Güvenirliği şarkıları, Apache Konfigürasyon Güvenirliği indir, Apache Konfigürasyon Güvenirliği mtv.com.tr, Apache Konfigürasyon Güvenirliği konfigirasyon, Apache Konfigürasyon Güvenirliği , Apache Konfigürasyon Güvenirliği bedava, Apache Konfigürasyon Güvenirliği izlesene.com., Apache Konfigürasyon Güvenirliği mp3 indir, Apache Konfigürasyon Güvenirliği youtube, Apache Konfigürasyon Güvenirliği klip izle, Apache Konfigürasyon Güvenirliği izle, Apache Konfigürasyon Güvenirliği yükle, Apache Konfigürasyon Güvenirliği rapidshare.com, Apache Konfigürasyon Güvenirliği şarkı sözleri, Apache Konfigürasyon Güvenirliği akortlar,antivirüs