即使多次重启后,sudo也不要求输入密码


8

我尚未编辑sudoers,但sudo在命令行中运行时不必输入密码。我可以在不输入密码的情况下运行任何sudo命令,只需打开终端,即使重新启动系统后,如何停止此操作?

uid=1000(ktcool) gid=1000(ktcool) groups=1000(ktcool),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),108(lpadmin),1‌​24(sambashare)

5
您的用户帐户是否使用密码保护?
Davidson Chua 2014年

5
另外,如果您在一段时间前输入密码,它会缓存一段时间。
托马斯·沃德

你在哪一组?使用/usr/bin/id和阅读man sudoers。您还不root是吗?
waltinator 2014年

是的,我的用户帐户受密码保护。即使多次重启后,问题仍然存在。你们中的任何人都可以给我一个解决方法,以查找我是否不小心编辑了sudoers。
ktcool 2014年

1
AskUbuntu中也有一些类似的问题。在/etc/sudoers文件和文件中搜索/etc/sudoers.d包含NOPASSWD的行。这些可能是在安装过程中由程序添加的。这些线应该是罪魁祸首。

Answers:


7

使用visudo编辑您的sudoers文件,并查找NOPASSWD:-这是该指令禁止用户口令提示(你从来没有进入目标用户的密码,即root的密码)。只需删除该指令(包括末尾的冒号),就需要您重新输入密码以使用sudo(除非您最近使用过该密码,但仍在缓存中,可以使用清除此指令sudo -k


0

/etc/sudoers文件中,管理员组应如下所示,%admin ALL=(ALL) ALL而根目录为ALL=(ALL:ALL) ALL。由于在id命令的输出中显示您属于多个组,例如lpadmin,因此请检查其中是否有与root的行相同的行。更改它们以使其与admin相同,然后保存,重新启动,并让我们知道thig是否恢复正常。


0

尝试sudo --list向我们显示您帐户的活动sudo配置:

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:~$

检查缓存凭据上的时间戳,这可以帮助您了解为什么不提示您:

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:~$

使用sudo --remove-timestamp来试图消灭任何缓存的凭据。

来自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.

-1

sudo -i 如果您不想在系统(或其他系统)中进行修改时不时地输入密码,这是一种方法,并且您也不想修改任何系统文件。 当您关闭控制台或键入命令时,它将切换为root 使用sudo用户密码,exit您将返回到普通用户。希望这个工作,关于:)


2
问题在于他输入密码,但是他的系统不提示输入密码,而是接受并执行他的命令,就像输入密码一样。
hmayag 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.