Ceci est une ancienne révision du document !



Ce document traite du compte système, aussi connu sous le nom de root. Le terme "root" représente aussi la racine du système de fichiers.

Activer le compte système (root)

Une opération fortement déconseillée !

Par défaut, sous Ubuntu, l'accès direct au compte système (root) est désactivé. La logique du système est d'utiliser sudo pour effectuer toutes les tâches administratives. Il est totalement déconseillé d'activer l'accès et d'utiliser directement le compte root sous Ubuntu ; le présent document n'est rédigé qu'à titre informatif.

Avant que vous n'effectuiez votre choix, prenez quelques secondes pour prendre connaissance des nombreux bénéfices apportés par sudo et son utilisation dans Ubuntu. Rappelons aussi que sudo n'est pas moins sécurisé que l'utilisation d'un compte root.

Si vous désirez tout de même activer le compte root, le document présent vous y aidera. Il n'est ici qu'à titre informatif.

Si sudo est pratique pour exécuter une ou deux commandes avec les droits d'administration (ce qui sera généralement le cas), il peut être agaçant pour effectuer une série de tâches administratives. Si vous avez besoin d'exécuter plusieurs commandes réservées à root à la suite, il est inutile d'activer le compte root ; ouvrez simplement une console et exécutez la commande suivante sudo -i. Il vous est ensuite demandé de saisir votre mot de passe (celui du compte courant) afin d'activer la session système.

$ sudo -i
[sudo] password for <votre identifiant>:

Dans ce terminal uniquement, le compte courant sera root pour une durée indéterminée. Pour reprendre votre identité, saisissez la commande suivante :

# exit

Pour activer le compte root, exécutez la commande sudo passwd root. Le mot de passe du compte courant est demandé une première fois, pour autoriser l'utilisateur à effectuer des tâches administratives. Puis, une invite vous demande le mot de passe désiré pour le compte root. Il vous est demandé de le saisir une seconde fois, pour valider le tout.

$ sudo passwd root
[sudo] password for <votre identité>:
Entrez le nouveau mot de passe UNIX : (inscrire un nouveau mot de passe)
Retapez le nouveau mot de passe UNIX : (répéter le nouveau mot de passe)
passwd : le mot de passe a été mis à jour avec succès

Note : écrire root n'est pas indispensable car le fait d'écrire sudo au début indique déjà que l'on fait appel au compte root.

Une fois le mot de passe défini pour le compte root, exécutez la commande su dans un terminal pour en prendre l'identité. Le mot de passe du compte root est alors demandé :

$ su root
Mot de passe : (inscrire le mot de passe de root)

On peut aussi écrire simplement su sans préciser root.

sudo / gksu / kdesu continue de me demander le mot de passe de l'utilisateur courant...

Vous pouvez configurer sudo de façon à ce que le mot de passe du compte root soit demandé plutôt que le mot de passe de l'utilisateur courant. Pour ce faire, exécutez visudo :

# visudo

Si vous n'aimez pas vi, changez l'éditeur par défaut du système avec la commande suivante (sélectionnez nano par exemple) :

# update-alternatives --config editor

Puis exécutez visudo.

Recherchez la ligne débutant par Defaults ; en bout de ligne, ajoutez rootpw. Cette ligne ressemblera donc à celle-ci :

Defaults        env_reset,rootpw
Pour vous amuser, vous pouvez également rajouter l'option 'insults' dans cette même ligne pour être harangué (en anglais) si vous tapez un mauvais mot de passe :
Defaults        env_reset,rootpw,insults

Sauvegardez vos modifications et quittez l'éditeur de texte.

Si vous avez activé le compte root (avec passwd par exemple), et que vous souhaitez le re-desactiver, voici deux solutions

1ère solution : désactiver totalement le compte root

Cette 1ère solution consistera simplement à verouiller le mot de passe de root, via une simple commande. Le gros problème de cette méthode est que vous ne pouvez plus utiliser la console root, même en mode de récupération !

Vous ne pourrez plus accéder à la console root depuis le mode de récupération ! En cas de problème, ceci pourrait être problématique…

Pour verouiller le compte root, taper cette commande dans un terminal :

sudo passwd -l root

2ème solution : désactiver manuellement le compte root

Cette 2ème solution est légerement plus complexe. Elle permet d'interdire la connexion normale au compte root, tout en permettant de pouvoir utiliser le mode de récupération normalement (comme avant l'activation du compte root). <note warnig>Cette opération modifiera des fichiers d'authentifactions systèmes ! Pensez à faire des copies avant toute intervention de cette manière ! [code]sudo cp /etc/passwd /etc/passwd.old[/code] [code]sudo cp /etc/shadow /etc/shadow.old[/code]

Etape 1 : Supprimer le mot de passe de root

Nous allons commencer par supprimer le mot de passe de root… pensez à désactiver les connexions entrantes par sécurité ! Dans un terminal :

sudo passwd -d root

Etape 2 : Modifier le fichier /etc/passwd

Nous allons modifier le fichier /etc/passwd, ouvrez-le donc avec votre logiciel favori (avec les droits administrateurs), par exemple avec nano :

sudo nano /etc/passwd

La prèmière ligne devrait commencer par root et devrait ressembler à ceci :

root:x:0:0:root:/root:/bin/bash

Remplacer le x entre le premier et le deuxième ":" par une étoile (*) de cette façon :

root:*:0:0:root:/root:/bin/bash

Ensuite, sauvegarder le fichier

Etape 3 : Modifier le fichier /etc/shadow

Nous allons modifier le fichier /etc/shadow, ouvrez-le en admin avec votre logiciel favori comme dans l'étape 2… La première ligne devrait commencer par "root:", suivi de caracères bizzare, du genre : </code>root:$17/:'ù$*ee":::</code> Enlevez tout ce qui suit "root:" et remplacer par un point d'exclamation (!) de cette façon :

root:!

Sauvegarder

Etape 4 : Redemarrer

Tout est dans le titre ;)

  • root.1398885401.txt.gz
  • Dernière modification: Le 30/04/2014, 21:16
  • par Leserou