Les privilèges Sudo permettent à un utilisateur d'effectuer la tâche administrative sur un système d'exploitation Linux. Lorsque nous exécutons une commande en tant que sudo, le système vous demande d'abord d'entrer le mot de passe sudo. Cependant, pour les autres commandes que vous exécutez peu de temps après la première commande, les mots de passe sudo ne vous sont pas demandés. Ce privilège dure 15 minutes et pendant ce temps, vous pouvez utiliser sudo sans mot de passe. Après 15 minutes d'inactivité, chaque commande que vous exécutez en tant que sudo vous demandera le mot de passe sudo. C'est bien car vous n'aurez pas à vous inquiéter que quelqu'un accède et exécute une commande administrative si vous êtes loin de votre système.
Cependant, il existe des scénarios dans lesquels vous avez besoin que ce délai soit inférieur ou un peu plus long que la valeur par défaut. Par exemple, vous pouvez souhaiter que le système demande un mot de passe sudo chaque fois qu'une commande sudo est exécutée. De même, vous souhaiterez peut-être que le délai d'attente sudo soit un peu plus long dans le cas où vous êtes la seule personne à avoir physiquement accès à votre système.
Cet article explique comment modifier le délai d'attente du mot de passe sudo dans le système d'exploitation Linux. Nous utiliserons Ubuntu 20.04 LTS pour démonstration. La même méthode peut être utilisée dans d'autres distributions Linux.
Remarque :Si vous souhaitez attribuer des privilèges sudo à un utilisateur, consultez notre guide sur la façon d'ajouter un utilisateur à Sudoers sur Ubuntu.
Modifier le délai d'expiration du mot de passe Sudo
Comme déjà indiqué, la limite de temps par défaut pour une session sudo est de 15 minutes. Vous pouvez modifier les paramètres par défaut à partir du fichier sudoers. Les étapes sont les suivantes :
1. Modifiez le fichier sudoers à l'aide de la commande ci-dessous dans Terminal :
$ sudo visudo
Entrez le mot de passe sudo. Si vous utilisez Ubuntu OS, le fichier sudoers s'ouvrira dans l'éditeur Nano, pour les autres systèmes d'exploitation, il peut s'ouvrir dans Vi.
2. Faites défiler jusqu'à la fin du fichier et ajoutez la ligne ci-dessous :
Defaults timestamp_timeout=x
Où "x" est le nombre de minutes que vous voulez que sudo attende avant de vous demander votre mot de passe.
Cette ligne modifiera le délai d'expiration du mot de passe sudo pour tous les utilisateurs du système. Pour modifier la valeur du délai d'attente pour un utilisateur spécifique, utilisez plutôt la commande suivante :
Defaults:user timestamp_timeout=x
Si vous utilisez "-1" pour x, vous ne serez pas invité à saisir un mot de passe sudo tant que vous n'aurez pas redémarré. Si vous utilisez "0" pour x, vous serez invité à entrer un mot de passe sudo pour chaque commande que vous exécutez.
Réinitialiser le délai d'expiration du mot de passe Sudo
Vous pouvez également réinitialiser le délai d'expiration du mot de passe sudo en effaçant les informations d'identification mises en cache de l'utilisateur. La commande est la suivante :
$ sudo -k
Ce faisant, vous serez invité à saisir le mot de passe pour les prochaines commandes sudo avant même que le délai ne soit atteint.
C'est ça! J'espère maintenant que vous pouvez facilement modifier le délai d'expiration du mot de passe sudo en ajoutant une seule entrée dans le fichier sudoers. Si vous utilisez Vi au lieu de Nano, suivez les instructions décrites ici.