Ver Feed RSS

minelli

Fundamentos do Sistema Linux - Permissões

Avalie este Post de Blog
Boa dia, ao ver que muitos usuários necessitam liberar os comando Shutdwon e Reboot no linux para usuários que não seja root resolvi publicar está matéria alterada por mim, limitarei a mesma ao nível user quem quiser saber mais no final do texto terá o link do artigo de referencia.

Permissões especiais

Além das permissões simples de leitura, escrita e execução, existem outras três permissões, conhecidas como permissões especiais por só poderem ser aplicadas a tipos específicos de arquivos, que fornecem um alto nível de segurança ao sistema e privacidade aos usuários.

As permissões especiais são fornecidas pelos chamados bits, a saber: SUID, SGID e STICKY, dos quais trataremos a seguir.

1.1- SUID

O bit SUID (Set UID) pode ser aplicado somente para arquivos executáveis, para que eles rodem com as permissões do seu dono, e não com as permissões do usuário que o executou. Dessa forma, suponha um executável que tenha sido criado pelo usuário root com o bit SUID ligado. Então, se o usuário testeuser executar esse arquivo, ele rodará como se fosse o root que o estivesse executando.

Isso pode ser útil para permitir que usuários comuns executem programas restritos ao administrador do sistema, como o shutdown, reboot, e outros.

Tomemos como exemplo o shutdown. Ele está localizado no diretório /sbin/, e não pode ser executado por usuários comuns, retornando a seguinte mensagem de erro:

$ /sbin/shutdown
shutdown: you must be root to do that!

Ou seja, "shutdown: você precisa ser root para fazer isso!".

1.2- Ativando bit SUID

Vamos então ativar o buit SUID para permitir que o usuário testeuser possa executar o shutdown:

# chmod 4755 /sbin/shutdown
# chmod 4755 /sbin/halt

Ou

# chmod u+s /sbin/shutdown
# chmod u+s /sbin/halt

Observe que utilizamos 4 dígitos para o comando chmod no formato octal. O primeiro dígito, que até então não tínhamos utilizado, é justamente aquele utilizado para as permissões especiais. O número 4 corresponde ao bit SUID. Já no formato literal, utilizamos u+s para ativar (+) a permissão especial de execução (s) para os usuários (u).

Observe agora as novas permissões do /sbin/shutdown:

$ls -la /sbin/shutdown
-rwsr-xr-x 1 root root 23608 Ago 12 2008 /sbin/shutdown
$ls -la /sbin/halt
-rwsr-xr-x 1 root root 23608 Ago 12 2008 /sbin/halt

Repare que agora existe um "s" no lugar do "x" nas permissões do dono. Esse é o indicador de que o bit SUID está ligado.

Por fim, vamos criar um atalho para o shutdown no diretório /bin/, para que o usuário testeuser possa executá-lo sem precisar digitar o caminho completo:

# ln -s /sbin/shutdown /bin/shutdown
# ln -s /sbin/halt /bin/halt
# ln -s /sbin/reboot /bin/reboot

Agora, o usuário testeuser e todos os demais usuários do sistema poderão executar normalmente o comando shutdown e reboot, como se fosse o root que o estivesse executando.

$ shutdown -h now

1.3- Fim

Isso é tudo, se quiserem mandar reclamações, críticas, sugestões, mandem-nas para
[email protected]
Espero que ajude a todos compreender como funciona o bit SUID.
Link de referencia original: http://www.vivaolinux.com.br/artigo/...soes/?pagina=1 Por: Davidson Rodrigues Paulo
Categorias
Artigos , Dicas , Linux

Comentários

  1. Avatar de mktguaruja
    Minelli ótimo o conteúdo, você esta de parabens!
  2. Avatar de gbovelar
    Otimo Conteúdo. Muito Util. Parabéns Minelli !

+ Enviar Comentário