Pourquoi les autorisations par défaut pour / media / username root: root?

20

J'ai modifié les autorisations /media/usernamede root:rootà username:root[1]. Je comprends qu'un emplacement centré sur l'utilisateur autorise des autorisations centrées sur l'utilisateur [2].

Mais pourquoi les autorisations pour ce dossier étaient-elles root:rooten premier lieu?


[1] Pour que je puisse y monter des dossiers chiffrés avec Gnome EncFS Manager. Par exemple, je peux maintenant monter un dossier crypté en tant que /media/username/personal-documents.

[2] De Pourquoi Ubuntu a-t-il déplacé les points de montage par défaut? :

La cause première de ce changement de comportement par défaut dans udisks2 semble claire: la sécurité. Il est plus sûr de restreindre l'accès à un système de fichiers à un utilisateur particulier au lieu de lui donner accès à tous les utilisateurs du système.

david.libremone
la source
Le montage implique généralement un accès root. Vous pouvez (comme vous l'avez fait) modifier les autorisations. Cependant, cela ne peut en aucun cas devenir un comportement "par défaut" sous Linux. Imaginez ce qui se passera si un utilisateur (pas un administrateur) a la possibilité de monter comme vous l'avez fait. Ce sera un chaos total. :)
rbaleksandar

Réponses:

20

Dans mon cas, voici à quoi les choses ressemblent /media:

$ ls -l /media | grep $USER
drwxr-x---+  3 root root 4096 Jan 22 15:59 oli

Fondamentalement, cela signifie que seul un utilisateur root peut interagir avec l'annuaire. C'est excellent pour la sécurité (empêche certainement les autres utilisateurs de voir, sans parler de voler / supprimer / modifier des données), mais ce n'est pas là que l'histoire se termine.

Vous remarquerez peut-être le signe plus à la fin du masque d'autorisation. Cela signifie qu'une ACL (Access Control List) est en cours d'utilisation. Cela permet des autorisations beaucoup plus granulaires.

$ 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::---

C'est via ACL où mon utilisateur est autorisé à afficher le contenu de /media/oli. Je ne suis toujours pas autorisé à modifier le contenu.

La chose qui fait le montage dans les ordinateurs de bureau modernes (Gnome et KDE) est 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

Comme vous pouvez le voir, il y fonctionne en tant que root, donc quand quelque chose y accède via DBUS, il est capable de créer les points de montage dans / home / $ USER et de les montrer à votre utilisateur afin qu'il puisse éditer le contenu.

Rien de tout cela ne change ce que j'ai dit à l'origine. J'explique simplement comment cela fonctionne dans la pratique. C'est ainsi que quelque chose sur votre bureau est en effet autorisé à écrire quelque part qui n'est autorisé que par root, et comment votre utilisateur est autorisé à le lire malgré une propriété autrement restrictive.

Tout cela le transforme en un environnement sécurisé pour les données de l'utilisateur, mais qui rend également difficile pour l'utilisateur de se mêler du tissu de la monture. Ils ne peuvent pas, par exemple, supprimer le point de montage ou le renommer, ce qui pourrait provoquer des problèmes, sauf s'ils ont un accès root.

Edit : quelque chose qui m'est venu à l'esprit est que cela donne également à un administrateur un bon endroit pour monter des choses pour un seul utilisateur. Les autorisations par défaut aident à garder ce montage privé et à le protéger contre l'ingérence de l'utilisateur. Cela semble être un défaut assez sain pour quelque chose qui se fait sans le /media/$user/répertoire, aurait besoin des autorisations root.

Oli
la source
2

J'accepte les autres réponses et commentaires en plus de cela

root:rootpour éviter principalement deux situations.
1. Risque de sécurité: Un script pirate qui vide / dev / zero vers / media / user / qui remplit la partition racine et donc incapable de se connecter ou de mauvaises performances.
2. Conflit avec udisk2: supposez une partition avec une sauvegarde d' étiquette . Les Udisks le montent @ / media / user / backup. l'utilisateur a créé manuellement le répertoire ci-dessus, ce qui forcera l'udisk à changer le point de montage en quelque chose comme / media / user / backup1 et donc induit en erreur par les scripts de sauvegarde, etc.

Prinz
la source
2

La mentalité Linux (et * nix) en général est basée sur le principe de Least amount of necessary privileges.

Habituellement, moderne Desktop Environmentsmontera vos appareils sous /media/username/devicepartitionname. Cela signifie que pour que l'appareil soit utilisable, il vous suffit de posséder le devicepartitionnamedossier et tout ce qui se trouve en dessous. Cela signifie que votre dossier /media/usernamepourrait encore appartenir à root, et cela le rendrait plus sécurisé.

Monter quoi que ce soit /media/usernameest également une mauvaise idée, car cela vous fera DEessayer de monter une partition dans un dossier sur une autre partition montée, ce qui peut entraîner beaucoup de plaisir !! (également perte probable de données).

Wolfer
la source
merci pour une réponse simple mais pas simpliste ... J'ai précisé ci-dessus que GnomeEncFS ne monte /media/username/someplacepas /media/username... vous dites spécifiquement qu'il devrait appartenir à root, ce serait root:usernamemieux que username:rootdans mon cas? ou introduisent-ils tous deux le même problème de sécurité? (voir cette question pour savoir pourquoi je dois le faire de toute façon askubuntu.com/questions/392063/… )
david.libremone
@ d3vid: Cela dépend, dans le second cas, si vous n'avez pas modifié l'autorisation par défaut, votre utilisateur normal ne pourrait pas écrire /media/user(car c'est 750), ce qui est un peu mieux que le premier. En ce qui concerne le montage: historiquement, le /mntet ses sous-dossiers sont considérés comme le point de montage par défaut pour quoi que ce soit, le /median'a été ajouté que pour que les personnes qui souhaitent simplement utiliser une boîte Linux sans vraiment comprendre comment les choses fonctionnent ne soient pas confondues par tous les dossiers étranges et ainsi de suite /.
Wolfer
@ d3vid: En ce qui concerne le problème de sécurité: c'est parce que les dossiers auxquels vous avez accès en écriture et exécutez l'accès peuvent être utilisés par un pirate / pirate / tout ce que vous voulez l'appeler pour télécharger des fichiers binaires qu'ils peuvent ensuite utiliser pour rootaccéder à votre boîte. (C'est ce qu'on appelle l'escalade de privilèges.) Bien que vous ne devriez pas rendre votre système délibérément plus dangereux, il existe des emplacements par défaut qui permettent la même chose (et sont plus obscurs et en tant que tels, il est moins probable que l'activité des pirates soit trouvée). Ainsi, le "problème de sécurité" dans ce cas peut être ignoré en fonction de votre configuration.
Wolfer
1
@Wolfer - Je suis revenu à une version de votre réponse qui ne contenait pas de langage jugé offensant. Essayons de garder les questions et réponses aussi propres que possible et de ne causer aucune infraction. Merci.
fossfreedom