3

Я ищу возможность ограничить доступ пользователя к его домашнему каталогу и некоторым другим папкам с данными.

/home/user1, /data /media

понять, что это не имеет большого значения, но как я могу запретить, чтобы user1 не мог просматривать другие папки или файлы? например, по умолчанию все пользователи имеют право просматривать почти все каталоги и файлы.

Например, есть ли возможность запретить пользователю user1 видеть свою папку, но не может просматривать /etc, /opt и так далее?

в противном случае он мог бы просматривать конфигурационные файлы, что мы действительно хотим запретить ...

мы попробовали с chroot, но в этом методе он мог видеть только свою домашнюю папку ...

Большое спасибо

3 ответа3

1

Я думаю, что использование chroot - лучший выбор. Используйте команду mount --bind /source /home /user /dir для создания "дерева" каталогов, к которым пользователь может получить доступ из тюрьмы chroot.

Альтернативой было бы запретить пользовательские разрешения другим частям системы, используя chmod и chown, но это может привести к другим побочным эффектам, и вполне вероятно, что вы что-то пропустите.

0

Права доступа к папке по умолчанию - 755 (читаемые и исполняемые / доступные для других).

Вы можете изменить разрешения по умолчанию для всех папок, отредактировав файл /etc/adduser.conf -

Найдите строку:DIR_MODE = 0755

Чтобы заблокировать других, измените его на:DIR_MODE = 0750

Чтобы также заблокировать людей в той же группе (см. Ls -l /home), измените его на:DIR_MODE = 0700 Изменения вступят в силу при создании нового пользователя.

Вы можете изменить права доступа к файлам / папкам по умолчанию (т. Е. При создании нового файла) для определенной папки, используя следующие команды:

chmod g+s /folder /mypath #set sticky bit

setfacl -d -mg ::rwx /folder /mypath #set для группы по умолчанию rwx

setfacl -d -mo ::000 /folder /mypath #set другие разрешения соответственно

Чтобы проверить изменение:

getfacl /folder /mypath

это для определенных папок

0

Вы можете использовать систему контроля доступа (ACL), которая позволяет получить более детальные разрешения. Соответствующие команды - setfacl и getfacl .

Поскольку вы не указали свой дистрибутив, вот несколько ссылок о ACL в Debian и в RHEL/CentOS.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .