Dizin başına umask ayarlayamazsınız, bu işlem düzeyinde bir değerdir. Başkalarının bir dizindeki dosyaları okumasını önlemeniz gerekirse, ilgili izin bitlerini iptal edin.
Örneğin, /home/user/directory
bir işlemden 777 gibi izinler alabilen bazı dosya ve dizinleri olan bir dizininiz varsa , izin bitlerini /home/user/directory
700 gibi bir şeye ayarlayın. Bu, diğer kullanıcıların (süper kullanıcı kökü hariç) inmesini imkansız hale getirir içinde /home/user/directory
.
Paranoyak oluyorum ve izinleri /home/user
750'ye ayarlıyorum , bu yüzden sadece ev dizinimde okuyabilir, yazabilir ve inebilirim. Bunun bir sonucu olarak, benzeri klasörlere /home/user/Public
başkaları tarafından erişilemiyor, ancak bununla yaşayabilirim.
Sorunuzun güncellemesi başına: Yine de, dosya sisteminde (şiddetle tavsiye edilen FAT gibi farklı bir dosya sistemi kullanmak dışında) web uygulamanızda bunu yapmanız gerektiğini kontrol edemezsiniz. Webapp'iniz PHP ile kodlanmışsa, umask
işlevi kullanarak anında umask'ı değiştirebilirsiniz :
<?php
umask(0022);
// other code
?>
Bunu, veritabanı bağlantı şifresini içeren dosya gibi (Wordpress gibi uygulamalarda düşünerek) bir yapılandırma dosyasına koyabilirsiniz.
Bunun bir işlem değeri olduğunu unutmayın, bazı web sunucuları yapılandırma dosyalarında ayarlamanıza izin verir, aksi takdirde başlangıç kodlarını istediğiniz umask'ı ayarlayacak şekilde değiştirebilirsiniz. İzinleri gibi unutmayın 755
ve 644
kod duyarlı ise, herkes okuyabilir, webapps için oldukça tehlikelidir.