WEB TASARIM FAYDALI BİLGİLER

CHMOD Nedir ? Nasıl Değiştirilir ?

CHMOD Nedir ?

Eğer web sunucunuz Unix/Linux işletim sisteminin bazı özelliklerini çalıştırmanıza izin veriyorsa ve bunlardan birisi de CGI/PHP Scriptleri çalıştırabilmek ise mutlaka CHMOD ayarlarının nasıl yapıldığını bilmeniz gerekmektedir.

Linux son yıllarda, maliyeti, kullanım kolaylığı, hızı, her yönüyle popüler olan işletim sistemidir ve Unix'in bir parçası sayılabilir.

Öncelikle şunu belirtmek gerekir, bilinen Windows sistemlerinden sonra Unix sistemi oldukça farklıdır. Benzer görünüşler(profiller) de yer almaktadır. Her kullanıcı bazı özellikleri kullanabilmek için izin almak zorundadır.

Kısaca basit bir scripti kullanmak için kullandığınız sunucunun sistemi Unix veya Linux olsa da sunucunun idarecisinden sizin dosyalarınızın yapısına göre gerekli dosya sınıflarının kullanma hakkınızın önceden anlaştığınız firma tarafından açılmış olması gerekir. Yoksa dosyalarınızı gerektiği gibi kullanamazsınız. Çalıştırma hakkınız var ise tipik scriptleri rahatça çalıştırabilirsiniz ve çalıştırırken CHMOD'unu genellikle 755 yapmalısınız. (-rwxr-xr-x)

Genellikle diyoruz çünkü; aksi bir değişiklik hali var ise mutlaka kullanacağınız dosyanın bir readme.txt, benioku.txt ya da bir DOCS klasöründe yapmanızı istedikleri tüm değişiklikleri size önceden bildirirler. Buna da dikkat etmeniz gerekmektedir. Mutlaka kullanmadan önce çalıştıracağınız dosyaların varsa açıklama yazılarını inceleyin. Yoksa hem kendi site alanınıza, ayarlarına hem de sunucunuzun ayarlarına olumsuz etkiler yapmanız mümkün olabilir.

Chmod'un anlamı aslında yol, biçim değiştirmektir. Böylece klasör ya da dosyaya işlerlik kazandırılmış olunmaktadır. Bu özellik (CHMOD) o dosyaya çeşitli ayrıcalıklar sağlar.

Nasıl CHMOD değiştirilir veya kurulur?

Bu işlemi yapabilmeniz için size bir  FTP (dosya transfer protokolü) programı gereklidir ve en basit yollardan biri FTP programı ile CHMOD ayarı yapmaktır.

