Comando sudo - instalação e configuração

Quantas vezes um administrador se depara com a difícil necessidade de ceder a senha de root a algum administrador de um serviço específico, ou a um grupo de pessoas, e na fatalidade alguém com a senha de root destrói tudo. Pois é, o sudo serve para resolver este dilema.

[ Hits: 255.568 ]

Por: Ricardo Brito do Nascimento em 16/04/2007 | Blog: http://brito.blog.incolume.com.br


Introdução



Descrição sobre o sudo

O sudo permite um usuário em particular execute vários comandos como super usuário sem que possua sua senha, ou seja sem a senha do root.

Há uma descrição completa do pacote em:

Instalação

Primeiramente devemos instalar o sudo para poder configurá-lo. Têm-se três possíveis maneira de instalar o sudo, pelos: fonte, binários e instaladores.

Dependências:

A instalação do sudo depende de outros módulos e bibliotecas que deverão ser instaladas anteriormente:
  • perl
  • make
  • Class::Accessor
  • IPC::Run

Instalação através de pacote fonte:

O fonte do sudo pode ser obtido na URL abaixo.
No pacote há os seguintes arquivos: Sudo-0.21/, Sudo-0.21/Changes, Sudo-0.21/lib/, Sudo-0.21/lib/Sudo.pm, Sudo-0.21/Makefile.PL, Sudo-0.21/MANIFEST, Sudo-0.21/README, Sudo-0.21/t/, Sudo-0.21/t/Sudo.t.

Como superusuário execute os passos seguintes:

passo 1: baixar o pacote

# wget http://search.cpan.org/CPAN/authors/id/L/LA/LANDMAN/Sudo-0.21.tar.gz

passo 2: desempacotar

# tar -xvzf Sudo-0.21.tar.gz -C /tmp

passo 3: compilar

# perl Makefile.PL
# make
# make test


passo 4: instalar

# make install

Instalação através de pacote binário:

Localize o binário referente a distro (FC6,Debian, ubuntu, slack, e outras) e plataforma (i386, amd64 e outras) utilizada.

Fedora:
# rpm -Uvh sudo-1.6.8p12-10.i386.rpm

Debian:
# dpkg -i sudo_1.6.8p7-1.4_i386.deb

Instalação através dos instaladores ou utilitários:

Dentre os diversos instaladores, que sua função principal é calcular as dependências automaticamente, temos synaptic (fedora, mandriva, debian), aptitude (debian, ubuntu), yast (suse), apt (fedora, debian, e outros), yum (fedora). Existem inúmeras particularidades, iremos demonstrar os mais comuns.

APT:

# apt-get install sudo

YUM:

# yum install sudo

    Próxima página

Páginas do artigo
   1. Introdução
   2. Configurando o sudo
   3. Configurações avançadas
   4. Configuração das variáveis de ambiente
Outros artigos deste autor

Explorando o wget

Conexão com chaves assimétricas sem uso de senha em servidor sshd

Vim com corretor ortográfico em pt_BR/es_ES/en_US

Configurando Subversion

Configurando proxy no shell

Leitura recomendada

50 toques antes de instalar o Slackware 14.1

Configurando o Apache para reconhecer arquivos DWG

CUPS - Gerenciador de impressões

Habilitando multilib no Slackware - Atualizado e simplificado

Configuração do SSL no Apache

  
Comentários
[1] Comentário enviado por thelinux em 16/04/2007 - 23:32h

Parabéns. Já uso algum tempo e gostei do teu artigo.

[2] Comentário enviado por y2h4ck em 16/04/2007 - 23:37h

Uma providencia de segurança importante é adicionar um grupo especial o qual somente o mesmo tenha acesso a execução do sudo, fazendo com que a administracao de usuarios com privilegios de execucao do mesmo seja facilitada e tambem evita que o acesso seja demasiadamente permissivo.

[3] Comentário enviado por rick001_7 em 17/04/2007 - 00:17h

Sempre usei o Sudo, uma ótima forma de você poder gerenciar servidores, principalmente em grandes empresas, onde várias pessoas têm acesso ao servidor.
Utilizando o Sudo você tem o log de cada usuário e o que cada um fez, podendo verificar e analisar as ações de cada um, no caso de algum desastre causado por algum usuário na manipulação da máquina.

[4] Comentário enviado por dvj em 17/04/2007 - 10:13h

Excelente artigo, muito bem elaborado e explicado.

[5] Comentário enviado por brunokino em 17/04/2007 - 23:56h

Parabéns, Excelente Artigo, eu mesmo não conhecia esta ferramenta! muito útil e importante. Valew

[6] Comentário enviado por @ecs em 18/04/2007 - 19:58h

