php Safe Mod'un Açılması

Server Güvenliği ve Optimizasyonu

php Safe Mod'un Açılması

İleti Curtis 02.11.2005, 22:26

Benim düşüncem bir ana serverda mutlaka safe mod açık olmalıdır sizi php ile kullanabilecek shell fonksiyonlarından korumaktadır ve en önemlileri dosyaların sahiplerini kontrol etmektedir sizin home klasörünüzdeki bir dosya aracılı ile başka birinin home klasöründeki bir dosyaya ulaşaamzsınız yada eylem yapamazsınız

safe_mod tarafından kısıtlama getirilen fonksiyonların listesi

http://us4.php.net/manual/en/features.s ... ctions.php

sıra geldi kapatmaya adımlara geçelim

evet başlıyalım önce phpinfo dosyası oluşturucaz bir text editörü açın örnek notepad

içine bu php kodunu yazın



Kod: Tümünü seç
<?php
phpinfo();
?>


adını phpinfo.php olarak kaydedin ve sitenizze upload edin

ve tarayıcınızdan istetin
http://www.siteniz.com/phpinfo.php diye
ve şöle bir ekran gelicek karşınıza

http://members.lycos.co.uk/anlatim/res/shell2.jpg

burada 6 satır aşağı baktığınız zaman php.ini nin yolu gösteriliyor

Configuration File (php.ini) Path /usr/local/Zend/etc/php.ini

diyerekten

şimdi serverımıza root yetkisi ile giriş yapıyoruz
daha sonra

Kod: Tümünü seç
pico /usr/local/Zend/etc/php.ini


yazarak php konfigurasyon dosyamızı açıyoruz
açılan sayfada ctrl+w tuşlarına basıyoruz altta search yazan kısım çıktı oraya

safe_mod
yazıyoruz ve resimde yanında Off yazan ekran yanına geldi

http://members.lycos.co.uk/anlatim/res/safemod1.jpg

bu Off yazan kısımı On yazıcak şekilde değiştiriyoruz ve görünümü

http://members.lycos.co.uk/anlatim/res/safemod2.jpg

oluyor sonra ctrl+x e basıp çıkıyoruz httpd daemonuna restart atıcaz

konsoldan şu komutu yazıyoruz



Kod: Tümünü seç
/etc/init.d/httpd restart
ve doğru bir şekilde editledi iseniz sorunsuz başlayacaktır şekildeki gibi

http://members.lycos.co.uk/anlatim/res/shell5.jpg

şimdi bazı sitelerdeki kalitesiz scriptlerle sorun yaşayabilrisiniz size geldiler safe_mod yüzünden scriptim çalışmıyor dediler napıcaksınız httpd.conf ta yani apache nin konfigurasyon dosyasında php safe_modu tüm server da kapatmayıp sadece sorun yaşayan sitelerde kapatıcaksınız şimdi onu anlatıcam daha önce anlattığım disable_functions kısmı safe moddan tamamen bağımsız açık olsada kapalı olsada safe_mod onlar geçerli hala kapatsanız bile 1. dereceden korumamız var şimdi site tabanlı nasıl kapatacağımızı anlatayım


Kod: Tümünü seç
locate httpd.conf
komutu ile httpd.conf dosyamızın nerede olduğunu buluyoruz

/etc/httpd.old/conf/httpd.conf
/root/installd/buildapache/httpd.conf.tmpeditlib
/usr/share/redhat-config-httpd/httpd.conf.xsl
/usr/local/apache/conf/httpd.conf.default
/usr/local/apache/conf/httpd.conf
/usr/local/apache/conf/httpd.conf.bak
/usr/local/apache/conf/httpd.conf.tmpeditlib
/usr/local/apache/conf/httpd.conf-
/usr/local/apache/conf/httpd.conf,v
/usr/local/apache/conf/httpd.conf_yedek
/usr/local/apache/conf/httpd.conf-mod_sec
/usr/local/apache/conf/httpd.conf.bak2
/usr/local/apache/conf/httpd.conf.save
/usr/local/apache/conf/httpd.conf.yedek
/usr/src/mod_security-1.8.6/httpd.conf.regression-v1
/usr/src/mod_security-1.8.6/httpd.conf.regression-v2
/usr/src/mod_security-1.8.6/httpd.conf.example-minimal
/home/cpapachebuild/buildapache/httpd.conf.tmpeditlib


yani burada

/usr/local/apache/conf/httpd.conf
şimdi editorumuzle bu dosyayı açalım

Kod: Tümünü seç
pico /usr/local/apache/conf/httpd.conf

şimdi ctrl+v tuşlarına basarak dosyanın en altına iniyoruz orda

orda şöyle kısımlar gördünüz

Kod: Tümünü seç
<VirtualHost 127.0.0.1>
ServerAlias www.localhost.com localhost.com
ServerAdmin webmaster@localhost
DocumentRoot /home/localhost/public_html
BytesLog domlogs/localhost-bytes_log
<IfModule mod_userdir.c>
UserDir disabled
UserDir enabled localhost
</IfModule>
<IfModule mod_php4.c>
php_admin_value open_basedir "/home/localhost/:/usr/lib/php:/usr/local/lib/php:/t$
</IfModule>
ServerName www.localhost
User heroyun
Group heroyun
CustomLog domlogs/localhost.com combined
ScriptAlias /cgi-bin/ /home/localhost/public_html/cgi-bin/
</VirtualHost>

