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ıeka
olacak ş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_html
dizininde 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:
-
755
dizinler için genelde yeterlidir, dosyalar için644
kullanılabilir. -
777
kullanmaktan 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
,apache
veyanginx
olur, 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.