Você não deve conceder acesso ao sudo se precisar ter responsabilidade e não puder responsabilizá-los facilmente. Talvez se você bloqueá-lo especificamente para "sudo service apache2 reload" e deixá-los executar esse comando com esses argumentos.
Para a configuração de edição, use as permissões acl / filesystem para fornecer acesso a gravação nos arquivos de configuração específicos que devem ser alterados. Dar a eles sudo
acesso a um editor significa que eles podem editar / modificar qualquer arquivo no sistema, incluindo sudo
, ou alterar a configuração de sudo
para que ele não registre nada.
Se eles puderem instalar o software, eles poderão instalar softwares mal-intencionados. Não deixe que façam isso, tenha alguém que você possa responsabilizar pelo bem-estar do sistema.
Se eles puderem remendar bibliotecas, eles poderão corrigir bibliotecas principais e injetar códigos maliciosos. Não deixe que façam isso, tenha alguém que você possa responsabilizar pelo bem-estar do sistema (se for necessário).
O sudo
pode ser configurado para registrar todos os comandos no syslog, e você pode configurar o syslog para encaminhar as entradas de log para um servidor seguro na rede, para manter a responsabilidade nos registros.
Eu provavelmente não daria a ele sudo
access, mas configure o sistema de forma que ele esteja em um grupo que possa gravar nos arquivos de configuração do apache e na webroot.
Ele precisará de uma maneira de informar ao apache para recarregar a configuração, para que você possa procurar uma chave ssh que não tenha permissão para descartar, mas ativa service apache2 restart
quando alguém faz login com ela. A alternativa seria usar um programa setuid que não recebe entradas e o reinício do apache. Ou ele pode enviar um ping por e-mail ou mensagem instantânea quando ele precisar ser recarregado.
Para instalar pacotes, eu gostaria que ele lhe enviasse uma lista e, depois de dar uma olhada na lista, instalasse-os. Do ponto de vista da segurança, alguém responsável (você) deve estar baixando / compilando / corrigindo quaisquer bibliotecas que precisem ser corrigidas.
sudo
já deveria estar registrando todos os comandos para o syslog (pelo menos, por padrão, no Ubuntu, se bem me lembro, pode ser diferente em sua configuração), então você deve provavelmente verificar se isso é independente, e para adicionar responsabilidade, configure o syslog para logar em um servidor syslog remoto que possa ser protegido.
Se você geralmente confia no empreiteiro, então provavelmente não há muito o que realmente precisa se preocupar. Mas se você tiver para ser capaz de responsabilizá-lo, então é necessário olhar para isso a partir de um "qual é o pior que ele poderia fazer com o privilégio X ?" ponto de vista.