Quais são os contras de restringir o chmod aos usuários root / sudo?

3

Eu tenho um problema com alguns dos meus usuários usando mal o chmod fazendo coisas como

chmod 777 ~ -Rf

Gostaria de desativar o chmod para que apenas os usuários com direitos completos no sudo (eu. TI) tenham direitos. Há alguma desvantagem para isso que eu possa estar com vista?

O apache ou qualquer outra parte comum do Linux requer acesso ao chmod que estou negligenciando?

Além disso, a melhor maneira de fazer isso é:

chmod 700 /bin/chmod

Obrigado!

EDITAR:

Para esclarecer, sei que existem maneiras de contornar isso e sei que educar meus usuários é a coisa certa a fazer. Mas as pessoas nem sempre fazem o que eu lhes digo para fazer. Computadores vão ... se eu forçar meus usuários a me perguntarem antes de usar o chmod, eu posso educá-los sobre por que seus direitos foram tirados, instruí-los no caminho certo para fazê-lo, e conceder-lhes direitos sudo para chmod o que eles precisam para chmod.

Ao mesmo tempo, hesito em mexer em um dos comandos fundamentais de um shell linux. O que eu estou perguntando é, alguém sabe de algum efeito colateral que eu possa estar negligenciando? I.E. quando você cria um arquivo, ele chama chmod para definir as permissões iniciais ou não é relacionado? Uma cópia de arquivo precisa de chmod? Existem serviços padrão que dependem do chmod que pode quebrar se somente o root tiver acesso ao chmod?

    
por Dan R 14.09.2011 / 15:03

4 respostas

2

Você permite que usuários usem certificados para SSH? Ou escrever scripts (shell, CGIs, etc?)

Sem acesso ao chmod, eles não poderão definir as permissões necessárias para fazer com que os certificados ssh funcionem (algumas pessoas podem ver isso como uma vantagem, mas se esse for o caso, você deve editar o pam.conf para proibi-lo inteiramente), eles teriam que chamar o interpretador com o script como um argumento (por exemplo, perl script.pl ), em vez do script diretamente, e um servidor da Web se recusará a executar seus CGIs, pois as permissões não estão configuradas corretamente.

Dependendo de qual é o grupo padrão do usuário e de como você tem a configuração padrão de umsk, também é possível que os arquivos criados não sejam legíveis pelo servidor da Web e, portanto, não possam ser veiculados, CGI ou de outra forma. Além disso, a falta de chmod significa que você não pode corrigir as permissões de problemas dos arquivos que foram movidos via scp, que é a permissão de preservação por padrão.

... dar aos usuários direitos sudo para chmod é possivelmente uma lata de worms ainda maior - como então eles poderiam executar os comandos como root, não como eles mesmos, então eles poderiam afetar as permissões de qualquer usuário. Seria melhor fazer um grupo de 'chmodders', definir a permissão do chmod para 0750 e adicionar pessoas ao grupo que tem permissão para usá-lo.

    
por 14.09.2011 / 16:42
3

imho, isso parece uma solução técnica para um problema humano.

    
por 14.09.2011 / 15:38
0

Se você ainda quiser fazer isso, você pode fazer isso movendo o arquivo binário de /bin/chmod para algum outro caminho como /root/chmod .

Para fazer os usuários acharem que a ferramenta ainda está disponível, você pode criar um script que não faça nada no caminho original em /bin .

Dessa forma, você pode desativar a ferramenta chmod , a menos que você especifique o caminho completo /root/chmod .

    
por 14.09.2011 / 15:45
0

Os contras são que o chmod não estaria disponível para nenhum script que fosse executado como usuário não-root, o que poderia quebrar algumas coisas.

Não está claro quais são os seus requisitos reais, mas pode analisar esta pergunta e as soluções.

    
por 14.09.2011 / 15:45