FTP programı önerilerimiz ise; Sıkça kullanılan
* FTPVoyager (http://www.ftpvoyager.com)
* CuteFtp CuteFtp
* LeapFTP (http://www.leapware.com)
* FileZilla (http://sourceforge.net/projects/filezilla/)
* Mozilla Firefox kullanacaksanız FireFTP (https://addons.mozilla.org/firefox/684/)

FTP programları kullanım kolaylıklarıyla oldukça cazip olan programlardır.

Yapmanız Gereken İşlemler :
Önce çalıştırmak istediğiniz Php script dosyalarınızı ister FTP programınızla ister diğer bildiğiniz yollarla sitenize atıp, FTP programınızla sitenize bağlandıktan sonra CHMOd unu değiştirmeniz gereken dosyayı seçerek farenizin sağ tuşuna tıklayınız. Bir pencere açılacak ve burada bazı özellikler yer alacaktır. (Yeni klasör oluşturma, doğal özellik değiştirme, isim değiştirme, silme gibi.).

Bu pencere CHMOD veya Özellik Değiştirme ("Change File Attributes") gibi programa göre değişen terimlerle dosya erişim haklarını ayarlayabileceğiniz bir basamak görürsünüz. Farenizin sol tuşu ile bir kere basarak seçeceğiniz CHMOD ayar kısmı için ayrı bir pencere veya ekran açılır. Burada 9 farklı kontrol kutusu ve 1 tane de yazı kutusu yer almaktadır. İsteğinize göre ister yazı kutusuna dosyaya vereceğiniz CHMOD değerini direkt olarak yazabilir veya kutucuklardan teker teker seçerek chmod değerini değiştirerek dosyanın özelliklerini değiştirebilirsiniz. (Genelde bu ayar php dosyalarınız için 755 tir.)

User/Owner  : Read , Write , Execute
Group             : Read , Write , Execute
World             : Read , Write , Execute

Read : Okuma , Write : Yazma , Execute : Çalıştırma demektir.

Bu işlemi yaptıktan sonra "Tamam" veya "Ok" butonuna tıklayınız. Bu işlemden sonra da FTP programınızın seçtiğiniz özellikleri dosyaya uyguladığını gösteren otomatik çalışan kısmın bitmesinin ardından dosyanızın CHMOD unu değiştirmiş olacaksınız. Bu işlemden sonra scriptiniz web üzerinde çalışır duruma gelecektir. Yani CHMOD değişmiş olacaktır.

Php ile alakalı bazı dosya veya klasörlerin bu CHMOD ayarının 666 ya da 777 olması istenir, bu değişikliklerin yapılmaması halinde yine normal olarak dosyanız gerektiği gibi çalışmayacaktır.

Örnek : Php-Nuke için verecek olursak ana dizindeki config.php dosyası CHMOD ayarı (666) olmalıdır ki sizin sitenizde yapacağınız tüm değişiklikleri algılayıp dosyayı gerektiği (sizin yaptığınız değişikliği) gibi çalıştırabilsin.

İpucu : İşaretleme İşlemleriyle Tek Tek Uğraşmak İstemiyorsanız, İşaretleme Yaptığınız Kutucukların yanında Permission Kutucuğuna Aşağıdaki Numaraları Yazabilirsiniz.

Klasörlere Yazılma Özelliği Vermek İçin : 777 ChMod Değer Uygulamalısınız.
Klasörlerin Yazılma Özelliğini Kaldırmak İçin : 755 ChMod Değer Uygulamalısınız.

Dosyalara Yazılma Özelliği Vermek İçin : 666 ChMod Değer Uygulamalısınız.
Dosyaların Yazılma Özelliğini Kaldırmak İçin : 644 ChMod Değer Uygulamalısınız.

NacarWEB.COM Eklemeleri :
NOT : CHMOD ayarlamada yapacağınız yanlış yetkilendirmeler ve oluşabilecek olumsuz sorumluluk işlemi yapan kişiye aittir. Bu sayfa sadece  bilmeyenleri bilgilendirmek amacıyla oluşturulmuştur.
Tavsiyemiz : Scriptlerinizin ayarlarının yapıldığı, veritabanı adı, kullanıcı şifresi gibi bilgilerinizin bulunduğu (config.php, settings.php gibi) dosyalarınızın CHMOD ayarlarını değiştirip, işinizi hallettikten sonra kullandığınız scriptin çalışma özelliğine göre bu dosyanın özelliğinin tekrar 644 yani sadece okuma haline getirmenizi tavsiye ederiz. Eğer scriptiniz ayar dosyasının CHMOD u 777 olarak çalışacak şekilde ayarlı olması gerekiyorsa, scripti yazan kişi ile irtibata geçiniz ve bu özelliğin tehlikeli sonuçlar doğurabileceğini hatırlatın. Çünkü dosyalarınızın ve hosting hizmetinizin güvenliği gereği kişisel bilgilerinize dışarıdan erişilememesi gerekir.
Örneğin : Joomla, Forum gibi bir uygulamada config/settings dosyanızı 777 CHMOD da bıraktığınızda forumunuz/scriptiniz veya siteniz daha kolay ele geçirilebilir, kötü amaçlı kişilerce kullanılabilir.

Kaynak : Murat Kuzu

Bu konuda ve her konuda sorularınız için bize yazabilirsiniz.