Pular para o conteúdo principal

Usando o Sudo

O que é o sudo?

Ele é uma ferramenta que permite que o usuário comum execute um comando qualquer como root, sem efetuar login como tal. Ele é derivado do comando su, que é usado para mudar de usuário. Sua sintaxe básica é:

$ sudo <comando>

O sudo oferece vários benefícios importantes:

Ele registra todos os comandos executados com ele;
Ele registra falhas de autenticação de login;
Com ele, podemos restringir que usuários o utilizarão e o que farão;
Usando o sudo, não precisaremos distribuir a senha de root para os usuários.

Su e Sudo na prática

Se estiver com usuário root, pode utilizar o su para trocar para qualquer outro usuário (não pedirá senha). Ex:

root@:# su joao
joao@:$

Caso esteja com um usuário comum, poderá utilizar o su também, mas pedirá a senha do outro usuário, claro. Um bom exemplo é, se souber a senha do root e não for sudoer, poderá usar o  $ su root

Caso seu usuário comum for um sudoer (explicarei mais a frente) você poderá "se transformar" em root desta forma:

$ sudo su

Pedirá a SUA senha e você passará a utilizar o usuário root.
Em outras palavras, você usou o comando sudo (que é a ferramenta que o usuário comum pode executar qualquer coisa como root...) para trocar de usuário. Ou seja, usou o comando sudo para executar o comando su e, como não especificou nome de usuário, ele passará a ser o root.

Caso queira, por exemplo, desligar o computador pelo terminal sem fazer login como root e sendo sudoer:

$ sudo halt

Pedirá a senha de seu usuário comum e executará o halt com permissões de root.

O que é um sudoer?

Sudoer é um usuário comum que possuí algum super poder para executar super programas, ou seja, um usuário comum que pode executar programas do root ou então logar-se como root com sua própria senha.

O arquivo de configuração dos sudoers, fica em: /etc/sudoers

Seu arquivos de configuração é o /etc/sudoers e deve ser editado com o comando visudo.
Exemplo do arquivo:


sudoers file.
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the sudoers man page for the details on how to write a sudoers file.
#
# Host alias specification
# User alias specification
# Cmnd alias specification
# Defaults specification
# Runas alias specification
# User privilege specification
root ALL=(ALL) ALL
# Uncomment to allow people in group wheel to run all commands
# %wheel ALL=(ALL) ALL
# Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
# Samples
# %users ALL=/sbin/mount /cdrom,/sbin/umount /cdrom
# %users localhost=/sbin/shutdown -h no

Pode-se ver nesse arquivo que temos alguns exemplos de configuração.
Por exemplo, se quisermos dar privilégios para o usuário joao para dar um shutdown na maquina, faríamos o seguinte:

Após a linha

root ALL=(ALL) NOPASSWD: ALL

Colocariamos a linha:

joao ALL=NOPASSWD: /sbin/shutdown

O que foi dito ai em cima, foi o seguinte:

joao -> Usuário que vai receber o privilégio
ALL -> Host em que vai ser utilizado (pode ser também como localhost)
NOPASSWD -> Sem confirmação de senha
/sbin/shutdown -> Comando de permissão

Como você deve estar imaginando, podemos adicionar os comandos que desejamos apenas alterando esta linha.
joao ALL=NOPASSWD: /sbin/shutdown,/sbin/poweroff,/sbin/mount

No Ubuntu, o primeiro usuário que é criado, tem todos os poderes de super usuário.
Isso é tudo feito via sudo. Mas como fazer para um usuário ter todos os poderes?
Este é o mais simples de todas as configurações:

joao ALL=(ALL) NOPASSWD: ALL


Esse vídeo, é simples e aborda bastante isso que falamos agora, pode ajuda-lo:



Não façam isso:
linuxsaudavel


É sério não faça, vai apagar toda a estrutura da sua partição, em breve explicarei.


Comentários

Postagens mais visitadas deste blog

Linux no mundo corporativo

Muitas pessoas me perguntaram recentemente sobre a usabilidade Linux em ambientes corporativos, não apenas em relação a servidores mas sim do ambiente como um todo. Resolvi pesquisar um pouco, juntar meu conhecimento e escrever este artigo para clarear as ideias e ajudar quem precisa. O artigo será um pouco extenso mas lhe garanto que valerá a pena. Linux em Ambientes corporativos Apenas para que facilite, abordarei os seguintes temas: 1. Como está hoje? 2. Minha empresa quer migrar, meu Deus! 3. O futuro 4. O Mercado para Empreendedores 5. Para finalizar Como está hoje? De fato encontramos Linux no ambiente corporativo, cada vez mais o número de empresas que utilizam nossa plataforma livre está aumentando. O problema, ou a questão principal, não é a utilização e sim o uso em si. Atualmente a maior parcela de utilização está baseada em servidores com finalidade de firewall, proxy e web. Concordamos que já são bons números e de extrema importância mas e os desktops? Ai esta, de certa fo

Utilizando o Gmail no Postfix

Olá! Eu nunca gostei de configurar o postfix, sempre apanhei um pouco e confesso que não me dou muito bem com ele, apesar de saber, não é minha maior diversão. Eu encontrei um solução para essa configuração rápida, tão mas tão simples que foi impossível não parar tudo e vir compartilhar. O texto é deste link http://eduardobecker.blogspot.com.br/2010/09/fazendo-relay-autenticado-no-postfix.html E vou colar o texto aqui em baixo para facilitar. O autor está de parabéns! Fazendo Relay Autenticado no Postfix com SMTP do Gmail Estava precisando que o Nagios enviasse e-mails de alertas quando servidores apresentassem problemas. Foi então que decidi configurar o Postfix para enviar e-mail usando o smtp do Gmail. ### Estas configurações foram testadas no Ubuntu Server 8, 9 e 10 ### Vamos as configurações! 1) Durante a instalação do Ubuntu Server escolher a opção "Mail Server". 2) Instalar os pacotes e dependências. # apt-get install libsasl

Flisol São Paulo 2014

O que é o FLISOL?  O Festival Latino-americano de Instalação de Software Livre (FLISOL) é o maior evento de divulgação de Software Livre da América Latina. Ele acontece desde 2005 e seu principal objetivo é promover o uso de software livre, apresentando sua filosofia, seu alcance, avanços e desenvolvimento ao público em geral. Com esta finalidade, São Paulo entrará nessa maratona, instalando gratuitamente softwares livres – totalmente legalizados – nos computadores levados pelos participantes. Também, paralelamente, são oferecidas apresentações, palestras e oficinas, sobre temas locais, nacionais e latino-americanos a respeito do Software Livre, com toda sua variedade de expressões: artística, acadêmica, empresarial e social. Software Live é qualquer programa que pode ser copiado, usado, modificado e redistribuído de acordo com as necessidades de cada usuário. Em outras palavras, o software é considerado livre quando atende a esses quatro tipos de liberdades. Onde? O FLI