Configurando o sudo sem senha nas distribuições do Linux

16

Eu configurei recentemente o Fedora 28 & Sistemas Ubuntu 18.04 e gostaria de configurar minha conta de usuário principal em ambos para que eu possa executar sudo comandos sem ser solicitada uma senha.

Como posso fazer isso nos respectivos sistemas?

    
por slm 12.09.2018 / 03:39

3 respostas

26

Isso é bastante trivial se você usar o grupo especial do Unix chamado wheel em sistemas Fedora. Você só precisa fazer o seguinte:

  1. Adicione seu usuário principal ao grupo wheel

    $ sudo gpasswd -a <primary account> wheel
    
  2. Ativar NOPASSWD para o grupo %wheel em /etc/sudoers

    $ sudo visudo
    

    Em seguida, comente esta linha:

    ## Allows people in group wheel to run all commands
    # %wheel        ALL=(ALL)       ALL
    

    E descomente esta linha:

    ## Same thing without a password
    %wheel  ALL=(ALL)       NOPASSWD: ALL
    

    Salve este arquivo com Shift + Z + Z .

  3. Faça logout e faça login novamente

    OBSERVAÇÃO: Essa última etapa é obrigatória para que sua área de trabalho e todos os shells de nível superior correspondentes sejam novamente executados, mostrando que sua conta principal agora é membro do grupo wheel Unix.

por 12.09.2018 / 03:39
17

Tradicionalmente, em distribuições baseadas no Debian, como Debian / Ubuntu / Mint / Kali / Antix, o grupo padrão para o sudo é, bem, sudo .

Portanto, para adicionar% sem senha sudo habilitou usuários a um sistema baseado em Debian, as etapas são:

  1. Instale sudo

    No Debian, dependendo das opções de instalação, você geralmente acaba sem sudo instalado por padrão.

    Se o pacote sudo não estiver instalado (por exemplo, você não tem /etc/sudoers ), execute como root:

    # apt install sudo
    
  2. Adicione o usuário ao grupo sudo

    Adicione um usuário ao grupo sudo, se ele ainda não estiver no grupo sudo (o Ubuntu e os derivados adicionam um usuário criado automaticamente na instalação ao grupo sudo).

    Ao configurar o primeiro usuário sudo, você tem o primeiro como root :

    # gpasswd -a <primary account> sudo
    

    Quando você já tem um usuário sudo , é recomendável, como boa prática de segurança, configurar os outros usuários no grupo sudo por meio desse usuário:

    $ sudo gpasswd -a <primary account> sudo
    
  3. Modifique /etc/sudoers para adicionar a diretiva NOPASSWD

    Você então edita a linha padrão em /etc/sudoers para o grupo sudo com:

    $ sudo visudo
    

    e altere-o de:

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

    para:

    # Allow members of group sudo to execute any command, no password
    %sudo   ALL=(ALL:ALL) NOPASSWD:ALL
    
  4. Faça logout e faça login novamente

    Se estiver logado no sistema, o usuário pretendido deve logout e login para a mudança do usuário pertencente ao grupo sudo para entrar em vigor.

NOTA: No Debian o grupo wheel é frequentemente usado para restringir no PAM o uso de su para um grupo, ao invés de usá-lo para o comando sudo como em RedHat / Distribuições baseadas em SuSE.

Tradicionalmente nas distribuições baseadas em Debian, para o comando sudo você usa o grupo sudo .

    
por 12.09.2018 / 05:17
6

A maioria das distribuições tem essa linha em /etc/sudoers/ :

#includedir /etc/sudoers.d

Consequentemente, uma maneira fácil de adicionar um usuário é criar um arquivo adequado no diretório /etc/sudoers.d/ ; Eu normalmente o nomeio para o usuário ser adicionado:

add_sudoer() {
    if ! test -n "$1"
    then echo "Usage: $0 <user>" >&2; return
    fi

    printf >"/etc/sudoers.d/$1" '%s    ALL= NOPASSWD: ALL\n' "$1"
}

Você também pode querer adicionar Defaults:%s !lecture, !authenticate\n e / ou outras opções ao arquivo.

    
por 12.09.2018 / 09:40