Как получить доступ к смонтированным файловым системам в качестве гостя?

В Ubuntu 11.04 я мог смонтировать файловую систему в / media / foo и запустить chown guest:guest /media/foo/bar -R и иметь полный доступ в гостевой учетной записи. После обновления до 12.04 я изменил свою процедуру, чтобы отразить новые имена гостевых пользователей (chown guest[id]:guest[id] /media/foo/bar -R), но я все еще не могу получить к ней доступ как гостевой пользователь, поскольку у меня нет привилегий доступа к / media как гостю:

ls: невозможно открыть каталог / media: в доступе отказано

(Очень интересно, что это сработает, если я su войду в гостевую учетную запись как root). Я понимаю, что это подразумевается как мера безопасности , но я не вижу, как это делается. ls -l / сообщает

drwxr-xr-x  11 root root  4096 Sep  9 22:28 media

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

5
задан 18 September 2012 в 22:38

1 ответ

Доступ к /media ограничен профилем AppArmor /etc/apparmor.d/lightdm-guest-session. Есть два исключения (строки 31 и 32):

 owner /media/ r,
 owner /media/** rmwlixk,  # we want access to USB sticks and the like

Это разрешает доступ, если /media/foo принадлежит guest [id], что является первой альтернативой для решения моей проблемы. Недостатком является то, что гостевая учетная запись может создавать произвольные каталоги и файлы в корне / media / foo. Я решил явно указать отверстие для /media/foo/bar и добавил строки:

 owner /media/foo/bar rw,

Описание синтаксиса можно найти здесь: http://doc.opensuse.org/documentation/ html / openSUSE / opensuse-security / cha.apparmor.profiles.html

Насколько мне известно, это только позволяет гостевой сессии получить доступ к /media/foo/bar и только если guest [id] является владелец bar. Обратите внимание, что guest [id] все еще не может получить доступ к самому /media/foo. Таким образом ls /media/foo потерпит неудачу, но ls /media/foo/bar работает.

Наконец перезагрузите профиль, чтобы изменения вступили в силу:

 sudo apparmor_parser -r /etc/apparmor.d/lightdm-guest-session
0
ответ дан 18 September 2012 в 22:38

Другие вопросы по тегам:

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