Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Empêcher le montage de disques durs externes pour certains utilisateurs

30 réponses
Avatar
pas.de.spam
Bonjour à tous,

Bon, ben tout est dans le titre lol !

Je voudrais, que lors du démarrage de la machine, certains utilisateurs
n'aient pas accès aux disques durs externes. Que ceux-ci, s'ils sont
montés lors de la permutation d'utilisateurs, soient alors démontés pour
cet utilisateur.

Est-ce possible simplement : solution clicodromique, ou alors script au
login, simplissime à mettre en ½uvre.

Merci du coup de main !

--
PO.

Pour m'écrire : po(point)taubaty(arobas)wanadoo(point)fr

10 réponses

1 2 3
Avatar
laurent.pertois
Nicolas MICHEL wrote:

Euh, j'ai testé en entrant ma propre IP et il me semble que ça
fonctionne aussi, non ?


Non, sauf à ajouter un fichier spécifique :

$ touch /Library/Preferences/DirectoryService/.DSTCPListening

et relancer le daemon DirectoryService.

--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.

Avatar
laurent.pertois
Nicolas MICHEL wrote:

Sinon, si tu veux vraiment démonter le disque, tu peux mettre un
diskutil unmount /Volumes/diskExterne
dans un loginHook. Mais c'est moins élégant amha.


Et ça ne passera pas en Permutation Rapide.

--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.

Avatar
pas.de.spam
Nicolas MICHEL wrote:

Pierre-Olivier TAUBATY wrote:

Je voudrais, que lors du démarrage de la machine, certains utilisateurs
n'aient pas accès aux disques durs externes. Que ceux-ci, s'ils sont
montés lors de la permutation d'utilisateurs, soient alors démontés pour
cet utilisateur.


Une solution simple serait de faire ces 2 choses :
1) avec TinkerTool, faire monter le disque externe au boot et non au
login


je regarderais celà.

2) désactiver la coche "ignorer les permissions" et régler les
permissions. (peut aussi se faire avec des ACL dans TinkerTool pour des
permissions en mode "inherit")


Je vais tester, mais tes ACL, et le "inherit", c'est du chinois pour
moi. :)

EN fait, je pense qu'il faudrait rattacher l'utilisateur concerné à un
groupe particulier, et interdire à ce groupe l'accès, via les
permissions des disques. Cela me permettrait de ne rien modifier pour
mes sessions utilisateurs, qui je pense appartiennent toutes au même
groupe. On fait comment pour créer un groupe, et modifier le groupe
auquel appartient un user ? J'ai jeté un oeil rapide dans Netinfo
manager, mais c'est pas immédiat.


De cette façon le disque sera présent en permanence mais ne sera
accessible que pour les utilisateurs autorisés, ce qui est une autre
façon de faire ce que tu souhaites.

Sinon, si tu veux vraiment démonter le disque, tu peux mettre un
diskutil unmount /Volumes/diskExterne
dans un loginHook. Mais c'est moins élégant amha.


euh ... un loginHook .... voui ... mais encore ? (ch'uis désolé ... )
--
PO.

Pour m'écrire : po(point)taubaty(arobas)wanadoo(point)fr


Avatar
Nicolas.MICHEL
Pierre-Olivier TAUBATY wrote:

Je vais tester, mais tes ACL, et le "inherit", c'est du chinois pour
moi. :)


Quand tu crées un nouveau fichier :
- Il t'apartient, tu peux y écrire
- Le groupe est ton "gid" et il peux y lire
- Les autres peuvent lire.

Même si tu as donné des droits xy sur le disque, à chaque fois que
quelqu'un créera un fichier ou un dossier il faudra redéfinir ces
droits. C'est fastidieux. C'est pour ça que je te parles d'ACL :

Les ACL sont des listes de droits qui viennent en plus des permissions
traditionnelles unix. On les trouves sur Mac OS X depuis le système
10.4.

Par exemple pour ton disque, tu peux dire
- le groupe "compta" a le droit de lire et d'écrire dans ce disque et
tout ce qu'il contient ou contiendra.
ou :
- le groupe "autre" n'a _pas_le_droit_ de lire ni d'écrire dans ce
disque et tout ce qu'il contient ou contiendra

c'est ce "contiendra" que tu ne peux pas faire avec des permissions
traditionnelles unix. C'est ce qu'on nome "inherit".

Donc en gros à chaque fois que tu créera un nouveau fichier sur le
disque externe, en plus de t'apartennir et d'être autorisé en lecture
pour le groupe, il se prends la liste des ACL que tu as définies.

