Задача: запретить доступ к файлам пользователя на сервере от чтения другими пользователями. Может пригодиться, если пользователей на сервере несколько, первого взломали и от его имени пытаются просмотреть каталоги других пользователей.
Если нужно изменить права для уже существующих файлов при помощи chmod:
find /catalog -type f -print | xargs chmod 640
В итоге владелец файлов сможет редактировать и читать файлы. Пользователи, входящие в группу владельца, только читать, у посторонних прав вообще не будет.
Подобное проделаем и с каталогами, при этом, установим для пользователей группы права на исполнение, а для владельца на полный доступ:
find /catalog -type d -print | xargs chmod 750
И для вновь создаваемых файлов и папок будем устанавливать те же права. Для этого нужно отредактировать значение umask по-умолчанию. Создайте в корневой папке пользователя файл .bashrc и .profile (или отредактируйте существующий), пропишите в нём строку:
umask 027
P.S. Также может понадобиться добавление пользователя, от имени которого работает веб-сервер, в группу пользователя — владельца файлов. Например, adduser www-data somegroup.