Eu já vi muitos posts que dizem, é o suficiente para fazer
aptitude install sudo
su root
adduser USERNAME sudo
Mas isso apenas protege aptitude
, em outras palavras:
aptitude install sendmail
vai pedir a senha, você precisa estarsudo
rodandoaptitude
apt-get install sendmail
não pedirá senha, semsudo
privilégios necessáriosSe você editar arquivos protegidos, como arquivos
etc
nele, não solicitará senha, não serãosudo
necessários privilégiosVocê pode executar e interromper serviços como
apache
, ele não solicitará senha, nenhumsudo
privilégio necessário
Como consertar isto? Este é o meu arquivo 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:$
# Host alias specification
# User alias specification
# Cmnd alias specification
Esta é a saída de sudo -l
:
Matching Defaults entries for root on this host:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin
User root may run the following commands on this host:
(ALL : ALL) ALL
(ALL : ALL) ALL
sudo
root
not-root-user
debian
Lynob
fonte
fonte
su root
, você está logado comoroot
usuário, para ter acesso total a tudo. Para voltar a ser um uso regular que precisa ser usadosudo
para operações privilegiadas, efetue logout do shell executando comoroot
.Respostas:
Você não adicionou nenhuma regra sudo, portanto não pode usar o sudo para nada.
O comando
adduser USERNAME sudo
adiciona o usuário especificado ao grupo chamadosudo
. Um grupo com esse nome deve existir; crie-oaddgroup sudo
se não o fizer. Após adicionar o usuário ao grupo, o usuário deve efetuar logoff e logon novamente para que a associação ao grupo entre em vigor.sudo
não é um nome de grupo especial. É uma convenção permitir que os usuários do grupo chamadosudo
executem comandos como root por meio dosudo
utilitário. Isso requer a seguinte linha nosudoers
arquivo:Execute
visudo
para editar o arquivo sudoers, nunca edite-o diretamente.Não faço ideia por que você acredita que "isso apenas protege a aptidão". Não há nada de especial na aptidão. Depois de autorizar um usuário a executar comandos como root, ele pode executar
sudo aptitude …
ousudo apt-get …
ousudo service …
, ousudoedit
editar arquivos que requerem permissão de root para editar. Estar no arquivo sudoers não altera diretamente os privilégios do seu usuário, o que faz é que permite executarsudo
para executar comandos como root. Os comandos são executados como raiz somente quando você os executasudo
. Alguns programas podem fazer isso automaticamente, especialmente programas da GUI em que a interface do usuário é executada sem privilégios especiais e apenas o back-end é executado como raiz, mas os comandos executados como raiz são sempre executados porsudo
.fonte
sudo -l
como raiz. Mesmo se houver definições úteis para os usuários, elas não teriam sido mostradas. Portanto, seu palpite "Você não adicionou nenhuma regra sudo" pode estar errado.sudoers
arquivo está em questão.sudo -l
saída, mas felizmente ... Parece que o conteúdo da pergunta não pode ser o arquivo inteiro porque não é consistente com a saída. Pelo menos meusudo
versão não afirma "O usuário root pode executar os seguintes comandos" com umasudoers
definição de comando sem (como a da pergunta).sudo -l
apenas diz: “O usuário root não tem permissão para executar o sudo no darkstar.”. E osudo
grupo está no arquivo sudoers por padrão no wheezy. As entradas necessárias podem ter sido movidas para um arquivo em/etc/sudoers.d
. De qualquer forma, o que quer que o arquivo sudoers contenha, ele não faria o que Fischer assume.O que pode ter acontecido é: sudo está armazenando em cache sua senha. Portanto, depois de concluir corretamente a implementação do sudo no seu sistema, você deverá digitar a senha do primeiro comando e, depois disso, ficar em cache por algum tempo. Se isso acontecer e você executar a sequência
Então você precisará fornecer uma senha no primeiro comando, mas não no segundo (pelo menos enquanto você ainda estiver dentro do tempo limite). Pode parecer que ele está protegendo apenas o primeiro comando, mas não o segundo. Sem mais informações (transcrições completas do shell), não há como saber ...
fonte
Se você seguir a resposta acima, estará seguindo o caminho certo. Pelo menos na minha Debian Jessie, fiz um link suave para / usr / bin do comando no caminho / sbin. Por exemplo: / sbin / ifup, coloquei um link suave (ln -s) em / usr / bin e posso usá-lo.
Outra coisa importante é colocar o NOPASSWD assim:
fonte