diff options
Diffstat (limited to 'docs/manual/misc')
-rw-r--r-- | docs/manual/misc/perf-tuning.xml.tr | 77 | ||||
-rw-r--r-- | docs/manual/misc/security_tips.xml.tr | 85 |
2 files changed, 73 insertions, 89 deletions
diff --git a/docs/manual/misc/perf-tuning.xml.tr b/docs/manual/misc/perf-tuning.xml.tr index 345751d68b..6c5893809d 100644 --- a/docs/manual/misc/perf-tuning.xml.tr +++ b/docs/manual/misc/perf-tuning.xml.tr @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?> -<!-- English Revision: 805049:1174747 (outdated) --> +<!-- English Revision: 1174747 --> <!-- ===================================================== Translated by: Nilgün Belma Bugüner <nilgun belgeler.org> Reviewed by: Orhan Berent <berent belgeler.org> @@ -60,7 +60,7 @@ kullanıcının "yeterince hız" umduğu noktada sunumun gecikmesine sebep olur. Böyle bir durumda kullanıcılar yüklemeyi durdurup tekrar başlatma eğilimindedirler; sonuçta yük daha da artar. <directive - module="mpm_common" >MaxClients</directive> yönergesinin değerini + module="mpm_common" >MaxRequestWorkers</directive> yönergesinin değerini değiştirerek takaslamaya sebep olabilecek kadar çok çocuk süreç oluşturulmasını engelleyebilirsiniz ve böyle bir durumda bunu mutlaka yapmalısınız. Bunun için yapacağınız işlem basittir: <code>top</code> @@ -419,7 +419,7 @@ kılavuz olarak kullanabilirsiniz.</p> <p>Süreç oluşturmayla ilgili olarak süreç ölümü <directive - module="mpm_common">MaxRequestsPerChild</directive> değeri ile + module="mpm_common">MaxConnectionsPerChild</directive> değeri ile sağlanır. Bu değer öntanımlı olarak <code>0</code> olup, çocuk süreç başına istek sayısının sınırsız olduğu anlamına gelir. Eğer yapılandırmanızda bu değeri <code>30</code> gibi çok düşük bir @@ -725,69 +725,10 @@ module="mpm_common">Listen</directive> yönergesi kullanmak güvenilir olmayacaktır.</p> - <p><directive module="mpm_common">AcceptMutex</directive> yönergesi, - seçilen muteks gerçeklenimini çalışma anında değiştirmek için - kullanılabilir.</p> - - <dl> - <dt><code>AcceptMutex flock</code></dt> - - <dd> - <p>Bu yöntem, bir kilit dosyasını kilitlemek için - <code>flock(2)</code> sistem çağrısını kullanır (Kilit dosyasının - yeri <directive module="mpm_common" >LockFile</directive> - yönergesiyle belirtilir).</p> - </dd> - - <dt><code>AcceptMutex fcntl</code></dt> - - <dd> - <p>Bu yöntem, bir kilit dosyasını kilitlemek için - <code>fcntl(2)</code> sistem çağrısını kullanır (Kilit dosyasının - yeri <directive module="mpm_common" >LockFile</directive> - yönergesiyle belirtilir).</p> - </dd> - - <dt><code>AcceptMutex sysvsem</code></dt> - - <dd> - <p>(1.3 ve sonrası) Bu yöntem muteksi gerçeklemek için SysV tarzı - semaforları kullanır. Maalesef, SysV tarzı semaforların bazı yan - etkileri vardır. Bunlardan biri Apache'nin semaforu temizlemeden - ölme ihtimalidir (<code>ipcs(8)</code> kılavuz sayfasına bakınız). - Diğer biri, CGI'lerin sunucu ile aynı kullanıcı kimliğini - kullanmaları nedeniyle semafor arayüzünün hizmet reddi - saldırılarına açık olmasıdır (<program>suexec</program> veya - <code>cgiwrapper</code> gibi bir şeyler kullanmadıkça bütün - CGI'ler için söz konusudur).</p> - </dd> - - <dt><code>AcceptMutex pthread</code></dt> - - <dd> - <p>(1.3 ve sonrası) Bu yöntem POSIX mutekslerini kullanır ve POSIX - evreleri belirtiminin tamamen gerçeklendiği mimarilerde çalışması - gerekirse de sadece Solaris (2.5 ve sonrası) üzerinde ve sadece - belli yapılandırmalarla çalışmakta gibi görünmektedir. Bunu - denemişseniz sunucunuzun çöktüğünü ve yanıt vermediğini - görmüşsünüzdür. Sadece duruk içerikli sunucular iyi - çalışmaktadır.</p> - </dd> - - <dt><code>AcceptMutex posixsem</code></dt> - - <dd> - <p>(2.0 ve sonrası) Bu yöntem POSIX semaforlarını kullanır. Eğer - işlem sırasında bir evre muteks kaynaklı parçalama arızalarıyla - karşı karşıya kalırsa HTTP sunucusunun çökmesiyle semaforun sahibi - kurtarılamaz.</p> - </dd> - - </dl> - - <p>Eğer sisteminiz yukarıda bahsedilenler dışında başka bir dizgileme - yöntemi kullanıyorsa bununla ilgili kodun APR'ye eklenmesi girilen - zahmete değecektir.</p> + <p><directive module="core">Mutex</directive> yönergesi, + <code>mpm-accept</code> muteks gerçeklenimini çalışma anında değiştirmek + için kullanılabilir. Farklı muteks gerçeklenimleri ile ilgili hususlar + bu yönergede belgelenmiştir.</p> <p>Başka bir çözüm daha vardır ancak döngü kısmen dizgilenmeyeceğinden (yani belli sayıda sürece izin verilemeyeceğinden) asla @@ -851,9 +792,7 @@ bahsedildiği gibi, bir HTTP sunucusunun protokolü <strong>güvenilir şekilde</strong> gerçeklemesi için her iki yöndeki iletişimi birbirinden bağımsız olarak (iki yönlü bir TCP bağlantısının her - yarısını diğerinden bağımsız olarak) kapatması gerekir. Bu olgu başka - sunucular tarafından çoğunlukla dikkate alınmaz fakat Apache'nin 1.2 - sürümünden beri gerektiği gibi gerçeklenmektedir.</p> + yarısını diğerinden bağımsız olarak) kapatması gerekir.</p> <p>Bu özellik Apache'ye eklendiğinde Unix'in çeşitli sürümlerinde uzgörüsüzlükten dolayı bir takım geçici telaş sorunlarına sebep oldu. diff --git a/docs/manual/misc/security_tips.xml.tr b/docs/manual/misc/security_tips.xml.tr index 51a85d94c8..b41f340d7a 100644 --- a/docs/manual/misc/security_tips.xml.tr +++ b/docs/manual/misc/security_tips.xml.tr @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?> -<!-- English Revision: 805049:1300924 (outdated) --> +<!-- English Revision: 1300924 --> <!-- ===================================================== Translated by: Nilgün Belma Bugüner <nilgun belgeler.org> Reviewed by: Orhan Berent <berent belgeler.org> @@ -75,6 +75,10 @@ tedbirler alınmasını sağlayacak bazı yapılandırmaları vardır:</p> <ul> + <li><directive module="mod_reqtimeout">RequestReadTimeout</directive> + yönergesi bir istemcinin isteği göndermek için harcadığı zamanı + sınırlamayı sağlar.</li> + <li>HRS’ye maruz kalması olası sitelerde <directive module="core" >TimeOut</directive> yönergesinin değeri düşürülmelidir. Birkaç saniye gibi mümkün olduğunca düşük bir ayar uygun olabilir. Ancak @@ -108,17 +112,18 @@ <li>Sunucu tarafından özkaynakları tüketmeden aynı anda işlenebilecek bağlantıların sayısını sınırlamak için <directive module="mpm_common" - >MaxClients</directive> yönergesini kullanın. Ayrıca, <a + >MaxRequestWorkers</directive> yönergesini kullanın. Ayrıca, <a href="perf-tuning.html">başarım arttırma belgesine</a> de bakabilirsiniz.</li> <li>HRS’lerin etkilerini azaltmak için aynı andaki bağlantı sayısını arttırabilecek evreli <a href="../mpm.html">MPM</a>’lerden birini - kullanmak iyi olabilir. Dahası, deneysel <module>event</module> MPM’i + kullanmak iyi olabilir. Dahası, <module>event</module> MPM’i her bağlantıya yeni bir evre atanmaması için eşzamansız işlem yapar. - Ancak bu çalışma henüz tamamlanmamıştır. Özellikle de, + OpenSSL kütüphanesinin doğası nedeniyle <module>event</module> MPM’i <module>mod_ssl</module> ve diğer girdi - süzgeçleri ile henüz uyumlu değildir.</li> + süzgeçleri ile henüz uyumlu değildir. Bu durumlarda, + <module>worker</module> MPM'inin davranışına geri döner.</li> <li><a href="http://modules.apache.org/">http://modules.apache.org/</a> adresinde, belli istemci davranışlarını sınırlayacak ve HRS ile @@ -132,7 +137,7 @@ <title><code>ServerRoot</code> Dizinlerinin İzinleri</title> <p>Normalde, Apache root kullanıcı tarafından başlatılır ve hizmetleri - sunarken <directive module="mpm_common">User</directive> yönergesi + sunarken <directive module="mod_unixd">User</directive> yönergesi tarafından tanımlanan kullanıcının aidiyetinde çalışır. Root tarafından çalıştırılan komutlarda olduğu gibi, root olmayan kullanıcıların yapacakları değişikliklerden korunmak konusunda da dikkatli @@ -283,7 +288,7 @@ <p>Sunucunun bir parçası gibi çalışan, <code>mod_php</code>, <code>mod_perl</code>, <code>mod_tcl</code> ve <code>mod_python</code> gibi gömülü betik çalıştırma seçenekleri sunucuyu çalıştıran - kullanıcının aidiyetinde çalışırlar (<directive module="mpm_common" + kullanıcının aidiyetinde çalışırlar (<directive module="mod_unixd" >User</directive> yönergesine bakınız). Bu bakımdan bu betik yorumlayıcılar tarafından çalıştırılan betikler, sunucu kullanıcısının eriştiği herşeye erişebilirler. Bazı betik yorumlayıcıların getirdiği @@ -341,7 +346,10 @@ <section id="protectserverfiles"> <title>Sunucu dosyalarının öntanımlı olarak korunması</title> - <p>Apache’nin ister istemez yanlış anlaşılan yönlerinden biri öntanımlı erişim özelliğidir. Yani siz aksine bir şeyler yapmadıkça, sunucu normal URL eşleme kurallarını kullanarak bir dosyayı bulabildiği sürece onu istemciye sunacaktır.</p> + <p>Apache’nin ister istemez yanlış anlaşılan yönlerinden biri öntanımlı + erişim özelliğidir. Yani siz aksine bir şeyler yapmadıkça, sunucu normal + URL eşleme kurallarını kullanarak bir dosyayı bulabildiği sürece onu + istemciye sunacaktır.</p> <p>Örneğin, aşağıdaki durumu ele alalım:</p> @@ -351,7 +359,9 @@ <p>Ve, tarayıcınıza <code>http://localhost/~root/</code> yazın.</p> - <p>Böylece, istemcilerin tüm dosya sisteminizi gezmelerine izin vermiş olursunuz. Bu işlemin sonuçlarının önünü almak için sunucu yapılandırma dosyanıza şunları yazın:</p> + <p>Böylece, istemcilerin tüm dosya sisteminizi gezmelerine izin vermiş + olursunuz. Bu işlemin sonuçlarının önünü almak için sunucu yapılandırma + dosyanıza şunları yazın:</p> <example> <Directory /> @@ -362,7 +372,10 @@ </Directory> </example> - <p>Bu suretle, dosya sisteminize öntanımlı erişimi yasaklamış olursunuz. Erişime izin vermek istediğiniz dizinler için uygun <directive module="core">Directory</directive> bölümleri eklemeniz yeterli olacaktır. Örnek:</p> + <p>Bu suretle, dosya sisteminize öntanımlı erişimi yasaklamış olursunuz. + Erişime izin vermek istediğiniz dizinler için uygun <directive + module="core">Directory</directive> bölümleri eklemeniz yeterli + olacaktır. Örnek:</p> <example> <Directory /usr/users/*/public_html> @@ -380,9 +393,16 @@ </example> <p><directive module="core">Location</directive> ve <directive - module="core">Directory</directive> yönergelerinin etkileşimine de özellikle önem vermelisiniz; örneğin <code><Directory /></code> erişimi yasaklarken bir <code><Location /></code> yönergesi bunu ortadan kaldırabilir.</p> + module="core">Directory</directive> yönergelerinin etkileşimine de + özellikle önem vermelisiniz; örneğin <code><Directory /></code> + erişimi yasaklarken bir <code><Location /></code> yönergesi bunu + ortadan kaldırabilir.</p> - <p><directive module="mod_userdir">UserDir</directive> yönergesi de size buna benzer bir oyun oynayabilir; yönergeye <code>./</code> atamasını yaparsanız, root kullanıcısı söz konusu olduğunda yukarıda ilk örnekteki durumla karşılaşırız. Apache 1.3 veya üstünü kullanıyorsanız, sunucu yapılandırma dosyanızda aşağıdaki satırın mutlaka bulunmasını öneririz:</p> + <p><directive module="mod_userdir">UserDir</directive> yönergesi de size + buna benzer bir oyun oynayabilir; yönergeye <code>./</code> atamasını + yaparsanız, root kullanıcısı söz konusu olduğunda yukarıda ilk örnekteki + durumla karşılaşırız. Sunucu yapılandırma dosyanızda aşağıdaki satırın + mutlaka bulunmasını öneririz:</p> <example> UserDir disabled root @@ -393,7 +413,11 @@ <section id="watchyourlogs"> <title>Günlüklerin İzlenmesi</title> - <p>Sunucunuzda olup biteni günü gününe bilmek istiyorsanız <a href="../logs.html">günlük dosyalarına</a> bakmalısınız. Günlük dosyaları sadece olup biteni raporlamakla kalmaz, sunucunuza ne tür saldırılar yapıldığını ve güvenlik seviyenizin yeterli olup olmadığını anlamanızı da sağlarlar.</p> + <p>Sunucunuzda olup biteni günü gününe bilmek istiyorsanız <a + href="../logs.html">günlük dosyalarına</a> bakmalısınız. Günlük dosyaları + sadece olup biteni raporlamakla kalmaz, sunucunuza ne tür saldırılar + yapıldığını ve güvenlik seviyenizin yeterli olup olmadığını anlamanızı da + sağlarlar.</p> <p>Bazı örnekler:</p> @@ -402,31 +426,52 @@ grep "client denied" error_log | tail -n 10 </example> - <p>İlk örnek, <a href="http://online.securityfocus.com/bid/4876/info/">Apache Tomcat - Source.JSP Bozuk İstek Bilgilerini İfşa Açığı</a>nı istismar etmeyi deneyen saldırıların sayısını verirken ikinci örnek, reddedilen son on istemciyi listeler; örnek:</p> + <p>İlk örnek, <a href="http://online.securityfocus.com/bid/4876/info/" + >Apache Tomcat Source.JSP Bozuk İstek Bilgilerini İfşa Açığı</a>nı + istismar etmeyi deneyen saldırıların sayısını verirken ikinci örnek, + reddedilen son on istemciyi listeler; örnek:</p> <example> - [Thu Jul 11 17:18:39 2002] [error] [client falan.filan.dom] client denied + [Thu Jul 11 17:18:39 2002] [error] [client foo.example.com] client denied by server configuration: /usr/local/apache/htdocs/.htpasswd </example> - <p>Gördüğünüz gibi günlük dosyaları sadece ne olup bittiğini raporlar, bu bakımdan eğer istemci <code>.htpasswd</code> dosyasına erişebiliyorsa <a href="../logs.html#accesslog">erişim günlüğünüzde</a> şuna benzer bir kayıt görürsünüz:</p> + <p>Gördüğünüz gibi günlük dosyaları sadece ne olup bittiğini raporlar, bu + bakımdan eğer istemci <code>.htpasswd</code> dosyasına erişebiliyorsa <a + href="../logs.html#accesslog">erişim günlüğünüzde</a> şuna benzer bir + kayıt görürsünüz:</p> <example> - falan.filan.dom - - [12/Jul/2002:01:59:13 +0200] "GET /.htpasswd HTTP/1.1" + foo.example.com - - [12/Jul/2002:01:59:13 +0200] "GET /.htpasswd HTTP/1.1" </example> - <p>Bu, sunucu yapılandırma dosyanızda aşağıdaki yapılandırmayı iptal ettiğiniz anlamına gelir:</p> + <p>Bu, sunucu yapılandırma dosyanızda aşağıdaki yapılandırmayı iptal + ettiğiniz anlamına gelir:</p> <example> - <Files "^.ht*"> + <Files ".ht*"> <indent> Order allow,deny <br /> Deny from all </indent> </Files> </example> + </section> + + <section id="merging"> + + <title>Yapılandırma bölümlerinin birleştirilmesi</title> + + <p>Yapılandırma bölümlerinin birleştirilmesi karmaşık bir işlem olup bazı + durumlarda yönergelere bağlıdır. Yönergeleri bir araya getirirken + aralarındaki bağımlılıkları daima sınayın.</p> + <p><directive>mod_access_compat</directive> gibi henüz yönerge katıştırma + mantığını gerçeklememiş modüller için sonraki bölümlerdeki davranış, bu + modüllerin yönergelerini içerip içermemesine bağlıdır. Yapılandırmada + yönergelerin <em>yerleri değiştirildiğinde</em> fakat bir katıştırma + yapılmadığında, yapılandırma bir değişiklik yapılana kadar miras + alınır.</p> </section> </manualpage> |