]> granicus.if.org Git - apache/blob - docs/manual/suexec.html.tr.utf8
Quote path/URL arguments to Proxy* directives.
[apache] / docs / manual / suexec.html.tr.utf8
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="tr" xml:lang="tr"><head><!--
4         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5               This file is generated from xml source: DO NOT EDIT
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7       -->
8 <title>SuEXEC Desteği - Apache HTTP Sunucusu Sürüm 2.5</title>
9 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
12 <script src="./style/scripts/prettify.min.js" type="text/javascript">
13 </script>
14
15 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
16 <body id="manual-page"><div id="page-header">
17 <p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/quickreference.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p>
18 <p class="apache">Apache HTTP Sunucusu Sürüm 2.5</p>
19 <img alt="" src="./images/feather.gif" /></div>
20 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
21 <div id="path">
22 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Sunucusu</a> &gt; <a href="http://httpd.apache.org/docs/">Belgeleme</a> &gt; <a href="./">Sürüm 2.5</a></div><div id="page-content"><div id="preamble"><h1>SuEXEC Desteği</h1>
23 <div class="toplang">
24 <p><span>Mevcut Diller: </span><a href="./en/suexec.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
25 <a href="./fr/suexec.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
26 <a href="./ja/suexec.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
27 <a href="./ko/suexec.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
28 <a href="./tr/suexec.html" title="Türkçe">&nbsp;tr&nbsp;</a></p>
29 </div>
30 <div class="outofdate">Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.</div>
31
32     <p><strong>SuEXEC</strong> özelliği, Apache HTTP Sunucusu kullanıcılarına
33       <strong>CGI</strong> ve <strong>SSI</strong> programlarını sunucunun
34       aidiyetinde çalıştığı kullanıcıdan farklı bir kullanıcının aidiyetinde
35       çalıştırma olanağı verir. Normalde, <strong>CGI</strong> ve
36       <strong>SSI</strong> programlarını çalıştıranla sunucuyu çalıştıran
37       aynı kullanıcıdır.</p>
38
39     <p>Gerektiği gibi kullanıldığında bu özellik, kullanıcılara
40       <strong>CGI</strong> ve <strong>SSI</strong> programlarını çalıştırma
41       ve geliştirmeye izin vermekle ortaya çıkan güvenlik risklerini azaltır.
42       Bununla birlikte, <strong>suEXEC</strong> gerektiği gibi
43       yapılandırılmadığı takdirde bazı sorunlara yol açabilir ve bilgisayar
44       güvenliğinizde yeni delikler ortaya çıkmasına sebep olabilir.
45       Güvenlikle ilgili mevcut sorunlarla başa çıkmada ve <em>setuid
46       root</em> programları yönetmekte bilgi ve deneyim sahibi değilseniz
47       <strong>suEXEC</strong> kullanmayı kesinlikle düşünmemenizi
48       öneririz.</p>
49   </div>
50 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#before">Başlamadan önce</a></li>
51 <li><img alt="" src="./images/down.gif" /> <a href="#model">SuEXEC Güvenlik Modeli</a></li>
52 <li><img alt="" src="./images/down.gif" /> <a href="#install">suEXEC’in Yapılandırılması ve Kurulumu</a></li>
53 <li><img alt="" src="./images/down.gif" /> <a href="#enable">suEXEC’in etkin kılınması ve iptal edilmesi</a></li>
54 <li><img alt="" src="./images/down.gif" /> <a href="#usage">SuEXEC’in kullanımı</a></li>
55 <li><img alt="" src="./images/down.gif" /> <a href="#debug">SuEXEC ve hata ayıklama</a></li>
56 <li><img alt="" src="./images/down.gif" /> <a href="#jabberwock">Uyarılar ve Örnekler</a></li>
57 </ul><ul class="seealso"><li><a href="#comments_section">Yorum</a></li></ul></div>
58 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
59 <div class="section">
60 <h2><a name="before" id="before">Başlamadan önce</a></h2>
61
62     <p>Belgeye balıklama dalmadan önce, suexec'i kullanacağınız ortam ve
63       kendiniz hakkında yapılmış çeşitli kabuller hakkında bilgi sahibi
64       olmalısınız.</p>
65
66     <p>Öncelikle, üzerinde <strong>setuid</strong> va <strong>setgid</strong>
67       işlemlerinin yapılabildiği Unix türevi bir işletim sistemi
68       kullandığınızı varsayıyoruz. Tüm komut örnekleri buna dayanarak
69       verilmiştir. Bu desteğe sahip başka platformlar varsa onlardaki
70       yapılandırma burada anlattığımız yapılandırmadan farklı olabilir.</p>
71
72     <p>İkinci olarak, bilgisayarınızın güvenliği ve yönetimi ile ilgili bazı
73       temel kavramları bildiğinizi kabul ediyoruz. Buna
74       <strong>setuid/setgid</strong> işlemlerinin sisteminiz ve güvenlik
75       seviyesi üzerindeki etkilerini bilmek dahildir.</p>
76
77     <p>Üçüncü olarak, <strong>suEXEC</strong> kodunun
78       <strong>değiştirilmemiş</strong> bir sürümünü kullandığınızı
79       varsayıyoruz. Tüm suEXEC kodu, geliştiricilerin yanında sayısız beta
80       kullanıcısı tarafından dikkatle incelenmiş ve denenmiştir. Kodların hem
81       basit hem de sağlam bir şekilde güvenli olması için gerekli tüm
82       önlemler alınmıştır. Bu kodun değiştirilmesi beklenmedik sorunlara ve
83       yeni güvenlik risklerine yol açabilir. Özellikle güvenlikle ilgili
84       programlarda deneyimli değilseniz suEXEC kodunda kesinlikle bir
85       değişiklik yapmamalısınız. Değişiklik yaparsanız kodlarınızı gözden
86       geçirmek ve tartışmak üzere Apache HTTP Sunucusu geliştirme ekibi ile
87       paylaşmanızı öneririz.</p>
88
89     <p>Dördüncü ve son olarak, Apache HTTP Sunucusu geliştirme ekibinin
90       suEXEC’i öntanımlı httpd kurulumunun bir parçası yapmama kararından
91       bahsetmek gerekir. Bunun sonucu olarak, suEXEC yapılandırması sistem
92       yöneticisinin ayrıntılı bir incelemesini gerektirir. Gerekli incelemeden
93       sonra yönetici tarafından suEXEC yapılandırma seçeneklerine karar
94       verilip, normal yollardan sisteme kurulumu yapılır. Bu seçeneklerin
95       belirlenmesi, suEXEC işlevselliğinin kullanımı sırasında sistem
96       güvenliğini gerektiği gibi sağlamak için yönetici tarafından dikkatle
97       saptanmayı gerektirir. Bu sürecin ayrıntılarının yöneticiye bırakılma
98       sebebi, suEXEC kurulumunu, suEXEC’i dikkatle kullanacak yeterliliğe sahip
99       olanlarla sınırlama  beklentimizdir.</p>
100
101     <p>Hala bizimle misiniz? Evet mi? Pekala, o halde devam!</p>
102 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
103 <div class="section">
104 <h2><a name="model" id="model">SuEXEC Güvenlik Modeli</a></h2>
105
106     <p>SuEXEC yapılandırması ve kurulumuna girişmeden önce biraz da
107       gerçekleşmesini istediğiniz güvenlik modelinin ayrıntıları üzerinde
108       duralım. Böylece, suEXEC’in içinde olup bitenleri ve sisteminizin
109       güvenliği için alınacak önlemleri daha iyi anlayabilirsiniz.</p>
110
111     <p><strong>suEXEC</strong> işlevselliği, Apache HTTP Sunucusu tarafından
112       gerektiği takdirde artalanda çalıştırılan bir setuid programa dayanır.
113       Bu program, bir CGI veya SSI betiğine bir HTTP isteği yapıldığı zaman,
114       bu betiği, yöneticinin ana sunucunun aidiyetinde çalıştığı kullanıcıdan
115       farklı olarak seçtiği bir kullanıcının aidiyetinde çalıştırmak için
116       çağrılır. Böyle bir istek geldiğinde, Apache httpd artalandaki setuid
117       programına, HTTP isteği yapılan programın ismiyle beraber aidiyetinde
118       çalışacağı kullanıcı ve grup kimliklerini de aktarır.</p>
119
120     <p>Artalanda çalıştırılan setuid program başarıyı ve başarısızlığı
121       aşağıdaki süreci izleyerek saptar. Bunlardan herhangi biri başarısız
122       olursa program başarısızlık durumunu günlüğe kaydeder ve bir hata
123       vererek çıkar. Aksi takdirde çalışmaya devam eder.</p>
124
125     <ol>
126       <li>
127         <strong>Setuid programı çalıştıran kullanıcı sistemin geçerli
128         kullanıcılarından biri mi?</strong>
129
130         <p class="indent">Bu, setuid programı çalıştıran kullanıcının
131         sistemin gerçek bir kullanıcısı olduğunudan emin olunmasını sağlar.
132         </p>
133      </li>
134
135      <li>
136         <strong>Setuid program yeterli sayıda argümanla çağrılmış mı?
137         </strong>
138
139         <p class="indent">Apache HTTP Sunucusunun artalanda çağırdığı
140           setuid program ancak yeterli sayıda argüman sağlandığı takdirde
141           çalışacaktır. Argümanların sayısını ve sırasını Apache HTTP sunucusu
142           bilir. Eğer setuid program yeterli sayıda argümanla çağrılmamışsa
143           ya kendisinde bir değişiklik yapılmıştır ya da kurulu Apache httpd
144           çalıştırılabilirinin suEXEC ile ilgili kısmında yanlış giden bir
145           şeyler vardır.</p>
146       </li>
147
148       <li>
149         <strong>Bu geçerli kullanıcının bu setuid programı çalıştırma
150           yetkisi var mı?</strong>
151
152         <p class="indent">Sadece tek bir kullanıcı (Apache’nin aidiyetinde
153           çalıştığı kullanıcı) bu programı çalıştırmaya yetkilidir.</p>
154       </li>
155
156       <li>
157         <strong>Hedef CGI veya SSI programı hiyerarşik olarak güvenliği
158           bozacak bir dosya yolu üzerinde mi?</strong>
159
160         <p class="indent">Hedef CGI veya SSI programının dosya yolu '/' veya
161           '..' ile başlıyor  mu? Buna izin verilmez. Hedef CGI veya SSI
162           programı suEXEC’in belge kök dizininde yer almalıdır (aşağıda
163           <code>--with-suexec-docroot=<em>DİZİN</em></code> seçeneğine
164           bakınız).</p>
165       </li>
166
167       <li>
168         <strong>Hedef kullanıcı ismi geçerli mi?</strong>
169
170         <p class="indent">Hedef kullanıcı mevcut mu?</p>
171       </li>
172
173       <li>
174         <strong>Hedef grup ismi geçerli mi?</strong>
175
176         <p class="indent">Hedef grup mevcut mu?</p>
177       </li>
178
179       <li>
180         <strong>Hedef kullanıcı <code>root</code> değil, değil mi?</strong>
181
182         <p class="indent">Mevcut durumda, <code>root</code> kullanıcısının
183           CGI/SSI programlarını çalıştırmasına izin verilmemektedir.</p>
184       </li>
185
186       <li>
187         <strong>Hedef kullanıcı kimliği asgari kullanıcı numarasından
188           <em>BÜYÜK</em> mü?</strong>
189
190         <p class="indent">Asgari kullanıcı numarası yapılandırma sırasında
191           belirtilir. Böylece CGI/SSI programlarını çalıştırmasına izin
192           verilecek olası en düşük kullanıcı numarasını belirlemeniz mümkün
193           kılınmıştır. Bu bazı “sistem” hesaplarını devreden çıkarmak için
194           yararlıdır.</p>
195       </li>
196
197       <li>
198         <strong>Hedef grup <code>root</code>  değil, değil mi?</strong>
199
200         <p class="indent"><code>root</code> grubunun CGI/SSI
201           programlarını çalıştırmasına izin verilmemektedir.</p>
202       </li>
203
204       <li>
205         <strong>Hedef grup numarası asgari grup numarasından
206           <em>BÜYÜK</em> mü?</strong>
207
208         <p class="indent">Asgari grup numarası yapılandırma sırasında
209           belirtilir. Böylece CGI/SSI programlarını çalıştırmasına izin
210           verilecek olası en düşük grup numarasını belirlemeniz mümkün
211           kılınmıştır. Bu bazı “sistem” hesaplarını devreden çıkarmak için
212           yararlıdır.</p>
213       </li>
214
215       <li>
216         <strong>Apache’nin artalanda çağırdığı setuid program hedef
217           kullanıcı ve grubun aidiyetine geçebildi mi?</strong>
218
219         <p class="indent">Bu noktadan itibaren program setuid ve setgid
220           çağrıları üzerinden hedef kullanıcı ve grubun aidiyetine geçer.
221           Erişim grubu listesi de ayrıca kullanıcının üyesi olduğu tüm
222           gruplara genişletilir.</p>
223       </li>
224
225       <li>
226         <strong>Hedef CGI/SSI programının bulunduğu dizine geçebildik mi?
227         </strong>
228
229         <p class="indent">Dizin mevcut değilse dosyaları da içeremez. Hedef
230           dizine geçemiyorsak bu, dizin mevcut olmadığından olabilir.</p>
231       </li>
232
233       <li>
234         <strong>Hedef dizin Apache için izin verilen yerlerden biri mi?
235         </strong>
236
237         <p class="indent">İstek sunucunun normal bir bölümü için yapılmış
238           olsa da istenen dizin acaba suEXEC’in belge kök dizini altında mı?
239           Yani, istenen dizin, suEXEC’in aidiyetinde çalıştığı kullanıcının
240           ev dizini altında bulunan, <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code> ile belirtilen dizinin altında mı? (<a href="#install">suEXEC’in yapılandırma seçeneklerine</a>
241           bakınız).</p>
242       </li>
243
244       <li>
245         <strong>Hedef dizin başkaları tarafından yazılabilen bir dizin değil,
246           değil mi?</strong>
247
248         <p class="indent">Başkaları da yazabilsin diye bir dizin açmıyoruz;
249           dizin içeriğini sadece sahibi değiştirebilmelidir.</p>
250       </li>
251
252       <li>
253         <strong>Hedef CGI/SSI programı mevcut mu?</strong>
254
255         <p class="indent">Mevcut değilse çalıştırılamaz.</p>
256       </li>
257
258       <li>
259         <strong>Hedef CGI/SSI program dosyasına başkaları tarafından
260           yazılamıyor, değil mi?</strong>
261
262         <p class="indent">Hedef CGI/SSI programının dosyasına sahibinden
263           başka kimsenin bir şeyler yazmasını istemeyiz.</p>
264       </li>
265
266       <li>
267         <strong>Hedef CGI/SSI program setuid veya setgid <em>değil</em>,
268           değil mi?</strong>
269
270         <p class="indent">UID/GID‘i tekrar değiştirecek programlar
271           çalıştırmayı istemeyiz.</p>
272       </li>
273
274       <li>
275         <strong>Hedef kullanıcı/grup, programın kullanıcı/grubu ile aynı mı?
276         </strong>
277
278         <p class="indent">Hedef kullanıcı dosyanın sahibi mi?</p>
279       </li>
280
281       <li>
282         <strong>İşlemlerin güvenle yapılabilmesi için süreç ortamını
283           başarıyla temizleyebildik mi?</strong>
284
285         <p class="indent">suEXEC, sürecin çalışacağı ortama güvenli bir
286           program çalıştırma yolu sağlamaktan başka, yapılandırma sırasında
287           oluşturulan güvenli ortam değişkenleri listesinde isimleri bulunan
288           ortam değişkenlerinden başkasını aktarmayacaktır.</p>
289       </li>
290
291       <li>
292         <strong>Hedef CGI/SSI programı haline gelip çalışabildik mi?</strong>
293
294         <p class="indent">Burası suEXEC’in bitip CGI/SSI programının
295           başladığı yerdir.</p>
296       </li>
297     </ol>
298
299     <p>Bu süreç suEXEC güvenlik modelinin standart işlemlerini oluşturur.
300       Biraz zorlayıcı ve CGI/SSI tasarımına yeni kurallar ve sınırlamalar
301       getiriyor olsa da düşünülen güvenliği adım adım sağlayacak şekilde
302       tasarlanmıştır.</p>
303
304     <p>Düzgün bir suEXEC yapılandırmasının hangi güvenlik risklerinden
305       kurtulmayı sağladığı ve bu güvenlik modelinin sunucu yapılandırmasıyla
306       ilgili sorumluluklarınızı nasıl sınırlayabildiği hakkında daha
307       ayrıntılı bilgi edinmek için bu belgenin <a href="#jabberwock">"Uyarılar ve Örnekler"</a> bölümüne bakınız.</p>
308 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
309 <div class="section">
310 <h2><a name="install" id="install">suEXEC’in Yapılandırılması ve Kurulumu</a></h2>
311
312     <p>Eğlence başlıyor.</p>
313
314     <p><strong>suEXEC yapılandırma seçenekleri</strong><br />
315     </p>
316
317     <dl>
318       <dt><code>--enable-suexec</code></dt>
319
320       <dd>Bu seçenek, hiçbir zaman öntanımlı olarak kurulmayan ve
321         etkinleştirilmeyen suEXEC özelliğini etkin kılar. suEXEC özelliğini
322         kullanma isteğinizi Apache’nin kabul edebilmesi için
323         <code>--enable-suexec</code> seçeneğinin yanında en azından bir tane
324         de <code>--with-suexec-xxxxx</code> seçeneği belirtilmiş
325         olmalıdır.</dd>
326
327       <dt><code>--with-suexec-bin=<em>YOL</em></code></dt>
328
329       <dd>Güvenlik sebebiyle <code>suexec</code> çalıştırılabilirinin
330         bulunduğu yer sunucu koduna yazılır. Bu seçenekle öntanımlı yol
331         değiştirilmiş olur. Örnek:<br />
332         <code>--with-suexec-bin=/usr/sbin/suexec</code></dd>
333
334       <dt><code>--with-suexec-caller=<em>KULLANICI</em></code></dt>
335
336       <dd>Normalde httpd’nin aidiyetinde çalıştığı <a href="mod/mpm_common.html#user">kullanıcı</a>dır. Bu, suEXEC
337         çalıştırıcısını çalıştırmasına izin verilen tek kullanıcıdır.</dd>
338
339       <dt><code>--with-suexec-userdir=<em>DİZİN</em></code></dt>
340
341       <dd><p>Kullanıcıların ev dizinleri altında suEXEC’in erişmesine izin
342         verilen alt dizinin yerini tanımlar. Bu dizin altında suEXEC
343         kullanıcısı tarafından çalıştırılacak tüm programlar "güvenilir"
344         olmalıdır. Eğer “basit” bir <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code> yönergesi kullanıyorsanız ( içinde “*”
345         bulunmayan), bunun aynı dizin olması gerekir. Eğer burada belirtilen
346         dizin, <code>passwd</code> dosyasında kullanıcı için belirtilmiş
347         dizinin altında <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code>
348         yönergesinde belirtilen dizin olmadığı takdirde suEXEC işini
349         gerektiği gibi yapmayacaktır. Öntanımlı değer
350         <code>public_html</code>’dir.</p>
351
352       <p>Eğer, sanal konaklarınızın herbiri farklı <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code> yönergeleri içeriyorsa
353         burada belirtilecek dizinin üst dizininin hepsinde aynı olması
354         gerekir. <strong>Aksi takdirde, "~<em><code>kullanıcı</code></em>"
355         istekleri düzgün çalışmayacaktır.</strong></p></dd>
356
357       <dt><code>--with-suexec-docroot=<em>DİZİN</em></code></dt>
358
359       <dd>httpd için belge kök dizinini belirler. Bu, (<code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code>’lardan başka) suEXEC için
360         kullanılacak tek hiyerarşi olacaktır. Öntanımlı dizin sonuna
361         "<code>/htdocs</code>" eklenmiş <code>--datadir</code> dizinidir.
362         Yani, seçeneği "<code>--datadir=/home/apache</code>" olarak
363         belirtmişseniz suEXEC çalıştırıcısı için belge kök dizini
364         "<code>/home/apache/htdocs</code>" olur.</dd>
365
366       <dt><code>--with-suexec-uidmin=<em>UID</em></code></dt>
367
368       <dd>suEXEC kullanıcısının kullanıcı kimliği olarak izin verilen en
369         düşük değeri belirler. Çoğu sistemde bu ya 500’dür ya da 100; 100
370         öntanımlıdır.</dd>
371
372       <dt><code>--with-suexec-gidmin=<em>GID</em></code></dt>
373
374       <dd>suEXEC kullanıcısının grup kimliği olarak izin verilen en düşük
375         değeri belirler. Çoğu sistemde bu 100 olup, seçeneğin de öntanımlı
376         değeridir.</dd>
377
378       <dt><code>--with-suexec-logfile=<em>DOSYA</em></code></dt>
379
380       <dd>suEXEC hareketlerinin ve hatalarının kaydedileceği günlük
381         dosyasının adını belirler (denetim ve hata ayıklama için
382         kullanışlıdır). Öntanımlı günlük dosyası ismi
383         "<code>suexec_log</code>" olup yeri (<code>--logfiledir</code>
384         seçeneği ile belirtilen) günlük dosyaları dizinidir.</dd>
385
386       <dt><code>--with-suexec-safepath=<em>YOL</em></code></dt>
387
388       <dd>CGI çalıştırılabilirlerine aktarılacak güvenilir <code>PATH</code>
389         ortam değişkeninin değerini tanımlar.
390         "<code>/usr/local/bin:/usr/bin:/bin</code>" öntanımlıdır.</dd>
391     </dl>
392
393     <h3>SuEXEC çalıştırıcısının derlenmesi ve kurulumu</h3>
394       
395
396       <p>SuEXEC özelliğini <code>--enable-suexec</code> seçeneği ile
397         etkinleştirdiyseniz <code>make</code> komutunu verdiğinizde httpd
398         ile birlikte <code>suexec</code> çalıştırılabilir dosyası da
399         derlenecektir.</p>
400
401       <p>Tüm bileşenler derlendikten sonra <code>make install</code> komutunu
402         vererek kurulumu tamamlayabilirsiniz. <code>suexec</code>
403         çalıştırılabilir dosyası <code>--sbindir</code> seçeneği ile
404         tanımlanan dizine kurulacaktır; öntanımlı yeri
405         <code>/usr/local/apache2/bin/</code> dizinidir.</p>
406
407       <p>Kurulum adımında <strong><em>root yetkisine</em></strong> sahip
408         olmanız gerektiğini unutmayın. Çalıştırıcıya kullanıcı kimliğinin
409         atanabilmesi ve dosyanın sahibi olan kullanıcı kimliği ile
410         çalıştırılabilmesini mümkün kılan bitinin etkin kılınabilmesi için
411         kurulumun <code><em>root</em></code> tarafından yapılması
412         önemlidir.</p>
413     
414
415     <h3>Paranoyak yetkilendirme</h3>
416       
417
418       <p>SuEXEC çalıştırıcısı kendini çalıştıran kullanıcının
419         <code class="program"><a href="./programs/configure.html">configure</a></code> betiğine
420         <code>--with-suexec-caller</code> seçeneği ile belirtilen kullanıcı
421         olup olmadığına bakacaksa da, bu sınamanın da bir sistem veya
422         kütüphane çağrısı ile istismar edilmiş olma ihtimali gözardı
423         edilmemelidir. Bunun meydana gelmesini önlemek için ve genelde
424         yapıldığı gibi dosyanın izinlerini suEXEC çalıştırıcısı sadece
425         httpd'nin aidiyetinde çalıştığı grup tarafından çalıştırılacak
426         şekilde ayarlayınız.</p>
427
428       <p>Örneğin, sunucunuz şöyle yapılandırılmışsa:</p>
429
430       <div class="example"><p><code>
431           User apache<br />
432           Group apache-grup<br />
433       </code></p></div>
434
435       <p>Ve <code class="program"><a href="./programs/suexec.html">suexec</a></code> çalıştırılabilir de
436         <code>/usr/local/apache2/bin/</code> dizinine kurulmuşsa şu komutları
437         vermelisiniz:</p>
438
439       <div class="example"><p><code>
440           chgrp apache-grup /usr/local/apache2/bin/suexec<br />
441           chmod 4750 /usr/local/apache2/bin/suexec<br />
442       </code></p></div>
443
444       <p>Böylece suEXEC çalıştırıcısını httpd’yi çalıştıran grubun
445         üyelerinden başkasının çalıştıramayacağından emin olabilirsiniz.</p>
446     
447 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
448 <div class="section">
449 <h2><a name="enable" id="enable">suEXEC’in etkin kılınması ve iptal edilmesi</a></h2>
450     
451
452     <p>httpd başlatıldığı sırada <code class="program"><a href="./programs/suexec.html">suexec</a></code> çalıştırıcısı için
453       <code>--sbindir</code> seçeneği ile tanımlanan dizine bakar (seçeneğin
454       öntanımlı değeri <code>/usr/local/apache/sbin/suexec</code>’tir). httpd
455       düzgün yapılandırılmış bir suEXEC çalıştırıcısı bulduğu takdirde hata
456       günlüğüne şöyle bir ileti yazacaktır:</p>
457
458 <div class="example"><p><code>
459     [notice] suEXEC mechanism enabled (wrapper: <var>/dosya/yolu/suexec</var>)
460 </code></p></div>
461
462     <p>Sunucu başlatıldığında bu ileti yazılmazsa sunucu ya çalıştırıcı
463       programı umduğu yerde bulamamıştır ya da dosyanın <em>setuid</em> biti
464       <em>root</em> tarafından etkin kılınmamıştır.</p>
465
466      <p>SuEXEC mekanizmasını etkin kılmak istediğiniz sunucu çalışmaktaysa
467       sunucuyu önce öldürmeli sonra yeniden başlatmalısınız.  Basit bir
468       <code>HUP</code> veya <code>USR1</code> sinyali ile yeniden başlamasını
469       sağlamak yeterli olmayacaktır.</p>
470
471      <p>SuEXEC mekanizmasını iptal etmek için ise <code class="program"><a href="./programs/suexec.html">suexec</a></code>
472       dosyasını sildikten sonra httpd'yi öldürüp yeniden başlamalısınız.</p>
473 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
474 <div class="section">
475 <h2><a name="usage" id="usage">SuEXEC’in kullanımı</a></h2>
476
477     <p>CGI programlarına yapılan isteklerin suEXEC çalıştırıcısı tarafından
478       yerine getirilebilmesi için sanal konağın bir <code class="directive"><a href="./mod/mod_suexec.html#suexecusergroup">SuexecUserGroup</a></code> yönergesi içermesi veya
479       isteğin <code class="module"><a href="./mod/mod_userdir.html">mod_userdir</a></code> tarafından işleme konulması
480       gerekir.</p>
481
482     <p><strong>Sanal Konaklar:</strong><br />SuEXEC çalıştırıcısını farklı
483       bir kullanıcı ile etkin kılmanın tek yolu <code class="directive"><a href="./mod/core.html#virtualhost">VirtualHost</a></code> bölümleri içinde <code class="directive"><a href="./mod/mod_suexec.html#suexecusergroup">SuexecUserGroup</a></code> yönergesini
484       kullanmaktır. Bu yönergede ana sunucuyu çalıştıran kullanıcıdan farklı
485       bir kullanıcı  belirterek ilgili sanal konak üzerinden CGI kaynakları
486       için yapılan tüm isteklerin belirtilen <em>kullanıcı</em> ve
487       <em>grup</em> tarafından çalıştırılması sağlanır. Bu yönergeyi
488       içermeyen sanal konaklar için ana sunucunun kullanıcısı
489       öntanımlıdır.</p>
490
491     <p><strong>Kullanıcı dizinleri:</strong><br />
492     <code class="module"><a href="./mod/mod_userdir.html">mod_userdir</a></code> tarafından işleme sokulan tüm istekler için
493     suEXEC çalıştırıcısı istek yapılan kullanıcı dizininin sahibinin
494     aidiyetinde çalıştırılacaktır. Bu özelliğin çalışması için tek
495     gereklilik, kullanıcının SuEXEC çalıştırıcısı için etkin kılınmış olması
496     ve çalıştırıcının yukarıdaki <a href="#model">güvenlik sınamalarından</a>
497     geçebilmesidir. Ayrıca,  <code>--with-suexec-userdir</code> <a href="#install">derleme</a> seçeneğinin açıklamasına da bakınız.</p>
498 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
499 <div class="section">
500 <h2><a name="debug" id="debug">SuEXEC ve hata ayıklama</a></h2>
501
502     <p>SuEXEC çalıştırıcısı yukarıda değinildiği gibi günlük bilgilerini
503       <code>--with-suexec-logfile</code> seçeneği ile belirtilen dosyaya
504       yazacaktır. Çalıştırıcıyı doğru yapılandırarak kurduğunuzdan emin olmak
505       istiyorsanız, yolunda gitmeyen şeyler var mı diye bu günlük dosyasına
506       bakmayı ihmal etmeyin.</p>
507
508 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
509 <div class="section">
510 <h2><a name="jabberwock" id="jabberwock">Uyarılar ve Örnekler</a></h2>
511     
512
513     <p><strong>UYARI!</strong> Bu bölüm henüz bitmedi. Bu bölümün son hali
514       için <a href="http://httpd.apache.org/docs/trunk/suexec.html">çevrimiçi
515       belgelere</a> bakınız.</p>
516
517     <p>SuEXEC çalıştırıcısından dolayı sunucu ayarlarına bazı sınırlamalar
518       getiren bir kaç önemli nokta mevcuttur. SuEXEC ile ilgili hata
519       bildiriminde bulunmadan önce bunlara bir göz atmalısınız.</p>
520
521     <ul>
522       <li><strong>suEXEC ile ilgili önemli noktalar</strong></li>
523
524       <li>Hiyerarşik sınırlamalar
525
526         <p class="indent">Güvenlik ve verimlilik adına, tüm suEXEC
527           isteklerinin sanal konaklar için üst düzey belge kökünün altındaki
528           dosyalarla, kullanıcı dizinleri için ise üst düzey bireysel belge
529           köklerinin altındaki dosyalarla sınırlı kalması gerekir. Örneğin,
530           dört sanal konağınız varsa ve suEXEC çalıştırıcısının
531           getirilerinden faydalanmak istiyorsanız, sanal konaklarınızın belge
532           kök dizinlerini ana sunucunun belge kök dizininin altında kalacak
533           şekilde yapılandırmanız gerekir (örnek yolda).</p>
534       </li>
535
536       <li>SuEXEC'in <code>PATH</code> ortam değişkeni
537
538         <p class="indent">Bunu değiştirmek tehlikeli olabilir. Bu değişkende
539           tanımladığınız her yolun <strong>güvenli</strong> bir dizini işaret
540           ettiğinden emin olmalısınız. Başkalarının oralarda bir truva atı
541           çalıştırmasını istemiyorsanız buna çok dikkat ediniz.</p>
542       </li>
543
544       <li>SuEXEC kodunda değişiklik
545
546         <p class="indent">Gerçekte ne yaptığınızı bilmiyorsanız bu,
547           <strong>büyük bir sorun</strong> olabilir. Böyle şeyler yapmaktan
548           mümkün olduğunca uzak durmalısınız.</p>
549       </li>
550     </ul>
551
552 </div></div>
553 <div class="bottomlang">
554 <p><span>Mevcut Diller: </span><a href="./en/suexec.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
555 <a href="./fr/suexec.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
556 <a href="./ja/suexec.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
557 <a href="./ko/suexec.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
558 <a href="./tr/suexec.html" title="Türkçe">&nbsp;tr&nbsp;</a></p>
559 </div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Yorum</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
560 <script type="text/javascript"><!--//--><![CDATA[//><!--
561 var comments_shortname = 'httpd';
562 var comments_identifier = 'http://httpd.apache.org/docs/trunk/suexec.html';
563 (function(w, d) {
564     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
565         d.write('<div id="comments_thread"><\/div>');
566         var s = d.createElement('script');
567         s.type = 'text/javascript';
568         s.async = true;
569         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
570         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
571     }
572     else {
573         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
574     }
575 })(window, document);
576 //--><!]]></script></div><div id="footer">
577 <p class="apache">Copyright 2015 The Apache Software Foundation.<br /><a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> altında lisanslıdır.</p>
578 <p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/quickreference.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
579 if (typeof(prettyPrint) !== 'undefined') {
580     prettyPrint();
581 }
582 //--><!]]></script>
583 </body></html>