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.
Para que se tenha um bom resultado o diretório dos executáveis devem estar disponíveis no PATH, para os usuários que poderam executar os comando somente de root, os securetty. Geralmente são todos os diretórios que começam com 's' (/usr/kerberos/sbin:/usr/local/sbin:/sbin: /usr/sbin/usr/kerberos/sbin:/usr/local/sbin:/sbin:/usr/sbin).
Se não for configurado o path, tem a necessidade de digitar o caminho absoluto do comando para conseguir executá-lo. ex: /sbin/iptables -L
Variáveis de seção (Volátil)
A configuração volátil é perdida sempre que o usuário finaliza a seção, desliga a máquina ou algo parecido.
Para configurar de maneira permanente, deve editar o arquivo '~/.bash_profile' para adicionar os diretórios no PATH como exemplo abaixo, a linha sublinhada, esta modificação é realizada para cada usuário que terá acesso aos comandos de root, indicada se forem poucos usuários.
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
_PATH=$PATH:/usr/kerberos/sbin:/usr/local/sbin:/sbin:/usr/sbin_
PATH=$PATH:$HOME/bin
export PATH
Variáveis de ambiente do sistema
Esta solução não é indicada para poucos usuários, e para máquinas que não são servidores*, pois dos os comandos de root ficaram disponíveis para todos os usuários do sistema, embora quem não tenha permissão de execução não possa fazer muita coisa não é aconselhável devido a prováveis bugs de alguns pacotes, que poderão ser acidentalmente executados.
Para se ter mais segurança do que se esta fazendo você pode usar o seu editor de texto predileto (vim, vi, nano, etc), e adicionar 'PATH=$PATH:/usr/kerberos/sbin:/usr/local/sbin:/sbin: /usr/sbin/usr/kerberos/sbin:/usr/local/sbin:/sbin:/usr/sbin' este trecho na última linha.
[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.
[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?
[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
[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.
[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!
[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!