doğru yerdesiniz şi,mdi burada naısl bu site için server tabanlı php safe_modun kapatılacağını göstericeğim


bunu ekliyeceğiz şimdi

php_admin_flag safe_mode Off
eğer bu çalışmazsa bunuda ekliyebiliriz dikkat edin 2 sini bir anda eklemeyin
php_admin_flag safe_mode 0



Kod: Tümünü seç
<VirtualHost 127.0.0.1>
ServerAlias www.localhost.com localhost.com
ServerAdmin webmaster@localhost
DocumentRoot /home/localhost/public_html
php_admin_value safe_mode 0
BytesLog domlogs/localhost-bytes_log
<IfModule mod_userdir.c>
UserDir disabled
UserDir enabled localhost
</IfModule>
<IfModule mod_php4.c>
php_admin_value open_basedir "/home/localhost/:/usr/lib/php:/usr/local/lib/php:/t$
</IfModule>
ServerName www.localhost
User heroyun
Group heroyun
CustomLog domlogs/localhost.com combined
ScriptAlias /cgi-bin/ /home/localhost/public_html/cgi-bin/
</VirtualHost>




DocumentRoot /home/localhost/public_html kısımı ile BytesLog domlogs/localhost-bytes_log kısmı arasına ekliyoruz php_admin_value safe_mode 0 değerimizi


bunu yapıp gene
Kod: Tümünü seç
/etc/init.d/httpd restart
httpd ye restart atıyoruz oğru bir şekilde editledi iseniz sorunsuz başlayacaktır şekildeki gibi

http://members.lycos.co.uk/anlatim/res/shell5.jpg

Bu Kadar...
Kullanıcı avatarı
Curtis
Üye
Üye
 
İleti: 686
Kayıt: 06.10.2005, 06:22
Konum: İstanbul

Cvp: php Safe Mod'un Açılması

İleti supremacym 14.05.2006, 17:31

Bu yazdığız kodları nereye giriyoruz? Php de yeniyim de. CuteFTp de falan yazacağız bu kodları? Ayrıca root olarak girmek ne demek?
supremacym
Üye
Üye
 
İleti: 3
Kayıt: 14.05.2006, 17:23

İleti

ALEXIS
14.05.2006, 21:00

Bu soruları sorduğuna göre bu konu sana pek uygun değil. Bunun için unix bir server'a sahip olman ve yetkilerin olması lazım.
Kullanıcı avatarı
ALEXIS
Site Yöneticisi
Site Yöneticisi
 
İleti: 2563
Kayıt: 30.06.2005, 09:08

Cvp: php Safe Mod'un Açılması

İleti supremacym 14.05.2006, 21:28

Host linux zaten. Bunun host firması mı yapmalı, yetki dediğin bu mu?
supremacym
Üye
Üye
 
İleti: 3
Kayıt: 14.05.2006, 17:23

İleti yigini 14.05.2006, 21:33

evet root yetkisi demek makinayı yöneten kişinin sahip olduğu yetkiler demek. safe mode güvenlik için açılmıştır. Bunun için hostuna yazmalısın. Tek senin için bu işi yapmayabilirler.
Kullanıcı avatarı
yigini
Üye
Üye
 
İleti: 661
Kayıt: 05.10.2005, 16:25

İleti supremacym 14.05.2006, 21:43

O zaman web siteme e-ticaret uygulaması kuramayacağım. Bunun bir yolu vardır herhalde.
supremacym
Üye
Üye
 
İleti: 3
Kayıt: 14.05.2006, 17:23

İleti yigini 14.05.2006, 21:46

kullandığınız scripte ait destek sitesine danışın safe mod eklentileri vs olabilir.
Kullanıcı avatarı
yigini
Üye
Üye
 
İleti: 661
Kayıt: 05.10.2005, 16:25

Cvp: php Safe Mod'un Açılması

İleti burnetwork 22.05.2006, 15:52

pico /usr/local/Zend/etc/php.ini

benim serverım var..
nereye yazcaz bunu yani whmden nereye gircez?
[hr]
yardım :(
burnetwork
Üye
Üye
 
İleti: 2
Kayıt: 02.12.2005, 17:31

İleti

ALEXIS
22.05.2006, 17:45

shell kullanacaksın eğer sana ait bir makina varsa, WHM yetmez.
Kullanıcı avatarı
ALEXIS
Site Yöneticisi
Site Yöneticisi
 
İleti: 2563
Kayıt: 30.06.2005, 09:08

Cvp: php Safe Mod'un Açılması

İleti umutek 01.08.2006, 19:59

Bunu Byethost ta yapabilirmiyiz.Böyle bir iznimiz var mı ? php.ini den upload limitini ayarlamak istiyorum şuan 2mb..
umutek
Üye
Üye
 
İleti: 10
Kayıt: 10.03.2006, 21:27


Server Güvenliği ve Optimizasyonu



Kimler çevrimiçi

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 0 misafir

cron