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

Я хочу, чтобы "гостевой" пользователь мог только читать файлы на моем жестком диске (смонтирован во время запуска в /mnt/blahblahblah) . Однако я не хочу, чтобы они что-либо записывали в него. Я нахожусь на Xubuntu 16.04. Как мне это сделать?

1 ответ

Решение

Гостевые сеансы блокируются с помощью AppArmor, который использует длинный список специальных разрешений, чтобы гостевые пользователи не касались чего-либо. К ним обращаются из etc/apparmor.d/lightdm-guest-session,

На моей машине этот файл выглядит так:

# Profile for restricting lightdm guest session

#include <tunables/global>

/usr/lib/lightdm/lightdm-guest-session {
  # Most applications are confined via the main abstraction
  #include <abstractions/lightdm>

  # chromium-browser needs special confinement due to its sandboxing
  #include <abstractions/lightdm_chromium-browser>
}

Открытие этой "основной абстракции" (etc/apparmor.d/abstractions/lightdm) дает что-то более интересное:

...
/ r,
/bin/ rmix,
/bin/fusermount Px,
/bin/** rmix,
/cdrom/ rmix,
/cdrom/** rmix,
/dev/ r,
/dev/** rmw, # audio devices etc.
owner /dev/shm/** rmw,
/etc/ r,
/etc/** rmk,
...

Это все каталоги, к которым может иметь доступ ограниченный сеанс, а также их разрешения. Если вы добавите свой жесткий диск в этот список (с завершающим /** включить все подпапки и r для разрешения на чтение), все будущие гостевые сеансы будут иметь доступ только для чтения.

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