Sudo não está pedindo senha no Ubuntu 16.04

1

Desde que eu atualizo para 16.04 eu noto sempre que eu uso qualquer comando sudo o terminal não me pergunta a senha antes de executar o comando, O comando é executado diretamente. Eu sou o administrador e não tenho outras contas de usuário.

Eu vi sudo não pede senha e meu / etc / sudoers é exatamente como dado em resposta, mas ainda ao usar o comando sudo, o terminal não solicita uma senha, em vez disso, executa o comando.

Gostaria de saber em detalhes como /etc/sudoers pode ser modificado para

  • Faz com que qualquer conta de usuário específica (incluindo admin) seja solicitada ou não solicitada por senha ao usar o comando sudo.

  • Como excluir qualquer comando específico a ser excluído da solicitação de senha ao usar sudo para qualquer conta de usuário (incluindo admin).

Aqui está o meu arquivo sudoers

# /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,timestamp_timeout=0

# Uncomment to allow members of group sudo to not need a password
# %sudo ALL=NOPASSWD: ALL

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification root ALL=(ALL) ALL

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

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

#includedir /etc/sudoers.d

Saída do sudo -l

Matching Defaults entries for bharat on ratcoder:
    env_reset, timestamp_timeout=0

User bharat may run the following commands on ratcoder:
    (ALL) NOPASSWD: ALL
    
por bha159 11.06.2016 / 08:51

3 respostas

1

Você aplicou uma regra de NOPASSWD ao seu usuário em algum arquivo em /etc/sudoers.d . Use sudo grep NOPASSWD /etc/sudoers.d -R para descobrir qual.

Seu /etc/sudoers não é o padrão, no entanto. O sudoers padrão pode ser obtido observando o sudo package:

$ apt-get download sudo
Get:1 http://mirror.cse.iitk.ac.in/ubuntu xenial-updates/main amd64 sudo amd64 1.8.16-0ubuntu1.1 [389 kB]
Fetched 389 kB in 0s (4,750 kB/s)
$ dpkg-deb --fsys-tarfile sudo*.deb | tar x ./etc/sudoers
$ 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    mail_badpass
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

Isso é bem diferente do que você tem. Restaure /etc/sudoers para o padrão.

Para excluir comandos específicos de exigir uma senha, consulte Como executo comandos específicos do sudo sem uma senha?

    
por muru 22.06.2016 / 18:53
0

Edite seu arquivo sudoers usando sudo visudo .

Encontre esta linha: Defaults env_reset e altere para isto:

Defaults env_reset,timestamp_timeout=0

Isso força o sudo a pedir uma senha toda vez que você a executar.

    
por Stormlord 17.06.2016 / 19:03
0

O OP não menciona qual usuário é o usuário administrador. É provável que seja uma conta de usuário criada (e isso pode não se aplicar), mas para outras pessoas que se deparam com esse segmento, menciono isso: ao usar o Ubuntu 16.04 AMI atual na AWS, o usuário ubuntu por padrão não exige senha para sudo para que cloud-init possa usá-lo para executar. Esse acesso é definido em /etc/sudoers.d/90-cloud-init-users , assim:

# User rules for ubuntu
ubuntu ALL=(ALL) NOPASSWD:ALL
    
por Ville 15.01.2018 / 08:19