Почему разрешения по умолчанию для /media/username root:root?
Я подправил разрешения на /media/username
от root:root
в username:root
[1]. Я понимаю, что ориентированное на пользователя расположение допускает ориентированные на пользователя разрешения [2].
Но почему были разрешения для этой папки root:root
на первом месте?
[1] Так что я могу смонтировать там зашифрованные папки с помощью Gnome EncFS Manager. Например, теперь я могу смонтировать зашифрованную папку как /media/username/personal-documents
,
[2] Из чего Ubuntu переместил точки монтирования по умолчанию?:
Основная причина этого изменения поведения по умолчанию в udisks2 кажется ясной: безопасность. Безопаснее ограничить доступ к файловой системе одному конкретному пользователю, а не предоставлять доступ к нему всем пользователям системы.
3 ответа
В моем случае так все выглядит /media
:
$ ls -l /media | grep $USER
drwxr-x---+ 3 root root 4096 Jan 22 15:59 oli
В основном это означает, что только пользователь root может взаимодействовать с каталогом. Это очень важно для безопасности (безусловно, мешает другим пользователям видеть, не говоря уже о краже / удалении / изменении данных), но на этом история не заканчивается.
Вы можете заметить знак плюс в конце маски разрешения. Это означает, что ACL (Access Control List) используется. Это позволяет получить гораздо более детальные разрешения.
$ getfacl /media/$USER
getfacl: Removing leading '/' from absolute path names
# file: media/oli
# owner: root
# group: root
user::rwx
user:oli:r-x
group::---
mask::r-x
other::---
Это через ACL, где мой пользователь может просматривать содержимое /media/oli
, Мне все еще не разрешено редактировать содержимое.
В современных настольных компьютерах (как Gnome, так и KDE) выполняется монтирование. udisks2
:
root 2882 0.3 0.0 195956 4048 ? Sl Jan16 30:35 /usr/lib/udisks/udisks-daemon
root 2887 0.0 0.0 47844 784 ? S Jan16 0:00 udisks-daemon: not polling any devices
root 3386 0.0 0.0 429148 6980 ? Sl Jan16 7:35 /usr/lib/udisks2/udisksd --no-debug
Как вы можете видеть, он работает там как root, поэтому, когда кто-то обращается к нему через DBUS, он может создавать точки монтирования в /home/$USER и размещать их для вашего пользователя, чтобы они могли редактировать содержимое.
Ничто из этого не меняет того, что я сказал изначально. Я просто объясняю, как это работает на практике. Это то, как что-то на вашем рабочем столе в действительности разрешено писать куда-то, что разрешено только пользователю root, и как вашему пользователю разрешено читать это, несмотря на иное ограничение владения.
Все это превращает его в среду, защищенную для данных пользователя, но в то же время затрудняющую вмешательство пользователя в структуру монтирования. Они не могут, например, удалить точку монтирования или переименовать ее, что может вызвать проблемы, если у них нет корневого доступа.
Изменить: Что-то, что только что пришло мне в голову, это то, что это также дает администратору хорошее место для монтирования вещей для одного пользователя. Разрешения по умолчанию помогают сохранить это монтирование частным и защитить его от вмешательства пользователя. Похоже, довольно вменяемый по умолчанию для чего-то, что сделано без /media/$user/
каталог, потребуются права доступа root.
Я согласен с другим ответом и комментариями в дополнение к этому
root:root
избегать в основном двух ситуаций.
1. Риск безопасности: хакерский скрипт, который сбрасывает /dev/zero в / media / user /, который заполняет корневой раздел и, следовательно, не может войти в систему или имеет плохую производительность.
2. Конфликт с udisk2: предположим, что раздел с резервной копией метки. Udisks смонтировать его @ /media/user/backup . Пользователь вручную создал вышеуказанный каталог, который заставит udisk изменить точку монтирования на что-то вроде /media/user/backup1 и, таким образом, будет введено в заблуждение сценариями резервного копирования и т. д.
Менталитет Linux (и *nix) в целом основан на принципе Least amount of necessary privileges.
Обычно современный Desktop Environments
будет монтировать ваши устройства под /media/username/devicepartitionname
, Это означает, что для того, чтобы устройство могло использоваться, вам нужно только владеть devicepartitionname
папка и все, что ниже. Это означает, что ваша папка /media/username
все еще может принадлежать root
и это сделало бы его более безопасным.
Также установка чего-либо на /media/username
это плохая идея, так как это сделает ваш DE
попробуйте смонтировать раздел в папку на другом смонтированном разделе, что может привести к большому количеству !! FUN!! (также возможна потеря данных).