Não estou obtendo privilégios, editado / etc / sudoers [duplicado]

8

Eu quero rodar qualquer programa sem perguntar a senha do root. Porque eu sou a única pessoa que usa o sistema. Então eu pesquisei e editei /etc/sudoers .

O que eu fiz:

# chmod 640 /etc/sudoers
# vim /etc/sudoers

Adicionou uma linha como abaixo:

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

salvou e fechou o arquivo. Sistema re-carregado. Mas nenhuma mudança / melhoria. Eu quero mudar qualquer outra linha? ou existe alguma maneira?

EDITAR:

1. Alterei as permissões /etc/sudoers para 0440 . ls -l /etc/sudoers result é

-r--r----- 1 root root 772 May  4 19:43 /etc/sudoers

2. Eu corro # visudo . O conteúdo do arquivo é

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
sgg ALL=NOPASSWD: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

Mas ainda pede senha quando eu executo sudo ls .

Informações do sistema : Ubuntu 14.04 x86_64 3.13.0-24-generic

    
por gangadhars 04.05.2014 / 05:04

2 respostas

9

Primeiro, alguns pontos gerais:

  1. Nunca edite /etc/sudoers diretamente. Você deve sempre usar sudo visudo , que permite editar o arquivo, mas verifica se há erros antes de salvá-lo. A sintaxe de sudoers é complicada e um erro pode inutilizar seu sistema, pois você não poderá mais usar sudo .

  2. Nunca altere as permissões de /etc/sudoers . Em geral, você não deve alterar as permissões dos arquivos do sistema. Em muitos casos, os programas associados a eles não funcionarão adequadamente e é uma má prática e uma falha de segurança. Isso é para o que sudo é, para que você não precise alterar as permissões.

    Além disso, se você tiver definido as permissões de /etc/sudoers para 640 e conseguir gravar nele, isso significa que você também alterou seu proprietário para seu usuário. Isso efetivamente irá quebrá-lo. Conforme explicado em man sudoers :

    /etc/sudoers is owned by gid N, should be 1 The sudoers file has the wrong group ownership. If you wish to change the sudoers file group ownership, please add “sudoers_gid=N” (where ‘N’ is the group ID that owns the sudoers file) to the sudoers Plugin line in the sudo.conf(5) file.

  3. Se você quiser que os usuários regulares montem uma unidade, a melhor maneira é especificar isso em /etc/fstab . Usando o seu exemplo, você gostaria dessa linha:

    /dev/sda6   /media/sgg/D    vfat    users,rw,errors=remount-ro,noauto  0   0
    

    Isso permitirá que usuários comuns o montem com

    mount /dev/sda6
    
  4. Se, apesar disso, você ainda quiser permitir que seu usuário execute qualquer comando sem uma senha, a linha que você deseja adicionar ao /etc/sudoers (usando sudo visudo ) é:

    sgg ALL=NOPASSWD:ALL
    

    Salve o arquivo e saia do visudo e tente executar sudo ls , você não deve receber uma senha. Acabei de testar e posso confirmar que funciona no meu LMDE.

por 04.05.2014 / 13:14
2

Isso apenas diz ao sistema que você pode executar todos os comandos (que é o padrão de qualquer maneira), mas não diz nada sobre senhas. Você precisa de:

sgg ALL = (ALL) NOPASSWD: ALL

Da página do manual:

FULLTIMERS      ALL = NOPASSWD: ALL

Full time sysadmins (millert, mikef, and dowdy) may run any command on any host without authenticating themselves.

    
por 04.05.2014 / 05:21