Ordinateur partagé, comment s'organiser ? En partitions ou machines virtuelles?
Fermé
foetus_linux
Messages postés
6
Date d'inscription
vendredi 9 octobre 2020
Statut
Membre
Dernière intervention
2 novembre 2020
-
Modifié le 9 oct. 2020 à 18:42
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 - 4 nov. 2020 à 14:37
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 - 4 nov. 2020 à 14:37
A voir également:
- Ordinateur partagé, comment s'organiser ? En partitions ou machines virtuelles?
- Partage de photos en ligne - Guide
- Comment réinitialiser un ordinateur - Guide
- Ordinateur qui rame - Guide
- Partage d'écran whatsapp ordinateur - Accueil - Messagerie instantanée
- Partage d'abonnement - Accueil - Services en ligne
11 réponses
Bonjour,
Les systèmes linux (tout comme Windows) permettent d'avoir plusieurs utilisateurs. Chaque utilisateur a son dossier personnel avec ses réglages et ses documents et ne peut interférer avec les documents des autres utilisateurs. Seul l'administrateur du système peut ajouter/enlever des logiciels.
Rien à voir avec LVM qui gère dynamiquement les partition d'un système.
Les machines virtuelles demandent des pc assez puissants, je ne pense pas que ce soit une solution viable pour ce que tu veux faire.
Le plus simple dans ton cas : tu prends la distribution linux de ton choix (je t'orienterais plutôt vers Linux Mint ou Ubuntu/Xubuntu qui sont plus accessibles aux débutants)
Tu ajoutes autant d'utilisateurs qu'il y a de membres dans ta famille, chacun aura son nom d'utilisateur et son propre mot de passe pour se connecter à sa session. (Pense aussi au planning d'utilisation du pc pour éviter des conflits)
Par exemple sur Ubuntu :
https://guide.ubuntu-fr.org/desktop/user-add.html
(c'est similaire avec les autres distros)
Les systèmes linux (tout comme Windows) permettent d'avoir plusieurs utilisateurs. Chaque utilisateur a son dossier personnel avec ses réglages et ses documents et ne peut interférer avec les documents des autres utilisateurs. Seul l'administrateur du système peut ajouter/enlever des logiciels.
Rien à voir avec LVM qui gère dynamiquement les partition d'un système.
Les machines virtuelles demandent des pc assez puissants, je ne pense pas que ce soit une solution viable pour ce que tu veux faire.
Le plus simple dans ton cas : tu prends la distribution linux de ton choix (je t'orienterais plutôt vers Linux Mint ou Ubuntu/Xubuntu qui sont plus accessibles aux débutants)
Tu ajoutes autant d'utilisateurs qu'il y a de membres dans ta famille, chacun aura son nom d'utilisateur et son propre mot de passe pour se connecter à sa session. (Pense aussi au planning d'utilisation du pc pour éviter des conflits)
Par exemple sur Ubuntu :
https://guide.ubuntu-fr.org/desktop/user-add.html
(c'est similaire avec les autres distros)
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
13 oct. 2020 à 15:02
13 oct. 2020 à 15:02
Bonjour,
Je rejoins jns55, avoir un système par utilisateur me paraît un peu exagéré (et va coûter pas mal d'espace disque). Bien souvent une installation avec plusieurs utilisateurs est amplement suffisante.
On peut imaginer que seuls certains profils aient des droits administrateurs (e.g. les parents) et soient en mesure d'impacter le système (en installant, mettant à jour, ou supprimant des logiciels).
Note qu'un utilisateur non administrateur peut installer dans son dossier personnel ses propres applications (mais s'il n'a pas de droits administrateurs, il ne pourra pas passer par le gestionnaire de paquets, qui lui, les installes au niveau du système global).
Si cette solution ne te convient pas (par exemple, parce que tu souhaites que les enfants soient administrateur de leur système, sans impacter celui des autres, il y a plusieurs solutions de virtualisation. Cela dépend un peu des besoins. Par exemple de la virtualisation lourde comme virtualbox dégrade fortement les performances et ne permet pas d'accéder directement au matériel (donc les jeux en 3D, on oublie). Une solution comme lxc peut alors mieux répondre à ton besoin.
LVM n'a rien à voir avec la virtualisation au sens où tu l'entends : cela permet de définir des partitions "virtuelles" (appelées volumes logiques, lv) par dessus des groupes (appelées volumes de groupes, vg) rassemblant des partitions de disques durs (appelés volumes physiques, pv). En pratique, on réserve LVM à des installations linux sans windows (windows ne parle pas LVM), pour pouvoir redimensionner facilement et/ou chiffrer des volumes logiques. Pour plus de détails, tu peux regarder ce tutoriel qui montre un cas d'utilisation intéressant de LVM.
Bonne chance
Je rejoins jns55, avoir un système par utilisateur me paraît un peu exagéré (et va coûter pas mal d'espace disque). Bien souvent une installation avec plusieurs utilisateurs est amplement suffisante.
On peut imaginer que seuls certains profils aient des droits administrateurs (e.g. les parents) et soient en mesure d'impacter le système (en installant, mettant à jour, ou supprimant des logiciels).
Note qu'un utilisateur non administrateur peut installer dans son dossier personnel ses propres applications (mais s'il n'a pas de droits administrateurs, il ne pourra pas passer par le gestionnaire de paquets, qui lui, les installes au niveau du système global).
Si cette solution ne te convient pas (par exemple, parce que tu souhaites que les enfants soient administrateur de leur système, sans impacter celui des autres, il y a plusieurs solutions de virtualisation. Cela dépend un peu des besoins. Par exemple de la virtualisation lourde comme virtualbox dégrade fortement les performances et ne permet pas d'accéder directement au matériel (donc les jeux en 3D, on oublie). Une solution comme lxc peut alors mieux répondre à ton besoin.
LVM n'a rien à voir avec la virtualisation au sens où tu l'entends : cela permet de définir des partitions "virtuelles" (appelées volumes logiques, lv) par dessus des groupes (appelées volumes de groupes, vg) rassemblant des partitions de disques durs (appelés volumes physiques, pv). En pratique, on réserve LVM à des installations linux sans windows (windows ne parle pas LVM), pour pouvoir redimensionner facilement et/ou chiffrer des volumes logiques. Pour plus de détails, tu peux regarder ce tutoriel qui montre un cas d'utilisation intéressant de LVM.
Bonne chance
Flachy Joe
Messages postés
2103
Date d'inscription
jeudi 16 septembre 2004
Statut
Membre
Dernière intervention
21 novembre 2023
260
15 oct. 2020 à 21:50
15 oct. 2020 à 21:50
Une autre solution sans virtualisation est d'installer autant de système que d'utilisateur sur des partitions séparées et de laisser le choix via le menu grub. Pour le coup c'est lourd en espace disque mais ça n'impacte pas les performances.
foetus_linux
Messages postés
6
Date d'inscription
vendredi 9 octobre 2020
Statut
Membre
Dernière intervention
2 novembre 2020
Modifié le 27 oct. 2020 à 04:09
Modifié le 27 oct. 2020 à 04:09
Merci pour vos réponses. Avons créé des utilisateurs avec le "useradd" linux, chacun a son login et espace de bureau/fichiers, mais les utilisateurs peuvent quand même se rendre dans les fichers des autres (via le "/home" directory où se trouve les fichiers utilisateurs ). Quoi faire maintenant ? Modifier les permissions afin que seul l'admin puisse accéder au niveau superieur de l'arborescence, le "home" ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
31 oct. 2020 à 00:44
31 oct. 2020 à 00:44
Bonjour,
Le plus simple c'est simplement d'assigner aux répertoires utilisateur les droits 700 (rwx------) (de manière non récursive) :
Exemple :
Ainsi, seul le propriétaire du dossier (donc l'utilisateur dont c'est le dossier et root pourront entrer dedans). Note qu'un utilisateur peut s'il le souhaite faire un
Qu'il soit ouvert ou fermé, vu que par défaut, seul l'utilisateur propriétaire a les droits en écriture sur son dossier personnel, il est le seul (avec root) à pouvoir modifier / supprimer / créer des fichiers dans son propre dossier.
Bonne chance
Le plus simple c'est simplement d'assigner aux répertoires utilisateur les droits 700 (rwx------) (de manière non récursive) :
Exemple :
chmod 700 /home/toto
chmod 700 /home/tata
ls -l
Ainsi, seul le propriétaire du dossier (donc l'utilisateur dont c'est le dossier et root pourront entrer dedans). Note qu'un utilisateur peut s'il le souhaite faire un
chmodsur son propre dossier utilisateur, puisqu'il est propriétaire de son propre dossier. Il peut donc s'il le souhaite "fermer" ou "ouvrir" son dossier aux autres utilisateur.
Qu'il soit ouvert ou fermé, vu que par défaut, seul l'utilisateur propriétaire a les droits en écriture sur son dossier personnel, il est le seul (avec root) à pouvoir modifier / supprimer / créer des fichiers dans son propre dossier.
Bonne chance
foetus_linux
Messages postés
6
Date d'inscription
vendredi 9 octobre 2020
Statut
Membre
Dernière intervention
2 novembre 2020
Modifié le 31 oct. 2020 à 13:59
Modifié le 31 oct. 2020 à 13:59
Merci. Alors j'ai créer des 'chmod 700' pour chaque utilisateur et c'est exactement bon. Le sujet avance donc d'autres questions:
A) C'est possible d'appliquer une règle style 'chmod' pour bloquer l'access au 'File System' Linux(pour proteger les fichiers System). Bloquer ce fichier peut empêcher certaines applications de fonctionner?
Comment faire, c'est possible ?
chmod 700 /home/toto
chmod ??? / /home/toto
B) Savoir uttiliser un 'usergroup' pour définir les mêmes parametres/chmod pour plusieurs utilisateurs serais peut-être le standard et la prochaine étape â apprendre ?
A) C'est possible d'appliquer une règle style 'chmod' pour bloquer l'access au 'File System' Linux(pour proteger les fichiers System). Bloquer ce fichier peut empêcher certaines applications de fonctionner?
Comment faire, c'est possible ?
chmod 700 /home/toto
chmod ??? / /home/toto
B) Savoir uttiliser un 'usergroup' pour définir les mêmes parametres/chmod pour plusieurs utilisateurs serais peut-être le standard et la prochaine étape â apprendre ?
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
Modifié le 1 nov. 2020 à 18:53
Modifié le 1 nov. 2020 à 18:53
Bonjour
A) Non surtout pas ! Il ne faut JAMAIS changer les droits des fichiers "systèmes". Ceux-ci sont prévus pour avoir les droits minimaux (nécessaires et suffisants) pour avoir un système à la fois sûr et utilisable. Typiquement, les fichiers sensibles comme
B) Non ce n'est pas du tout la bonne logique. Les permissions liées aux fichiers système sont déjà bien configurée et il ne faut pas y toucher :
Généralement, si un utilisateur ne peut pas réaliser une tâche, c'est qu'elle réclame (légitimement) des droits administrateurs. Soit il est sudoer, soit il a le mot de passe root, et cet utilisateur pourra alors s'en sortir, soit ça n'est pas le cas et il est normal qu'il se fasse jeter.
Quelle est la bonne logique ?
Dans ce qui suit, fichier désigne les fichiers au sens large, donc indifféremment un exécutable, un dossier, un fichier régulier, un lien symbolique, etc.
Certaines commandes d'administrations sont ouvertes aux membres de certains groupes. Les groupes permettent comme leur nom l'indique de définir une politique de droits pour un groupe d'utilisateurs (ce qui répond à la deuxième partie de ta question).
Exemples :
Ce qui a les conséquence suivantes :
Quand utiliser
Presque jamais.
Uniquement lorsqu'on veut donner (ou empêcher) d'autres utilisateur d'accéder aux fichiers qui nous appartiennent. Dans ce cas on donne les droits rx pour les dossiers, et r pour les autres types de fichiers. Généralement le propriétaire se réserve les droits en écriture, car il ne veut pas permettre aux autres utilisateurs (non root) de pouvoir renommer, supprimer, ou modifier son fichier
Exemples :
Bonne chance
A) Non surtout pas ! Il ne faut JAMAIS changer les droits des fichiers "systèmes". Ceux-ci sont prévus pour avoir les droits minimaux (nécessaires et suffisants) pour avoir un système à la fois sûr et utilisable. Typiquement, les fichiers sensibles comme
/etc/shadowne peuvent déjà pas être ouverts par les utilisateurs non root. Tous les commandes linux (dans
/bin,
/usr/bin) ont des droits en lecture et exécution, ce qui permet de les utiliser, mais pas en écriture, ce qui évite à un utilisateur d'y injecter du code malveillant.
B) Non ce n'est pas du tout la bonne logique. Les permissions liées aux fichiers système sont déjà bien configurée et il ne faut pas y toucher :
- Relâcher les droits concernant ces fichiers peut ouvrir un trou de sécurité.
- Restreindre les droits de ces fichiers peut les utilisateurs de réaliser des tâches qu'ils sont supposés pouvoir légitiment faire.
Généralement, si un utilisateur ne peut pas réaliser une tâche, c'est qu'elle réclame (légitimement) des droits administrateurs. Soit il est sudoer, soit il a le mot de passe root, et cet utilisateur pourra alors s'en sortir, soit ça n'est pas le cas et il est normal qu'il se fasse jeter.
Quelle est la bonne logique ?
Dans ce qui suit, fichier désigne les fichiers au sens large, donc indifféremment un exécutable, un dossier, un fichier régulier, un lien symbolique, etc.
Certaines commandes d'administrations sont ouvertes aux membres de certains groupes. Les groupes permettent comme leur nom l'indique de définir une politique de droits pour un groupe d'utilisateurs (ce qui répond à la deuxième partie de ta question).
Exemples :
- Appartenir au groupe
sudo
donne à ses utilisateurs membre la possibilité d'utiliser la commandesudo
. Et ceci ne se fait pas avec unchmod
. - Appartenir au groupe
audio
permet à un utilisateur d'administrer le son. On peut voir aux groupes auxquels on appartient avec la commandegroups
(ou en consultant/etc/group
).
Ce qui a les conséquence suivantes :
- Du point de vue système, les droits sont pensés au niveau des groupes, en partant du principe que les groupes contiennent les bons utilisateurs ;
- Du point de vue utilisateur, vu que les droits sont bien configurés de base au niveau du système, il faut appartenir aux bons groupes pour avoir le droits d'accéder à tel ou tel fichier.
- Si on veut permettre à un utilisateur de faire "plus de choses", on l'ajoute dans le(s) bon(s) groupe(s), mais en tout cas, mais on ne modifie surtout pas les permissions associées aux fichiers (voir paragraphe "pourquoi ?"). Comme généralement, les utilisateurs déjà de base dans les bons groupes, il est rare qu'on ait besoin d'intervenir à ce niveau également (la seule exception notable étant le groupe
sudo
).
Quand utiliser
chmodest-il légitime ?
Presque jamais.
Uniquement lorsqu'on veut donner (ou empêcher) d'autres utilisateur d'accéder aux fichiers qui nous appartiennent. Dans ce cas on donne les droits rx pour les dossiers, et r pour les autres types de fichiers. Généralement le propriétaire se réserve les droits en écriture, car il ne veut pas permettre aux autres utilisateurs (non root) de pouvoir renommer, supprimer, ou modifier son fichier
Exemples :
- Je suis root, je ne veux pas que les logins/mots de passe pour accéder à un partage samba apparaissent en clair dans
/etc/fstab
, qui est un fichier ouvert à tous. Dans ce cas, je vais déporter le login mot de passe dans/root/.smbcredentials
et resserrer les droits de sorte à ce que seul root puisse lire et écrire ce fichier (chmod 600 /root/.smbcredentials
). - Je suis l'utilisateur toto, je veux ouvrir mon dossier en lecture seule aux autres. Dans ce cas je vais relâcher l'accès à mon home et donner aux autres les droits en lecture / exécution :
chmod o+rx /home/toto
. Si au contraire je veux fermer mon home :chmod o-rx /home/toto
.
Bonne chance
foetus_linux
Messages postés
6
Date d'inscription
vendredi 9 octobre 2020
Statut
Membre
Dernière intervention
2 novembre 2020
Modifié le 1 nov. 2020 à 20:56
Modifié le 1 nov. 2020 à 20:56
Merci pour cette belle grande réponse. La madame a l'air à bien connaître ça.
Cela m'implique dans un bon temps de lecture.
Visuellement le dillemme :
https://i.imgur.com/IbgF0wll.png
J'aurais préférer que les utilisateurs ne puissent pas dépasser le '/home/ ' et encore mieux le '/home/user'
Faut-il penser à autre chose qu'un chmod ?
Cela m'implique dans un bon temps de lecture.
Visuellement le dillemme :
https://i.imgur.com/IbgF0wll.png
J'aurais préférer que les utilisateurs ne puissent pas dépasser le '/home/ ' et encore mieux le '/home/user'
Faut-il penser à autre chose qu'un chmod ?
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
>
foetus_linux
Messages postés
6
Date d'inscription
vendredi 9 octobre 2020
Statut
Membre
Dernière intervention
2 novembre 2020
1 nov. 2020 à 20:09
1 nov. 2020 à 20:09
Et donc ?
foetus_linux
Messages postés
6
Date d'inscription
vendredi 9 octobre 2020
Statut
Membre
Dernière intervention
2 novembre 2020
1 nov. 2020 à 21:24
1 nov. 2020 à 21:24
Pour l'instant je n'ai pas encore assimiler toute votre réponse, la solution est là?
foetus_linux
Messages postés
6
Date d'inscription
vendredi 9 octobre 2020
Statut
Membre
Dernière intervention
2 novembre 2020
Modifié le 2 nov. 2020 à 16:16
Modifié le 2 nov. 2020 à 16:16
Sans modifier de permissions y a-t-il une façon créative de rendre la section 'systemFile' autrement non-visible ou est-ce complètement impossible ? Peut-être un genre de 'Bash' script ... qui renverrai un utlisateur à un fichier quelconque ?
J'ai peine à croire que les gens qui créent des installations publiques n'ont jamais eu ce dilemme.
J'ai peine à croire que les gens qui créent des installations publiques n'ont jamais eu ce dilemme.
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 419
2 nov. 2020 à 16:02
2 nov. 2020 à 16:02
Salut,
Peut-être voir du côté de chroot…
Peut-être voir du côté de chroot…
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
4 nov. 2020 à 14:37
4 nov. 2020 à 14:37
Bonjour,
Les droits résolvent complètement les problèmes de sécurité que tu sembles craindre. En soi, ce n'est pas un problème en soi qu'un utilisateur puisse lire/accéder certains fichiers liés aux systèmes, puisque les commandes qu'il va utiliser sont précisément ces fichiers (ou reposent dessus). C'est pour ça que pour la plupart des gens le problème ne se pose souvent pas ce genre de questions (et j'en fais partie).
Après tu peux estimer que ça n'est pas suffisant. Dans ce cas tu peux envisager deux solutions pour isoler l'utilisateur du reste du système. Mais garde à l'esprit que quelle que soit la stratégie adoptée, isoler revient moralement à recréer un environnement dans chaque jail / container. Je vois personnellement deux approches pour réaliser ce genre de choses :
Bonne chance
Les droits résolvent complètement les problèmes de sécurité que tu sembles craindre. En soi, ce n'est pas un problème en soi qu'un utilisateur puisse lire/accéder certains fichiers liés aux systèmes, puisque les commandes qu'il va utiliser sont précisément ces fichiers (ou reposent dessus). C'est pour ça que pour la plupart des gens le problème ne se pose souvent pas ce genre de questions (et j'en fais partie).
Après tu peux estimer que ça n'est pas suffisant. Dans ce cas tu peux envisager deux solutions pour isoler l'utilisateur du reste du système. Mais garde à l'esprit que quelle que soit la stratégie adoptée, isoler revient moralement à recréer un environnement dans chaque jail / container. Je vois personnellement deux approches pour réaliser ce genre de choses :
- Comme le propose zipe31, un chroot, c'est une manière d'isoler complètement un utilisateur par exemple dans son home (mais ça oblige à préparer son home pour qu'il soit chrootable, en particulier, le dossier chrooté doit contenir un shell fonctionnel). Le projet jailkit sert précisément à réaliser ce genre de choses (personnellement je ne l'ai jamais testé).
- Une autre solution que je vois, c'est d'utiliser des containers (voir e.g. lxc), et chaque utilisateur travaille dans son container. Généralement, les containers sont plutôt utilisés pour isoler des applications du reste du système, ce qui permet en outre de ne pas "casser" une application en mettant à jour le système d'exploitation (l'application s'appuie uniquement le "système" de son container). Voir cette discussion.
Bonne chance