Web sunucularında dosya ve klasör izinlerini doğru ayarlamak, hem güvenlik hem de sistemin doğru çalışması açısından büyük önem taşır. Linux ortamlarında chmod ile dosya/klasör izinleri, chown ile dosya/klasör sahipliği değiştirilebilir. Aşağıda, bu komutların kullanım amacını ve ne yaptıklarını detaylı olarak ele alıyoruz.
1. Klasör İzinlerini Ayarlama (chmod)
sudo chmod -R 0755 uploads2
Açıklama:
-
chmod: Dosya veya klasöre izin atamak için kullanılır. -
-R: Recursive (alt klasörler ve içindeki tüm dosyalar dahil) olarak uygular. -
0755:-
Sahip (owner): okuma, yazma, çalıştırma (7)
-
Grup: okuma, çalıştırma (5)
-
Diğer: okuma, çalıştırma (5)
-
Kullanım Amacı: Web sunucusunun dosyaları okuyup çalıştırabilmesini, ancak sistem dışındaki kişilerin değişiklik yapmamasını sağlar.
2. Dosya Sahipliğini Değiştirme (chown)
sudo chown -R eka:eka uploads2
Açıklama:
-
chown: Sahipliği değiştirir. -
-R: Alt dizinleriyle birlikte uygular. -
eka:eka: Kullanıcı adıeka, grup adıekaolacak şekilde değiştirir. -
uploads2: Sahipliği değiştirilecek klasör.
Kullanım Amacı: Laravel veya PHP uygulamalarının dosyaları yazabilmesi için doğru kullanıcıya ait olması gerekir.
3. Web Root Dizinine Sahiplik Atamak
sudo chown -R eka:eka /home/eka/public_html
Açıklama:
Bu komut, /home/eka/public_html dizinindeki tüm dosya ve klasörlerin sahipliğini eka kullanıcısına ve eka grubuna verir.
Kullanım Amacı:
-
Hosting veya VPS ortamlarda, her kullanıcıya ait
public_htmldizininde sadece o kullanıcının yazma yetkisi olması beklenir. -
Web sunucusunun (Apache, Nginx vb.) bu dizine erişebilmesi ama izinsiz yazamaması istenir.
Önemli Notlar:
-
755dizinler için genelde yeterlidir, dosyalar için644kullanılabilir. -
777kullanmaktan kaçınılmalı, bu tüm kullanıcılara tam yetki verir ve güvenlik riski taşır. -
Apache/Nginx sistem kullanıcısı genellikle
www-data,apacheveyanginxolur, ihtiyaca göre grup izinleri de ayarlanmalıdır.
Linux'ta chmod ve chown komutları, sunucu dosya yapınızın düzenli ve güvenli şekilde yönetilmesi için temel aracıdır. Web uygulamalarının doğru çalışması için bu izinlerin uygun şekilde ayarlanması şarttır.