13

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
  • 2
    comment out the last line. [#ALL ALL=(ALL) NOPASSSD:ALL] – shantanu Jun 21 '12 at 3:39
18

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.)

| improve this answer | |
  • 1
    Thanks for the reply Eliah, But how could it be there by default ? – data9 Jun 21 '12 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. – Eliah Kagan Jun 21 '12 at 4:16
  • 2
    ok, so what is the preferred way to make sudo not prompt for a password? – michaelbn Oct 15 '14 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? – Severus Tux Feb 9 '16 at 15:15
  • @SeverusTux you would have given the root permission to a program from untrusted source. which modified this file so that in future it will not need to ask password from you again and again... ............You can think about virus.. or Trojan horse... – sanjeev Jan 2 '17 at 18:09
4

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.

| improve this answer | |
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
| improve this answer | |
  • use formatting. Highlight the text and use the <$> button – Panther Mar 28 '15 at 16:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.