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/directorybir işlemden 777 gibi izinler alabilen bazı dosya ve dizinleri olan bir dizininiz varsa , izin bitlerini /home/user/directory700 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/user750'ye ayarlıyorum , bu yüzden sadece ev dizinimde okuyabilir, yazabilir ve inebilirim. Bunun bir sonucu olarak, benzeri klasörlere /home/user/Publicbaş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, umaskiş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 755ve 644kod duyarlı ise, herkes okuyabilir, webapps için oldukça tehlikelidir.