]> granicus.if.org Git - apache/blob - docs/manual/dns-caveats.xml.tr
Help doc writer to spot places where:
[apache] / docs / manual / dns-caveats.xml.tr
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
3 <?xml-stylesheet type="text/xsl" href="./style/manual.tr.xsl"?>
4 <!-- English Revision: 1174747:1673652 (outdated) -->
5 <!-- =====================================================
6  Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
7    Reviewed by: Orhan Berent <berent belgeler.org>
8 ========================================================== -->
9
10 <!--
11  Licensed to the Apache Software Foundation (ASF) under one or more
12  contributor license agreements.  See the NOTICE file distributed with
13  this work for additional information regarding copyright ownership.
14  The ASF licenses this file to You under the Apache License, Version 2.0
15  (the "License"); you may not use this file except in compliance with
16  the License.  You may obtain a copy of the License at
17
18      http://www.apache.org/licenses/LICENSE-2.0
19
20  Unless required by applicable law or agreed to in writing, software
21  distributed under the License is distributed on an "AS IS" BASIS,
22  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
23  See the License for the specific language governing permissions and
24  limitations under the License.
25 -->
26
27 <manualpage metafile="dns-caveats.xml.meta">
28
29   <title>Apache HTTP Sunucusu ve DNS ile ilgili Konular</title>
30
31   <summary>
32     <p>Bu sayfanın konusu şöyle özetlenebilirdi: Yapılandırma dosyalarınızda
33       DNS sorguları yapılmasını gerektirecek ayarlamalardan kaçınınız. Eğer
34       yapılandırma dosyalarınızda DNS sorgusu yapılarak çözümlenebilecek
35       adresler bulunursa sunucunuz beklenmedik davranışlar (hiç
36       başlamayabilir) gösterebileceği gibi hizmet reddi veya hizmet
37       hırsızlığı (bazı sanal konakların diğerlerine giden sayfaları çalma
38       olasılığı dahil) saldırılarına açık hale gelebilir.</p>
39   </summary>
40
41   <section id="example">
42     <title>Basit Bir Örnek</title>
43
44     <example>
45       # Bu yetersiz bir yapılandırma örneğidir, sunucunuzda kullanmayın. <br />
46       &lt;VirtualHost falan.fesmekan.dom&gt;
47       <indent>
48         ServerAdmin filanca@fesmekan.dom <br />
49         DocumentRoot /siteler/fesmekan
50       </indent>
51       &lt;/VirtualHost&gt;
52     </example>
53
54     <p>httpd’nin beklendiği gibi işlemesi için her sanal konak için iki
55       veriye mutlaka ihtiyacı vardır: <directive module="core"
56       >ServerName</directive> ve sunucunun bağlantı kabul edip hizmet
57       sunacağı en az bir IP adresi. Yukarıdaki örnekte IP adresi
58       bulunmamaktadır, dolayısıyla Apache, <code>falan.fesmekan.dom</code>
59       adresi için bir DNS sorgusu yapmak zorundadır. Eğer sunucu,
60       yapılandırma dosyasını çözümlediği sırada bir sebeple DNS sunucusuna
61       erişemezse bu sanal konak <em>yapılandırılmayacak</em> ve bu sanal konağa
62       yapılan isteklere yanıt verilemeyecektir.</p>
63
64     <p><code>falan.fesmekan.dom</code>’un 192.168.2.1 IP adresine sahip
65       olduğunu varsayarsak yapılandırma şöyle olurdu:</p>
66
67     <example>
68       # Bu yetersiz bir yapılandırma örneğidir, sunucunuzda kullanmayın. <br />
69       &lt;VirtualHost 192.168.2.1&gt; <br />
70       <indent>
71         ServerAdmin filanca@fesmekan.dom <br />
72         DocumentRoot /siteler/fesmekan
73       </indent>
74       &lt;/VirtualHost&gt;
75     </example>
76
77     <p>Ancak, bu sefer de bu sanal konağın sunucu ismini öğrenmek için
78       httpd’nin bir ters DNS sorgusu yapması gerekecektir. Eğer bu sorgu
79       başarısız olursa kısmi bir yapılandırmaya gidilir.
80       Eğer sanal konak isme dayalı ise sanal konak
81       kısmen bile yapılandırılmaz. IP’ye dayalı sanal konaklar büyük oranda
82       çalışır, fakat (örneğin, bir Redirect varlığında olduğu gibi) sunucu ismini
83       içeren tam bir adres üretilmesini gerektiren bir durumda, sunucu geçerli
84       bir adres üretemez.</p>
85
86     <p>Her iki sorunu da çözen yapılandırma şöyle olurdu:</p>
87
88     <example>
89       &lt;VirtualHost 192.168.2.1&gt; <br />
90       <indent>
91         ServerName falan.fesmekan.dom <br />
92         ServerAdmin filanca@fesmekan.dom <br />
93         DocumentRoot /siteler/fesmekan
94       </indent>
95       &lt;/VirtualHost&gt;
96     </example>
97   </section>
98
99   <section id="denial">
100     <title>Hizmet Reddi</title>
101
102     <p>Şöyle bir yapılandırmanız olsun:</p>
103
104     <example>
105       &lt;VirtualHost falan.fesmekan.dom&gt;<br />
106       <indent>
107         ServerAdmin filanca@fesmekan.dom <br />
108         DocumentRoot /siteler/fesmekan
109       </indent>
110       &lt;/VirtualHost&gt;<br />
111       <br />
112       &lt;VirtualHost misal.mesela.dom&gt;<br />
113       <indent>
114         ServerAdmin falanca@mesela.dom<br />
115         DocumentRoot /siteler/mesela<br />
116       </indent>
117       &lt;/VirtualHost&gt;
118     </example>
119
120     <p><code>falan.fesmekan.dom</code>’a 192.168.2.1,
121       <code>misal.mesela.dom</code>’a 192.168.2.2 atadığınızı fakat,
122       <code>mesela.dom</code>’un DNS kaydının sizin denetiminizde olmadığını
123       varsayalım. Bu yapılandırmayla, <code>mesela.dom</code>’u
124       <code>fesmekan.dom</code>’a giden tüm trafiği çalabilecek duruma
125       getirirsiniz. Bunu gerçekleştirmek için DNS kaydında
126       <code>misal.mesela.dom</code>’a 192.168.2.1 adresinin atanması
127       yeterlidir. Kendi DNS’lerine sahip olduklarından dolayı
128       <code>misal.mesela.dom</code>’a istedikleri IP adresini atamaktan
129       onları alıkoyamazsınız.</p>
130
131     <p>192.168.2.1’e gelen isteklerin hepsine
132       (<code>http://falan.fesmekan.dom/biryer</code> şeklinde yazılan
133       adresler dahil) <code>mesela.dom</code> sanal konağınca hizmet
134       sunulacaktır. Apache’nin gelen istekleri sunduğu sanal konaklarla nasıl
135       eşleştirdiğini bilirseniz bunun sebebini kolayca anlarsınız. Bunu
136       kabataslak açıklayan  <a href="vhosts/details.html">bir belgemiz
137       mevcuttur</a>.</p>
138   </section>
139
140   <section id="main">
141     <title>"Ana Sunucu" Adresi</title>
142
143     <p><a href="vhosts/name-based.html">İsme dayalı sanal konak
144       desteği</a>, httpd’nin çalıştığı makinenin IP adres(ler)ini de bilmesini
145       gerektirir. Bu adresi elde etmek için sunucu, ya sunucu genelinde geçerli
146       <directive module="core">ServerName</directive> yönergesine bakar ya da bir
147       C işlevi olan <code>gethostname</code>’i kullanır (işlev, komut
148       isteminden <code>hostname</code> komutuna dönen yanıtın aynısını
149       döndürür) ve ardından bu adresle ilgili olarak bir DNS sorgusu yapar.
150       Bu sorgudan kaçınmanın henüz bir yolu yoktur.</p>
151
152     <p>Eğer bu sorgunun (DNS sunucusunun çökmüş olması gibi bir nedenle)
153       başarısız olabileceğinden korkuyorsanız, makine ismini ve IP adresini
154       <code>/etc/hosts</code> dosyanıza yazabilirsiniz (Makinenizin düzgün
155       olarak açılabilmesi için zaten bu kaydı yapmış olmanız gerekir).
156       Kullandığınız işletim sistemine bağlı olarak bu kaydın
157       <code>/etc/resolv.conf</code> veya <code>/etc/nsswitch.conf</code>
158       dosyasında bulunması gerekebilir.</p>
159
160     <p>Herhangi bir nedenle sunucunuz bir DNS sorgusu yapmıyorsa veya
161       yapmamalıysa, httpd’yi <code>HOSTRESORDER</code> ortam değişkenine
162       "<code>local</code>" değerini atadıktan sonra çalıştırabilirsiniz. Bu
163       tamamen işletim sistemine ve kullandığınız çözümleyici kütüphanelere
164       bağlıdır. Ayrıca, ortamı denetlemek için <module>mod_env</module>
165       kullanmıyorsanız, CGI’ler de bundan etkilenir. En iyisi işletim
166       sisteminizin SSS belgelerini ve kılavuz sayfalarını okumaktır.</p>
167   </section>
168
169   <section id="tips">
170     <title>Bu Sorunlardan Kaçınmak için İpuçları</title>
171
172     <ul>
173       <li><directive module="core">VirtualHost</directive> yönergelerinizde
174         IP adresleri kullanınız.</li>
175
176       <li><directive module="mpm_common">Listen</directive> yönergelerinizde
177         IP adresleri kullanınız.</li>
178
179       <li>Tüm sanal konakların ayrı birer <directive module="core"
180         >ServerName</directive> yönergesi olsun.</li>
181
182       <li>Hiçbir sayfa sunulmayan bir <code>&lt;VirtualHost
183         _default_:*&gt;</code> sanal konağınız olsun.</li>
184     </ul>
185   </section>
186
187 </manualpage>