Activer le compte Root dans Snow Leopard

Arnaud de la Grandière |
Le compte Root est désactivé par défaut dans Mac OS X. Pour l'activer, on utilise "Utilitaire d'annuaires", qui se trouvait jusqu'ici dans le dossier Utilitaires. Dans Snow Leopard, on le trouvera dans le dossier Système/Bibliothèque/CoreServices/

Une fois le logiciel lancé, on en revient à la procédure habituelle:

- cliquez sur l'icône du cadenas, et entrez votre mot de passe administrateur
- dans le menu Edition, sélectionnez "Activer l'utilisateur Root"
- dans le même menu, sélectionnez "Modifier le mot de passe Root…" et tapez le mot de passe de votre choix.



On peut faire la même procédure dans le Terminal:

- tapez :
sudo passwd root
- tapez votre mot de passe administrateur suivi d'un mot de passe pour le compte Root

Note : si vous n'avez pas de besoin impérieux de ce compte, il est recommandé de le laisser désactivé.
avatar Jean Claude Dusse | 

Oui, parce que ce compte est réservé aux avertis.

avatar val1984 | 

Si le but est d'obtenir un shell root, un simple "sudo -s" suffit...
Personnellement, je déconseille d'activer le compte root.

avatar Patrick75 | 

ca sert à quoi le compte root ? quelle est la difference avec un compte pour lequel on est admin ?

Ces substilités m'échappent et pourtant j'ai la faiblesse de croire que je suis un utilisateur averti du mac....

avatar mattlac6 | 

Qu'est-ce donc cela???

avatar Raff | 

un compte qui donne accès à absolument tout, sans protection : le compte auquel les pirates cherchent à accéder, afin d'avoir le contrôle total de l'ordinateur. Un compte, donc, à ne surtout pas activer (il serait souhaitable de le préciser dans l'article, surtout qu'on est sur un site généraliste lu par des personnes non averties).

avatar Thibaut-Jedi | 

En ligne de commande, il est préférable d'utiliser "dsenableroot" afin de modifier l'annuaire local. La gestion des comptes est trop différente entre un vrai système BSD et Mac OS X, cela risque de mettre un gros bordel d'utiliser la méthode UNIX.

avatar lafonjm | 

Inutile et dangereux dans 99% des cas !
Utiliser un sudo lorsque c'est nécessaire.

avatar Nesus | 

Il est sur que sudo -s fonctionne très bien lorsque l'on à besoin besoin de l'accès root ponctuellement. Pour ceux qui ne savent pas ce que c'est et bine cela vous est inutile. N'activez pas le compte root il ne donne rien de plus a votre machine. Par contre il peu vous apporter de gros soucis ^^

avatar iDuck | 

Je l'ai réactivé en passant par le panneau Comptes de Préférences Système.

Mais depuis plus de 3 ans que je suis sur Mac OS X, je ne m'en suis servi qu'une seule fois. C'était pour un film de vacances gravé sur DVD au supermarché du coin dont je voulais récupérer le film pour faire un montage avec iMovie. Ce n'était pas possible car je m'étais retrouvé avec un dossier marqué d'un sens interdit et dont le contenu était invisible.

En passant par le compte root, j'ai pu modifier les droits en lecture et écriture sur le contenu qui était exploitable une fois revenu dans ma session utilisateur.

avatar Achylle | 

En effet, si vous ne savez pas a quoi sert un accès root, ne l'activait surtout pas !
Comme cela a été dit, il s'agit d'ouvrir une porte dans la sécurité de l'OS.