C'est comme sous windows avec les permission ntfs, si tu connais.

Tu peux le faire en cli avec chmod ou en GUI avec TinkerTool, mais c'est
franchement plus facile en GUI.

EN fait, je pense qu'il faudrait rattacher l'utilisateur concerné à un
groupe particulier, et interdire à ce groupe l'accès, via les
permissions des disques.


sans ACL :
tu peux mettre un "goulet".
Comme il y n'y a que un utilisateur et un groupe (sans acl hein!)
si tu utilises le groupe pour restreindre alors un seul utilisateur aura
des droits.
Il faut donc utiliser le groupe pour autoriser, et les autres pour
restreindre :

%> ls -ld /Volumes/DATA
drwxrwx--- 17 root compta 680 Nov 13 17:01 /Volumes/DATA

La faiblesse de ce truc c'est que si ça interdit correctement l'accès au
disque pour "les autres" (tout ceux qui ne sont ni root ni dans le
groupe compta, en l'occurence) ça en garrantit pas que les membres du
groupe compta auront les droits correct pour tout ce que contient ce
disque. Donc il te faudra ajouter une ACL.

On fait comment pour créer un groupe ?


Soit tu dupliques un groupe existant dans netinfo et tu changes les
paramètres, soit tu utilises SharePoint, qui fait ça plus simplement.

euh ... un loginHook .... voui ... mais encore ? (ch'uis désolé ... )


Un loginHook est un script shell qui est exécuté avec les droits root à
chaque ouverture de session.
La commande pour assigner ce script est le suivant :

defaults write /Library/Preferences/com.apple.loginwindow LoginHook
/usr/local/bin/LoginHook.sh

On trouve des explications ici :
<http://www.bombich.com/mactips/loginhooks.html>

Mais comme le dit Laurent, avec la permutation rapide d'utilisateur ça
ne vas pas le faire. Et c'est plus compliqué que 3 clics dans
TinkerTool.


--
Nicolas

Avatar
pas.de.spam
Nicolas MICHEL wrote:

[snip plein de choses intéressantes]


ok, merci bien pour cet exposé détaillé et didactique.

Je vais l'imprimer et je ferais des essais. Apparemment, je devrais m'en
sortir. Sinon, j'appellerais OS court ;-)

Je pense à un truc, la case ignorer les autorisations sur un disque
externe, quel es t l'intérêt de la décocher (ce que je faisais), si
c'est toujours le même utilisateur qui s'en sert, ce qui était le cas.

En complément de cette question, je suppose que si cette case est
cochée, et que j'enmmène le disque chez un copain, il risque de ne pas
monter sur son mac ? Il y a moyen alors de s'identifier auprès de ce
disque pour y avoir quand même accès ?
--
PO.

Pour m'écrire : po(point)taubaty(arobas)wanadoo(point)fr

Avatar
Nicolas.MICHEL
Pierre-Olivier TAUBATY wrote:

Nicolas MICHEL wrote:

[snip plein de choses intéressantes]


ok, merci bien pour cet exposé détaillé et didactique.


C'était pas facile d'expliquer un truc aussi complexe sans me perdre ...
Enfin complexe, c'est limpide une fois qu'on a compris, comme toute
chose logique.

Je vais l'imprimer et je ferais des essais. Apparemment, je devrais m'en
sortir. Sinon, j'appellerais OS court ;-)


oki :)

Je pense à un truc, la case ignorer les autorisations sur un disque
externe, quel es t l'intérêt de la décocher (ce que je faisais), si
c'est toujours le même utilisateur qui s'en sert, ce qui était le cas.


Si tu es le seul utilisateur, l'intérêt serait plutôt de laisser la case
cochée pour que même les fichier spootlight t'appartiennent, et que donc
tu n'aies pas de soucis pour les backup et autre.
Sinon je ne vois pas.

En complément de cette question, je suppose que si cette case est
cochée, et que j'enmmène le disque chez un copain, il risque de ne pas
monter sur son mac ? Il y a moyen alors de s'identifier auprès de ce
disque pour y avoir quand même accès ?


C'est une bonne question. Il faudrait tester. A prioris je dirais ...
Pour autant qu'il n'y ait pas d'encryption genre FileVault ou autre,
le plus probable est que tu utilises le même UID que lui :
Le UID 501, celui qui est attribué au premier utilisateur se créant un
compte sur un mac.
Donc pour unix, si vous avez les 2 le même UID, vous avez les mêmes
droits, il ne sait pas vous diférencier.

Ensuite, supposons que ton pote ait créé un premier utilisateur 501 puis
un 2ème qui aura logiquement le UID 502, puis qu'il efface l'utilisateur
501, alors là je suppose que tu devra recourir au groupe ou aux droits
root pour accéder à la machine.
--
Nicolas


Avatar
laurent.pertois
Nicolas MICHEL wrote:

Soit tu dupliques un groupe existant dans netinfo et tu changes les
paramètres, soit tu utilises SharePoint, qui fait ça plus simplement.


Ou Workgroup Manager qui est très propre de ce point de vue et manipule
les éléments comme il faut dans le respect des règles de l'art (ce qui
reste encore à démontrer pour moi concernant SharePoints qui ressemble
de plus en plus à une usine à gaz dont on aurait ajouté les tuyaux au
petit bonheur la chance).