exelente artigo, me ajudou bastante com um probleminha que estava tendo com a configuração avançado do sudo. Parabéns.

[7] Comentário enviado por aprendiz_ce em 20/04/2007 - 12:43h

Excelente artigo!

O mesmo já foi para a "caixinha" de favoritos.

Parabéns.

[8] Comentário enviado por removido em 29/04/2007 - 03:20h

muito bom cara!! tinha configurado algumas coisas erradas aqui =]

valeu!

[9] Comentário enviado por Mithus em 29/08/2007 - 14:01h

No inicio, pensei que seria apenas uma tradução do arquivo, mas os seus comentários e exemplos foram muito bem aplicados!! Parabéns!! =)

[10] Comentário enviado por ckavila em 16/10/2007 - 15:59h

Oi... Como vai?
Li seu artigo sobre o sudo. Nele você diz que alias podem ser definidos inclusive com informaçoes do Active Directory. Eu estou usando WINBIND para logar em estações Debian utilizando conta e senha do AD. So que não consigo fazer esses usuarios terem acesso ao sudo. Será que você poderia me ajudar?

Obrigada :)

[11] Comentário enviado por luizhacker em 21/12/2007 - 12:42h

Ótimo artigo!

Ele possui uma linguagem de fácil entendimento tanto para os mais experiêntes como para os iniciantes, parabéns!

[12] Comentário enviado por valterrezendeeng em 07/01/2008 - 19:45h

Valeu teu artigo auxiliou-me

Abraços

[13] Comentário enviado por HenriqueRJ em 26/06/2008 - 10:35h

Prezados,

Eu quero que todos os administradores possam fazer tudo, exceto trocar a senha de root usando o comando "passwd root".

Que parâmetros eu devo usar??

Desde já muito obrigado!

[14] Comentário enviado por rbn_jesus em 18/08/2008 - 21:06h

HenriqueRJ
configuração avançada

Proíbe ao usuário 'john' executar o comando 'su -', 'su - root' ou 'su root' na máquina 'penta':
john penta = /usr/bin/su [!-]*, !/usr/bin/su *root*

[15] Comentário enviado por flavioc em 17/07/2009 - 22:22h

Ola, preciso de ajuda. Uso Ubuntu 9.04. O uso do Sudo aqui deu um problema. to tentando configurar um hardware, e ao aplicar as configurações da um erro. Veja abaixo:
flavio@flavio-laptop:~/wis-go7007-linux-0.9.8-3$ wd=`pwd`; sudo patch -d /etc/init.d -p0 -i "$wd"/patches/mountdevsubfs.sh-usbfs.patch
sudo: patch: command not found

como resolver? Obrigado

[16] Comentário enviado por marcospantazis em 14/05/2011 - 15:56h

Olá, Grande Henrique !
Excelente artigo, como faria para através do sudo, permitir que um usuário logue direto no ssh ?

Atenciosamente,
Marcos André

[17] Comentário enviado por rbn_jesus em 06/07/2011 - 14:12h

Olá Marcospantazis,
Eu sou o autor do artigo, e sobre a tua pergunta, O que pretende não é delegação de permissão.
O q vc pode fazer é criar um script bash, e coloca-lo como bash do usuário em questão.

ex:
### shellssh ####
ssh ${LOGNAME}@maqRemota

No arquivo /etc/passwd, altere /bin/bash, para o arquivo acima.

[18] Comentário enviado por rbn_jesus em 11/11/2011 - 10:16h

Olá a todos!!!
Informo que este artigo foi atualizado em:
http://brito.blog.incolume.com.br/2011/11/comando-sudo-instalacao-e-configuracao.html

[19] Comentário enviado por removido em 29/03/2013 - 21:03h

Simples e direto. 10.

[20] Comentário enviado por sr.machado em 15/07/2013 - 07:39h

Eu particularmente nunca usei porque a maioria do que uso é em servidores, claro que no meu pc pessoal uso, mas a frequencia é menor. Excelente artigo. Parabéns!

[21] Comentário enviado por albfneto em 31/08/2013 - 12:50h

Favoritado, sudo é sempre importante.
eu uso.

[22] Comentário enviado por wleite em 18/04/2014 - 11:04h

Parabéns pelo artigo! Esse merece nota 10!

[23] Comentário enviado por removido em 23/07/2014 - 20:14h

Excelente artigo, me salvou aqui pq havia reinstalado o sistema e o sudo não funciona quando eu tentava usar comandos como o "Installpkg"! Obrigado! :D

[24] Comentário enviado por danistation em 15/06/2015 - 16:36h

Excelente abordagem, explicativa e demonstrativa! Com uma contribuição dessas, fica difícil não se motivar em aprofundar mais no manual do sudo entre outros! Parabéns ao autor!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts