GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment spécifier la limite de temps pour une session Sudo

En travaillant avec la commande sudo pour effectuer des tâches administratives sous Linux, vous avez peut-être remarqué que même si vous avez fourni un mot de passe sudo il y a quelque temps, vous êtes invité à le fournir à nouveau après un certain temps. Cela se produit en raison de la limite de temps de votre session sudo, qui est définie sur 15 minutes par défaut. Si vous entrez une commande sudo après ces 15 minutes même dans la même session de terminal, il vous est demandé de saisir à nouveau le mot de passe. En tant qu'administrateur Linux, vous souhaiterez peut-être allonger ou raccourcir le délai de la session sudo par rapport aux quinze minutes par défaut.

Ce tutoriel décrit comment vous pouvez apporter des modifications très simples au fichier /etc/sudoers pour spécifier une limite de temps pour une session sudo. Les commandes mentionnées dans cet article ont été exécutées dans Ubuntu 18; cependant, ils fonctionnent de la même manière dans les anciennes versions d'Ubuntu.

Spécifiez l'heure X pour une session Sudo

Dans cet exemple, nous allons changer la limite de temps de notre session sudo à 10 minutes. Veuillez suivre ces étapes pour modifier la limite de temps pour votre session sudo, aussi longtemps que vous le souhaitez :

Ouvrez votre terminal Ubuntu en appuyant sur Ctrl+Alt+T ou via le tableau de bord Ubuntu.

Comme vous devez modifier le fichier sudoers situé dans les dossiers etc, entrez la commande suivante :

$ sudo visudo

Il vous sera demandé d'entrer un mot de passe pour l'utilisateur sudo.

Vous vous demanderez pourquoi nous n'ouvrons pas le fichier sudoers comme nous ouvrons les autres fichiers texte. La réponse est que contrairement aux autres éditeurs de texte, visudo vérifie la syntaxe du texte que vous entrez dans le fichier. Cela vous évite d'apporter des modifications erronées qui pourraient vous causer de graves répercussions. Par exemple, apporter des modifications erronées au fichier sudoers peut vous empêcher de vous connecter en tant qu'utilisateur privilégié pour exécuter l'une des fonctions élevées.

Tapez votre mot de passe et entrez. Le fichier sudoers s'ouvrira dans l'éditeur Nano car il s'agit de l'éditeur de texte par défaut pour Ubuntu 18.04.

Dans l'image ci-dessus, vous pouvez voir la ligne suivante :

Defaults env_reset

Cette ligne est responsable de la limite de temps de votre session sudo. Vous devez apporter les modifications suivantes à cette ligne :

Defaults env_reset, timestamp_timeout=x

Ici x est le temps, en minutes, que vous pouvez spécifier afin de définir votre limite de temps requise. Veuillez noter les points suivants lors de la définition de ce délai :

Si vous spécifiez le délai d'attente à 0, votre session ne durera que 0 minutes. Cela signifie qu'il vous sera demandé d'entrer des mots de passe pour chacune de vos commandes sudo.

Si vous définissez ce temps comme étant inférieur à zéro (en négatif), la commande sudo ne fonctionnera pas correctement.

Dans cet exemple, je raccourcis le temps par défaut de 15 minutes à 10 minutes grâce aux modifications suivantes dans mon fichier sudoers :

Appuyez sur Ctrl+X pour quitter le fichier après avoir apporté les modifications requises. Il vous sera demandé si vous souhaitez enregistrer le fichier modifié. Appuyez sur Y pour enregistrer les modifications.

Il vous sera également demandé de spécifier le nom du fichier à enregistrer. Veuillez appuyer sur Entrée car nous ne voulons pas changer le nom du fichier ici.

Vos modifications seront enregistrées et votre session sudo durera jusqu'aux minutes spécifiées chaque fois que vous utiliserez la commande sudo.

Définir la dernière session Sudo jusqu'à la fermeture du terminal

Grâce à une simple commande, vous pouvez laisser votre session sudo durer jusqu'à ce que vous fermiez le terminal, peu importe combien de temps le terminal reste ouvert. Vous ne serez pas invité à saisir votre mot de passe pour toute commande nécessitant une autorisation sudo après avoir exécuté cette commande :

$ sudo -s

Terminer la session sudo

Après avoir fourni le mot de passe pour sudo, vous pouvez mettre fin à la session sudo avant même le délai spécifié dans le fichier sudoers, via la simple commande suivante :

$ sudo -k

Veuillez noter que cette commande ne mettra pas fin à la session si vous avez utilisé le "sudo -s" lors d'une session de terminal.

C'est ainsi que vous pouvez raccourcir ou allonger la durée d'une session sudo en modifiant une ligne dans le fichier /etc/sudoers. Vous pouvez également utiliser d'autres commandes mentionnées dans cet article pour mettre fin à la session sudo ou la faire durer jusqu'à la fin de la session du terminal.


Ubuntu
  1. Comment rétrograder vers Subversion 1.6 ?

  2. Comment créer une partition Ext4 pour tous les utilisateurs ?

  3. Comment éviter la demande de mot de passe pour Sudo pour les scripts Crontab ?

  4. Comment installer Graphviz 2.29 en 12.04 ?

  5. Comment limiter l'utilisation des ressources pour un processus donné ?

Comment changer la limite de temps pour une session Sudo

Comment limiter la bande passante réseau dans Ubuntu

Comment spécifier la limite de temps pour une session Sudo dans Ubuntu 20.04 LTS

Comment activer le sudo sans mot de passe pour l'utilisateur sous Linux

Comment installer l'environnement de développement Python 3 pour Ubuntu Linux

Comment installer Let's Encrypt SSL pour Nginx sur Ubuntu 18.04 LTS