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

5

В 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: невозможно открыть каталог / носитель: Permission denied

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

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

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

    
задан Perseids 10.09.2012 в 20:50
источник

1 ответ

5

Доступ к /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,

Описание синтаксиса можно найти здесь: Ссылка

Насколько мне известно, это разрешает гостевой сессии доступ к /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
    
ответ дан Perseids 18.09.2012 в 20:36
источник