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...

Ubuntu 14.04 Trusty Tahr - Análises e novidades

Como todos estávamos esperando, a Canonical disponibilizará hoje o link para download da versão estável do novo Ubuntu 14.04 Trusty Tahr. Já, bem rápido, juntamos algumas coisas para compartilhar as novidades com você! Para que não conseguiu baixar aqui! Links de Download do novo Ubuntu aqui: Baixar Ubuntu 14.04: ubuntu-14.04-desktop-i386.iso ubuntu-14.04-desktop-i386.iso.torrent ubuntu-14.04-desktop-amd64.iso ubuntu-14.04-desktop-amd64.iso.torrent ubuntu-14.04-server-amd64.iso ubuntu-14.04-server-amd64.iso.torrent ubuntu-14.04-server-i386.iso ubuntu-14.04-server-i386.iso.torrent A galera do LinuxVlog fez um vídeo bacana com as 6 melhores novidades da nova versão, confira: Resumo: 1 – Possibilidade de mudar o tamanho dos ícones no launcher para até 16px 2 – Agora é possível mudar a escala da interface do Ubuntu para telas de altíssima resolução 3 – Aumentar o volume do sistema para além de 100% 4 – Agora é possível escolher exibir os ...