En root, il devient possible de by-passer vos mots de passe admin, de passer outre l'encryptage de vos données, des permissions sur les fichiers, bref, plus rien n'est protégé (et c'est le but).

Je trouve donc limite, l'idée de donner la méthode pour activer le root sur un site aussi généraliste et connu que macG, sans au minimum dire à quoi ça sert...
Imaginez tous les gens qui vont vouloir essayer pour savoir ce que ça fait, puis laisser l'accès ouvert par mégarde.

avatar Brewenn | 

De fait on se demande le but de cette information sur un site comme MacG, ce type de compte étant utilisé par des administrateurs et des utilisateurs aguerris (X) censés avoir un minimum de connaissances, dans le cas contraire il est à craindre pour l'intégrité de leur système d'information ou celui de leur entreprise.

avatar XiliX | 

Moi, je fais "su" pour passer en root.

Sinon, je suis d'accord avec ce qui a été dit, il est fortement déconseillé d'activer le compte root pour les non initiés.

avatar magicstick | 

Ouais, oula, on se calme la!

l'accès reste ouvert, mais protege par un mot de passe quand même. Si on va dans ce sens la, faut plus avoir de compte admin du tout sur la machine (difficile avec un seul utilisateur) puisque si on a peur que le mot de passe soit cracké par un tiers, qu'il trouve le mot de passe root ou qu'il trouve celui de l'utilisateur qui lui permettra de faire un sudo -s après, ben c'est kifkif bourricot...

Donc c'est pas non plus la fin du monde. Dire que c'est inutile dans la plupart des cas oui, mais dire que c'est hyper dangereux je trouve ça un peu extreme.

Et puis les remarques, si tu connais pas t'as pas besoin, ça fait pas beaucoup avancer la chose, a part peut être piquer la curiosité ou l'amour propre des gens qui vont justement se ruer dessus pour essayer.

avatar pierrot99 (non vérifié) | 

Personnellement je ne suis absolument pas d'accord avec les remarques précédentes et je conseille au contraire à tout un chacun d'activer ce compte avec un mot de passe solide. J'explique ci-dessous les raisons, et je suis tout à fait prêt à entendre le contraire, ça m'intéresse.

Pourquoi ? Parce que, comme pour FileVault d'ailleurs, une personne qui obtiendrait l'accès à votre machine alors que vous êtes déjà loggué (vous êtes par exemple allé au toilettes, ou vous avez activé le partage d'écran ...) pourrait très bien faire cette opération à votre place et ainsi prendre la maitrise du compte root ... ceci est possible car lors de l'activation de ce compte, on ne vous redemande pas votre mot de passe admin.

Le fait d'activer le compte root ne signifie pas qu'il reste ouvert, il faut bien sûr lui attribuer un super mot de passe costaud et s'en souvenir ... le mieux est qu'il soit différent de votre mot de passe admin ... Le sudo c'est bien, mais en gros ça permet de faire ce que fait root avec le mot de passe d' admin qui est rarement très sûr puisque la plupart des gens sont admin de leur machine et utilisent ce mot de passe pour tout et n'importe quoi.

Une des autres mesures à prendre est d'activer le mot de passe FileVault, pour que personne ne le fasse à votre place, et ensuite il y a plusieurs réglages dans le panneau Sécurité, comme exiger un mot de passe à l'ouverture de session, exiger les mots de passe pour les modifs de préférences, dans le Trousseau faire en sorte que les trousseaux se verrouillent automatiquement après x minutes d'inactivité, mettre un économiseur d'écran qui demande un mot de passe pour être dévérouillé, etc etc ...

Je suis sincèrement intéressé par les arguments contraires, le danger représenté par le compte root est effectif dans les mains d'un innocent ignare, mais l'activer ne veut pas dire forcément l'utiliser !

En tout état de cause, si vous ne comprenez pas ce que vous faites, ne le faites pas !

Et si vous l'activez, ne pas oublier d'éditer le fichier /etc/sshd_config pour interdire le login distant directement par root (PermitRootLogin no de mémoire).

avatar Brewenn | 

"c'est hyper dangereux je trouve ça un peu extreme."

C'est hyper dangereux pour une grande partie du lectorat de macG qui voudrait "essayer pour voir".

Pour les "admin professionnels" c'est différents car ce n'est plus la même expertise._

avatar duke_fsc | 

@pierrot99 :
Attribuer un mot de passe fort à Filevault est absolument nécessaire pour les raisons que tu énonces, ce n'est absolument pas le cas du mot de passe root. Il est impossible de casser le mot de passe fort de filevault comme il est impossible de le récupérer. Pour cette raison, il ne vaut mieux pas l'oublier une fois attribué. Alors que tu peux réinitialiser le mot de passe du compte root avec le CD d'installation. Donc cela rend cette activation absolument facultative, car même si on t'active le compte root à ta place, tu peux toujours le réinitialiser, ce qui n'est pas le cas avec filevault.

Pour les utilisations épisodiques sudo -s, sudo, sudo su et sudo su -, suffisent largement.

A savoir que pour l'activer via le terminal, il suffit de faire un "sudo passwd root" et attribuer un mot de passe.

Le shell vous demandera votre mot de passe administrateur, et ensuite d'entrer deux fois un nouveau mot de passe pour le root.

NB : Les risques de l'activation du compte root sans qu'on en ait besoin concernent surtout tous ceux auxquels on ne pense pas.

avatar pierrot99 (non vérifié) | 

@duke_fsc
J'entends bien ton argument, mais comme la plupart des gens ne savent même pas que ça existe, pourquoi iraient-ils le ré-initialiser avec le CD ? Si quelqu'un active le compte root à la place de l'utilisateur habituel, il est probable que celui-ci n'en saura jamais rien, surtout si l'intention est malveillante ... l'intérêt de celui qui fait ça est de pouvoir utiliser votre ordi à votre insu sans que vous n'en sachiez rien.
Oui bien sûr, si tu t'en aperçois, il y a cette solution ... mais si t'as ce genre de chose à faire, c'est déjà trop tard, ça veut dire que quelqu'un l'a activé pour toi (en dehors du cas ou tu le fais car tu as oublié ton pwd).

avatar Macaficionado | 

Sans vouloir polemiquer sur les dangers inherent a l'utilisation du compte root, il y a une methode plus simple pour l'activer sous SL :
System preferences -> Accounts -> Login options -> Network Account server : Join -> Open directory utility ...

avatar pierrot99 (non vérifié) | 

@ Macaficionado
Il n'y a pas polémique, il y a discussion, et pour recadrer, pas sur le danger d'utiliser le compte root (sur ce point nous sommes tous d'accord, c'est dangereux dans les mains d'un novice), mais bien sur l'opportunité ou non de l'activer.
Merci pour la méthode d'accès à l'utilitaire, j'avais pas vu ça.

avatar Thibaut-Jedi | 

@pierrot99
Pour pouvoir activer le compte root, il faut obligatoirement le mot de passe admin. Pour changer le mot de passe root, il n'y a pas besoin de connaître l'ancienne valeur. Conclusion, activer le compte root pour éviter que quelqu'un d'autre ne l'active à notre place ne sert strictement à rien.

@duke_fsc
En démarrant sur le disque d'installation, on peut réinitialiser également un mot de passe admin et ainsi activer également le compte root. Que le compte root soit déjà activé ou non, au final, cela ne change rien. Le seul moyen de sécuriser tout cela est de mettre un mot de passe au firmware.

avatar françois bayrou | 

"Pour les "admin professionnels" c'est différents car ce n'est plus la même expertise._"

Mwais en meme temps l'expertise est pas terrible s'ils ont besoin en 2009 d'aller sur le net pour savoir comment activer le compte root.
Pas le genre d'admin professionnel que j'embaucherais en tout cas :D

avatar Nesus | 

Pour ce qui est de l'activer pour mettre un mot de passe je suis entièrement d'accord avec vous.

Maintenant si c'est juste pour voir je ne le conseille pas xD. En jouant comme ça j'ai craché mon ordi. Dans l'absolu ce n'est qu'une journée de perdu a tout réinstaller, si on conserve bien tout en sauvegarde.
Sinon pour info sur le forum d'unbutu france pour l'installation de celui-ci sur mac il y a une très bonne explication de ce qu'est le root.

avatar pierrot99 (non vérifié) | 

@Thibaut-Jedi
Merci, enfin une réponse intéressante. Effectivement, j'avais pas vu que pour changer ce mot de passe, on ne demandais pas l'ancien ... Est-ce pareil en ligne de commande ou faut-il déjà être en sudo ou root pour changer ce mot de passe ? Si oui, dans ce cas l'activer fait encore du sens pour se protéger d'une activation de ce compte via un accès en ligne de commande ...

avatar Hindifarai | 

Ce groupe wheel/sudoer m'a toujours fait hurler d'un point de vue sécurité. Accéder à des actions d'administration en tappant son mot de passe utilisateur me parait un non sens total. Certes c'est plus facile pour un poste desktop chez madame michu, nous sommes d'accord. Mais dès lors qu'une personne sait faire la différence entre une action d'utilisateur courant(action lambda répétée régulièrement) et une action d'administration touchant à l'intégrité du système, oui un compte root me semble nécessaire.
La bonne vieille méthode su avec fork du shell est quand même bien plus logique.
Sudo est pratique d'un point de vue graphique dans l'esprit, mais l'imposer à tous les niveaux et y compris au niveau shell est une aberration de mon point de vue, amenant des problèmes de sécurité.
Notez bien que je ne parle pas ici d'environnement de prod ou serveur où l'absence d'un compte root serait une hérésie.

avatar Thibaut-Jedi | 

En ligne de commande, si l'on utilise l'outil "dsenableroot", il n'y a même pas besoin de faire sudo avant. Mais il demande tout de même un nom et mot de passe admin. Avec l'outil "passwd" présenté dans la news, il faut faire sudo avant. Mais encore une fois, il demande simplement un mot de passe admin.

Il est conseillé de ne pas activé le compte root pour éviter que l'on fasse soit même n'importe quoi (en touchant les fichiers systèmes, il ne demande même plus le mot de passe). Mais en aucun cas ce n'est pour éviter que quelqu'un d'autre le pirate puisque si vous vous faites pirater votre compte admin, ça revient au même…
Pour tout sécuriser, il faut : définir des mots de passes compliqués, définir un mot de passe au firmware (mais même là, avec un accès physique à la machine, il est possible de réinitialiser le mot de passe firmware), n'avoir qu'un seul compte admin sur la machine et ne l'utiliser qu'en cas de besoin (donc toujours tourner avec un compte standard), activer filevault et le chiffrement de la mémoire virtuelle…

avatar Feroce | 

"de passer outre l'encryptage de vos données"

Absolument pas.

avatar Psylo | 

Utiliser le compte root en mode graphique ?
Heu... tant qu'on y est, pourquoi pas un bon vieux :
sudo rm -rf /
dans la console ? (SURTOUT NE TESTEZ PAS CETTE COMMANDE ou alors comme moi, sur un mac de la fnac où le vendeur faisait juste "enter" pour se logguer.... ça marche! \0/ )

avatar Goanna | 

RESOLU
Bonjour,
j'ai bien suivit les etape et suis bien sur snow, mais pas possible de trouver
dossier Système/Bibliothèque/CoreServices/
RESOLU

avatar Thibaut-Jedi | 

@Psylo
Pas sûr qu'il accepte cette commande. Il faut certainement rajouter une étoile.

avatar le_jax | 

Même si vous savez à quoi cela sert et comment vous en servir, cela ne sert absolument à rien. Ne le faite pas. Ça ouvre un trou de sécurité supplémentaire. Laisseriez-vous les clefs de chez vous sous le paillasson avec un petit mot : "Chers voleurs, les clefs NE SONT PAS sous le paillasson" ?

avatar Psylo | 

@Thibaut-Jedi
La dernière fois que j'ai testé il me semble que non (par contre ça bloque sur certains binaires)

avatar Hindifarai | 

sudo n'a d'utilité que dans le fait qu'il donne des pouvoirs temporaires sur une commande de manière ponctuelle (du moins dans son utilisation courante). De ce point de vue il est utile pour les personnes ne maitrisant par leur système d'exploitation.
D'un autre coté il ne demande pas à l'utilisateur un accès supérieur au groupe wheel ou sudoer et donc pas de mot de passe supplémentaire, ce qui dans l'imaginaire collectif est le symbole d'un pouvoir différent. Ainsi l'utilisateur final utilise sudo sans même savoir que son utilisation peut porter à danger.
Parallèlement il n'y a pas de gestion de path à la manière de "sudo -" amenant des problèmes de sécurité de mon point de vue.
En conclusion dire que l'utilisation du compte root plutôt que sudo amène des problèmes de sécurité est un non-sens total et une preuve de méconnaissance de la sécurité informatique. Sudo a apporté des avancées pour l'utilisateur final en desktop, les personnes soucieuses de la sécurité de leur système et ayant les connaissances suffisantes utiliseront le compte root et banieront l'utilisation de sudo sur leurs systèmes(peut importe ce que pensent 90% des utilisateurs de mac osx et les utilisateurs d'ubuntu). Allez proposer l'utilisation de sudo sur un *BSD ou sur une debian en prod avec une sécurité au centre des interêts, vous verrez l'accueil.

CONNEXION UTILISATEUR