Concernant les ACLs, bien que ça ne simplifie pas forcément la vie de
celui qui ne sait pas ce qu'elles font il y a dorénavant une GUI,
Sandbox :

<http://www.mikey-san.net/sandbox/>

--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.

Avatar
Nicolas.MICHEL
Laurent Pertois wrote:

Ou Workgroup Manager qui est très propre de ce point de vue


Bin oui, c'est juste, j'y penses pas.
Ce que c'est que les habitudes tout de même :)

Concernant les ACLs, bien que ça ne simplifie pas forcément la vie de
celui qui ne sait pas ce qu'elles font il y a dorénavant une GUI,
Sandbox :

<http://www.mikey-san.net/sandbox/>


Cool !
Et il semble que ce soit gratuit en plus :)

Bon, c'est pas encore parfait, notament le glisser-dépesser qui ne
marche pas, m'enfin c'est quand-même hachement bien et je suis sûr qu'en
une heure de test n'importe quel utilisateur qui aurait enlevé ses
mouffle et enfilé des chausettes magique "bonne volonté +3" doit arriver
à en comprendre le principe.

Adopté. Merci Laurent :)
--
Nicolas

Avatar
laurent.pertois
Nicolas MICHEL wrote:

Laurent Pertois wrote:

Ou Workgroup Manager qui est très propre de ce point de vue


Bin oui, c'est juste, j'y penses pas.
Ce que c'est que les habitudes tout de même :)


Faudra s'habituer :)

Concernant les ACLs, bien que ça ne simplifie pas forcément la vie de
celui qui ne sait pas ce qu'elles font il y a dorénavant une GUI,
Sandbox :

<http://www.mikey-san.net/sandbox/>


Cool !
Et il semble que ce soit gratuit en plus :)


Oui.

Bon, c'est pas encore parfait, notament le glisser-dépesser qui ne
marche pas,


Non il est encore un peu frais, il faudrait en parler au développeur,
peut-être.

m'enfin c'est quand-même hachement bien et je suis sûr qu'en
une heure de test n'importe quel utilisateur qui aurait enlevé ses
mouffle et enfilé des chausettes magique "bonne volonté +3" doit arriver
à en comprendre le principe.


Oui, enfin, après, il faut comprendre les différents choix, ce qui n'est
pas forcément évident au premier abord, la "bonne volonté +3 " est
vraiment de rigueur. Mais on peut y aller à grands coup de droits.

Adopté. Merci Laurent :)


De rien :)

--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.


Avatar
filh
Laurent Pertois wrote:

Nicolas MICHEL wrote:

Soit tu dupliques un groupe existant dans netinfo et tu changes les
paramètres, soit tu utilises SharePoint, qui fait ça plus simplement.


Ou Workgroup Manager qui est très propre de ce point de vue et manipule
les éléments comme il faut dans le respect des règles de l'art (ce qui
reste encore à démontrer pour moi concernant SharePoints qui ressemble
de plus en plus à une usine à gaz dont on aurait ajouté les tuyaux au
petit bonheur la chance).

Concernant les ACLs, bien que ça ne simplifie pas forcément la vie de
celui qui ne sait pas ce qu'elles font il y a dorénavant une GUI,
Sandbox :

<http://www.mikey-san.net/sandbox/>


Heu c'est quoi la commande cli ? setfacl ? C'est aussi con que sur
solaris ?

FiLH jamais au courrant (m'en fout je fais des services sous Solaris 10
ça enfonce le launchd d'Apple)


--
Le fondement du constat bourgeois, c'est le bon sens, c'est-à-dire
une vérité qui s'arrête sur l'ordre arbitraire de celui qui la parle.
Roland Barthes.
http://www.filh.org


1 2 3