Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente | |||
|
utilisateurs:alexandrep:sudoers [Le 02/08/2010, 04:59] AlexandreP déplacée vers racine |
— (Version actuelle) | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | {{tag>Hardy Jaunty Karmic Lucid Maverick administration sécurité}} | ||
| - | ----- | ||
| - | ====== Configuration avancée de l'utilitaire sudo ====== | ||
| - | |||
| - | **[[:sudo|L'utilitaire « sudo »]]**, filtrant les tâches d'administration dans Ubuntu, peut être paramétré finement pour autoriser ou refuser l'exécution de tâches privilégiées. Plus que simplement autoriser l'exécution de toutes les tâches administratives à un groupe d'utilisateurs par l'authentification par mot de passe, ''sudo'' peut être paramétré pour permettre à un utilisateur particulier ou un groupe d'utilisateurs particulier d'exécuter une ou des tâches bien précises, avec ou sans saisie du mot de passe. D'autres paramètres, tels le délais d'attente avant qu'une ré-authentification soit nécessaire, l'endroit où est enregistré le journal d'évènements et le niveau de courtoisie de ''sudo'', sont aussi paramétrables. | ||
| - | |||
| - | Le présent document n'a pas pour but de remplacer le manuel du fichier ///etc/**sudoers**//. Il vous indique comment modifier ce fichier dans Ubuntu et ses variantes, et vous donne quelques trucs et astuces de configuration utiles pour votre environnement domestique ou de PME/PMI. | ||
| - | |||
| - | ===== Modification du fichier /etc/sudoers ===== | ||
| - | La configuration de ''sudo'' est enregistrée dans le fichier de configuration ///etc/**sudoers**//. | ||
| - | |||
| - | La modification de ce fichier s'effectue à travers un utilitaire de vérification appelé ''visudo''. Il effectue une vérification de l'intégrité du fichier après modification avant de l'enregistrer. En cas d'erreur lors de la modification, le nouveau fichier n'est pas enregistré, ce qui vous évite de vous retrouver dans l'impossibilité de corriger votre erreur. Enfin, il s,assure que ce fichier conserve ses droits Unix originaux, ce qui assure le bon fonctionnement de ''sudo''. | ||
| - | |||
| - | Pour modifier le fichier ///etc/**sudoers**//, ouvrez [[:terminal|une fenêtre de terminal]] et exécutez l'une des commandes suivantes : | ||
| - | * **Dans Ubuntu :** ''sudo VISUAL=/usr/bin/gedit visudo'' | ||
| - | * **Dans Kubuntu :** ''sudo VISUAL=/usr/bin/kate visudo'' | ||
| - | * **Dans Xubuntu :** ''sudo VISUAL=/usr/bin/mousepad visudo'' | ||
| - | * **En mode console :** ''sudo EDITOR=/usr/bin/nano visudo'' | ||
| - | |||
| - | <note warning>**N'éditez //jamais// directement le fichier ///etc/sudoers// !** \\ Si une erreur se glisse dans votre fichier de configuration de ''sudo'', vous pourriez vous trouver dans une fâcheuse position. L'utilitaire ''visudo'' est créé expressément pour modifier ce fichier de configuration ; utilisez-le !</note> | ||
| - | |||
| - | ===== Ajout ou retrait de privilèges à un compte d'utilisateur ou un groupe d'utilisateurs ===== | ||
| - | À la fin du fichier, ajoutez une ligne d'instruction telle que la suivante : | ||
| - | <file>identifiant ALL = commande,autrecommande | ||
| - | %groupe ALL = commande,!autrecommande</file> | ||
| - | * ''identifiant'' représente un identifiant utilisateur du système Ubuntu. Un seul identifiant doit être précisé par ligne ; | ||
| - | * ''%groupe'' désigne un groupe d'utilisateurs du système Ubuntu. Le nom du groupe doit donc être précédé d'un symbole de pourcentage (''%''). Un seul groupe doit être précisé par ligne ; | ||
| - | * ''ALL'' désigne la ou les machines dans lesquelles les commandes suivantes sont autorisées ou refusées pour cet utilisateur ou de groupe d'utilisateurs. Le mot-clé ''ALL'' désigne l'ensemble des machines de votre parc informatique. Dans le cadre d'une utilisation à domicile, laisser ''ALL'' n'est pas un inconvénient. Dans un grand parc d'entreprise, de meilleures stratégies sont à prévoir ; | ||
| - | * ''commande'' et ''autrecommande'' représentent des commandes pouvant être exécutées par l'utilisateur ou le groupe d'utilisateurs désigné en début de ligne. | ||
| - | * Les commandes précédées d'un point d'exclamation (''!'') sont refusées, alors que celles sans point d'exclamation sont autorisées ; | ||
| - | * Les commandes multiples sont séparées par une virgule, sans espace ; | ||
| - | * Les commandes doivent être entrées de manière exactes. Pour cette raison, préférez saisir des chemins absolus vers des commandes plutôt que des chemins relatifs (par exemple, ''/usr/sbin/update-manager'' plutôt que ''update-manager''). | ||
| - | |||
| - | |||
| - | ==== Exécuter des tâches d'administration sans mot de passe ==== | ||
| - | À la fin du fichier, ajoutez une ligne d'instruction telle que la suivante : | ||
| - | <file>identifiant ALL = commande, NOPASSWD: autrecommande | ||
| - | %groupe ALL = NOPASSWD: commande,autrecommande</file> | ||
| - | Toutes les commandes situées à la droite du mot-clé ''NOPASSWD:'' peuvent être exécutées par l'utilisateur ou le groupe d'utilisateurs précisé en début d'instruction. Celles restées à sa gauche sont toujours soumises à l'authentification par mot de passe. | ||
| - | |||
| - | Dans cet exemple, //identifiant// doit fournir sont mot de passe pour exécuter ''commande'', mais n'a pas à le saisir pour exécuter ''autrecommande''. Quand aux membres du groupe //groupe//, ils n'ont pas à saisir leur mot de passe pour exécuter ''commande'' ou ''autrecommande''. | ||
| - | |||
| - | <note warning>**Attention aux brèches de sécurité !** \\ Faites //extrêmement// attention lorsque vous autorisez un utilisateur ou un groupe à exécuter une commande sans mot de passe. Ceci pourrait causer des brèches de sécurité si les commandes autorisées sont potentiellement dangereuses.</note> | ||
| - | |||
| - | |||
| - | ===== Changement d'options ===== | ||
| - | ==== Augmenter ou réduire le temps de grâce avant que la saisie du mot de passe soit de nouveau demandé ==== | ||
| - | Ajoutez l'option ''timestamp_timeout=X'' à la fin de la ligne débutant par ''Defaults''. La valeur ''X'' doit être remplacée par la durée, en minutes, durant laquelle le mot de passe n'a pas à être fourni pour effectuer des actions d'administration dans le terminal ou pseudo-terminal courant. La valeur ''0'' désactive ce temps de grâce : un mot de passe doit être fourni à chaque action d'administration. | ||
| - | <file>Defaults env_reset</file> | ||
| - | devient | ||
| - | <file>Defaults env_reset,timestamp_timeout=X</file> | ||
| - | Si cette option n'est pas précisée, le temps de grâce par défaut est 15 minutes. | ||
| - | |||
| - | ==== Afficher des astérisques lors de la saisie du mot de passe ==== | ||
| - | Ajoutez l'option ''pwfeedback'' à la fin de la ligne débutant par ''Defaults''. | ||
| - | <file>Defaults env_reset</file> | ||
| - | devient | ||
| - | <file>Defaults env_reset,pwfeedback</file> | ||
| - | |||
| - | ==== Des insultes en cas d'erreur de mot de passe ==== | ||
| - | Ajoutez l'option ''insults'' à la fin de la ligne débutant par ''Defaults''. | ||
| - | <file>Defaults env_reset</file> | ||
| - | devient | ||
| - | <file>Defaults env_reset,insults</file> | ||
| - | |||
| - | |||
| - | |||
| - | ===== Aller plus loin... ===== | ||
| - | Consultez la page de manuel officiel du fichier ///etc/**sudoers**// : | ||
| - | * En ligne : [[http://www.sudo.ws/sudo/sudoers.man.html|Sudoers Manual]] ; | ||
| - | * Copie locale : ''man sudoers''. | ||
| - | Ce document regorge d'options supplémentaires et d'exemples pour personnaliser grandement le comportement de ''sudo''. | ||