Дать пользователю2 разрешение только на чтение подкаталога пользователя1 [duplicate]

Вы используете меньше 424. Я установил меньше 418 (я не смог найти меньше 424), и действительно, эта функция недоступна в этой версии. меньше 418 это с 2008 года!

Единственное, что вы можете сделать, - это установить его самостоятельно или убедить системного администратора, что более новая версия less не представляет угрозы для стабильности их серверов. Ваш системный администратор может по-прежнему отказываться от установки более новой версии less, поскольку, вероятно, установлена ​​версия less, которая поставляется с диспетчером пакетов.

На моем сервере я использую Scientific Linux 6.8, а здесь установлено меньше 436, что тоже довольно старое, но оператор & работает.

1
11.07.2016, 04:16
1 ответ

Предполагая, что у вас есть root-доступ, а у user2 нет, вы можете настроить его с классическими разрешениями UNIX в следующим образом. Вы создаете группу для этой схемы доступа (вероятно, поместите в нее и user1, и user2, хотя для контроля доступа вам нужен только user2), ниже я буду называть ее именем rdlog . После того, как у вас есть группа, следующие команды должны настроить то, что вы хотите:

chgrp rdlog /home/user1 /home/user1/website /home/user1/website/logs
chmod g=x /home/user1 /home/user1/website
chmod -R g=r /home/user1/website/logs

Установив только бит x в правах доступа к каталогам, можно будет использовать только точные ссылки в этих каталогах. Это означает, что любой в rdlog может перечислить или открыть каталог журналов. И с разрешением только на чтение для этого каталога и файлов в нем. Это имеет ряд ограничений.

Во-первых, часть безопасности - это безопасность через неизвестность. Хотя вы не разрешаете перечислять каталог / home / user1 , если там есть файл, на него все равно можно ссылаться, если они угадывают имя (но тогда вступают в силу права доступа к файлу). Так, например, они могут ввести cat /home/user1/.bashrc и определить по полученной ими ошибке (нет такого файла или отказано в разрешении), существует ли этот файл на самом деле.

Второе ограничение заключается в том, что вы можете сделать это только один раз .Если вам нужно предоставить другому пользователю доступ к чему-то еще в вашем домашнем каталоге, вы не сможете сделать тот же трюк, потому что у вас может быть только одна настройка группы.

Вы также можете что-нибудь сделать с ACL. Это поможет избежать ограничений, если вы все сделаете правильно. Тем не менее, вы действительно можете достичь желаемой цели (то есть реального вопроса, который заставил вас задать этот вопрос), переместив каталог, о котором идет речь, в другое место, где вы можете правильно настроить разрешения. Если вам все еще нужно увидеть его, когда вы обращаетесь к ~ / website / logs , вы можете поместить оттуда программную ссылку в новое место.

1
27.01.2020, 23:47

Теги

Похожие вопросы