15

Whenever I issue command sudo apt-get install ** it does not ask for password, not in my admin user too.

How to make it prompt for password?

My sudoer :

ubuntu:~$ sudo cat /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults    env_reset
Defaults    secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d
ALL ALL=(ALL) NOPASSWD:ALL
1
  • 2
    comment out the last line. [#ALL ALL=(ALL) NOPASSSD:ALL]
    – shantanu
    Jun 21, 2012 at 3:39

3 Answers 3

19

Edit /etc/sudoers using sudo visudo, and remove the last line:

ALL ALL=(ALL) NOPASSWD:ALL

(By the way, please note that this line at the end of the file is not the preferred way to make sudo not prompt for a password, for those who want to do that.)

6
  • 1
    Thanks for the reply Eliah, But how could it be there by default ?
    – data9
    Jun 21, 2012 at 4:13
  • 1
    It's not supposed to be there by default. This doesn't usually appear in /etc/sudoers files in Ubuntu. In any case, commenting it out (by putting # in front of it) is as good as deleting the line, and makes it easier to get it back, if you ever want it back. Jun 21, 2012 at 4:16
  • 2
    ok, so what is the preferred way to make sudo not prompt for a password?
    – michaelbn
    Oct 15, 2014 at 11:17
  • @EliahKagan Thanks my friend, I had the same problem and this solved.... BUT I have this doubt, I never edited these files, what are the ways it can be modified without user permission? Feb 9, 2016 at 15:15
  • 1
    @michaelbn I know this is a very late comment but read askubuntu.com/questions/147241/execute-sudo-without-password
    – Nate
    Jun 10, 2021 at 21:15
6

Use this command to find the source of the problem:

sudo grep -HRn NOPASSWD /etc/sudoers.d/

In my case:

/etc/sudoers.d/50_stack_sh:1:username ALL=(root) NOPASSWD:ALL

comment the line with # and close your terminal.

1
  • Yes - I hit this same issue, from an Azure cloud-init script. The tricksy bit about this is that it appears in a separate script in the sudoers.d directory and so the sudo visudo wrongly implies that nothing is wrong. This is where I got the script from docs.microsoft.com/en-us/azure/virtual-machines/linux/… note the sudo: ['ALL=(ALL) NOPASSWD:ALL']
    – icc97
    Jan 15, 2021 at 20:22
0

I think it is better to add the "admin user" at the end of the file, because the admin should not have to put the password in every order in the terminal, and no other user is allowed to do it neither:

# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults    env_reset
Defaults    secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root    ALL=(ALL:ALL) ALL
# Members of the admin group may gain root privileges
%admin  ALL=(ALL) ALL
# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
#includedir /etc/sudoers.d
# ALL ALL=(ALL) NOPASSWD:ALL
(user here) ALL=(ALL) NOPASSWD:ALL
1
  • use formatting. Highlight the text and use the <$> button
    – Panther
    Mar 28, 2015 at 16:24

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .