sudo ne demande pas de mot de passe, même après plusieurs redémarrages

8

Je n'ai pas modifié mes sudoers, mais je n'ai pas besoin d'entrer le mot de passe lors de l'exécution sudoen ligne de commande. Je peux exécuter n'importe quelle commande sudo sans entrer le mot de passe, en ouvrant simplement le terminal, même après avoir redémarré le système, comment puis-je arrêter cela?

uid=1000(ktcool) gid=1000(ktcool) groups=1000(ktcool),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),108(lpadmin),1‌​24(sambashare)
ktcool
la source
5
Votre compte utilisateur est-il sécurisé avec un mot de passe?
Davidson Chua
5
De plus, si vous avez entré un mot de passe il y a quelque temps, il est mis en cache pendant un certain temps.
Thomas Ward
Dans quels groupes êtes-vous? Utilisez /usr/bin/idet lisez man sudoers. Vous ne l'êtes pas rootdéjà, n'est-ce pas?
waltinator
Oui, mon compte utilisateur est sécurisé par mot de passe. Même après plusieurs redémarrages, le problème persiste. Est-ce que n'importe lequel d'entre vous peut me donner une solution pour savoir si j'ai accidentellement modifié mes sudoers?
ktcool
1
Il y a des questions similaires dans AskUbuntu. Recherchez dans le /etc/sudoersfichier et les fichiers dans les /etc/sudoers.dlignes qui contiennent NOPASSWD . Ceux-ci ont probablement été ajoutés par un programme lors de l'installation. Ces lignes devraient être le coupable.

Réponses:

7

Utilisez visudopour modifier votre fichier sudoers et recherchez NOPASSWD:- c'est la directive désactivant l'invite de mot de passe utilisateur (vous n'avez JAMAIS à entrer le mot de passe de l'utilisateur cible, c'est-à-dire le mot de passe root). La simple suppression de cette directive (y compris les deux points à la fin) devrait vous obliger à ressaisir votre mot de passe pour utiliser sudo (à moins que vous ne l'ayez utilisé récemment, il est toujours mis en cache, vous pouvez l'effacer en utilisant sudo -k)

ThiefMaster
la source
0

Dans le /etc/sudoersfichier, le groupe admin devrait ressembler à ceci %admin ALL=(ALL) ALLet root en revanche l'est ALL=(ALL:ALL) ALL. Étant donné que la sortie de votre idcommande montre que vous appartenez à plusieurs groupes, comme lpadmin, vérifiez si l'un d'eux a la même ligne que la ligne de racine. Modifiez ceux-ci pour qu'ils ressemblent à ceux d'administrateur, enregistrez, redémarrez et faites-nous savoir si ces éléments sont revenus à la normale.

Sergiy Kolodyazhnyy
la source
0

Essayez sudo --listde nous montrer la configuration sudo active pour votre compte:

skath@beast:~$ sudo --list
Matching Defaults entries for skath on beast:
    env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin

User skath may run the following commands on beast:
    (ALL : ALL) ALL
skath@beast:~$

Vérifiez les horodatages des informations d'identification mises en cache, cela pourrait vous aider à comprendre pourquoi vous n'êtes pas invité:

skath@beast:~$ sudo ls -al /var/lib/sudo/$USER/
total 20
drwx------ 2 root skath 4096 Jan 28 14:27 .
drwx------ 3 root root  4096 Jan 28 13:52 ..
-rw------- 1 root skath   40 Feb  5 16:18 1
-rw------- 1 root skath   40 Jan 28 14:51 2
-rw------- 1 root skath   40 Jan 28 13:56 tty1
skath@beast:~$

Utilisez sudo --remove-timestamppour essayer d'effacer toutes les informations d'identification mises en cache.

De man sudo:

 -K, --remove-timestamp
             Similar to the -k option, except that it removes the
             user's cached credentials entirely and may not be used
             in conjunction with a command or other option.  This
             option does not require a password.  Not all security
             policies support credential caching.

 -k, --reset-timestamp
             When used without a command, invalidates the user's
             cached credentials.  In other words, the next time sudo
             is run a password will be required.  This option does
             not require a password and was added to allow a user to
             revoke sudo permissions from a .logout file.

             When used in conjunction with a command or an option
             that may require a password, this option will cause sudo
             to ignore the user's cached credentials.  As a result,
             sudo will prompt for a password (if one is required by
             the security policy) and will not update the user's
             cached credentials.

             Not all security policies support credential caching.
Steven K
la source
-1

sudo -i est la voie à suivre si vous ne voulez pas taper un mot de passe de temps en temps pendant que vous effectuez des modifications dans votre système (ou d'autres systèmes), et que vous ne voulez modifier aucun fichier système. Il vous fera root utiliser votre sudo mot de passe utilisateur, lorsque vous fermez la console ou tapez, exitvous êtes de retour à votre utilisateur normal. espère que cela fonctionne, salut :)

i5fq
la source
2
Le problème est qu'il veut taper un mot de passe mais que son système n'en demande pas un, mais qu'il accepte et exécute ses commandes comme s'il en avait tapé un.
hmayag