Restringir usuário com permissão sudo para acessar pastas pessoais

3

Eu tenho um servidor de desenvolvimento Linux com alguns projetos em pastas iniciais pertencentes a diferentes usuários. Devido à natureza do servidor, alguns usuários podem fazer sudo -s para alguma tarefa administrativa. Existe alguma maneira que eu possa impedir os usuários de bisbilhotar outras pastas de casa (ou uma pasta específica)?

    
por user216035 14.02.2017 / 18:44

3 respostas

1

Se alguém puder executar comandos arbitrários como root, poderá alternar para qualquer conta de usuário, para que eles possam fazer o que o usuário puder fazer.

Na prática, você tem três opções.

  • Os usuários privilegiados precisam executar apenas tarefas muito específicas. Então deixe-os apenas executar alguns comandos específicos com o sudo. Isso é seguro apenas se esses comandos não permitirem "escapes de shell", ou seja, se não houver nenhuma maneira de aproveitar esses comandos para executar outros programas. Por exemplo, o gerenciamento de pacotes (permitindo sudo apt-get install … ) frequentemente permite escapes de shell injetando os comandos dentro de um pacote (isso pode ser ok se as assinaturas de pacotes forem verificadas corretamente a partir de fontes conhecidas).
  • Os usuários privilegiados precisam de poderes administrativos, mas não precisam disso no computador "real", tudo o que precisam é de um computador algum (por exemplo, para jogar com configurações de rede). Em seguida, crie ambientes virtuais (por exemplo, uma máquina virtual ou um contêiner lxc ou um namespace ad hoc do Linux) para os usuários privilegiados e não disponibilize os dados de outros usuários nos ambientes virtuais.
  • Use controles sociais em vez de técnicos: conceda aos usuários permissões amplas, mas que eles saibam que qualquer violação de privacidade será tratada com severidade. Isso geralmente é bom quando os usuários são funcionários, mas depende de quão sensíveis são os dados.
por 15.02.2017 / 00:58
2

Se um usuário executar um comando com sudo , ele executará o comando como se fosse root, porque eles são raiz. Portanto, você não pode impedir que um usuário que possa usar o sudo mude para um diretório.

Se você não quiser que os usuários acessem arquivos em um diretório, não será possível fornecer a eles acesso root na máquina.

    
por 14.02.2017 / 18:52
0

Dependendo do que eles precisam ser capazes de fazer, você pode dar a eles acesso sudo a apenas determinados comandos, largando uma linha como essa no arquivo sudoers:

%devgroup ALL=(ALL): /bin/commandname

que faria com que os membros do grupo devgroup só pudessem executar / bin / commandname como root (e, é claro, com este exemplo em particular, você também gostaria de removê-los do grupo wheel).

    
por 15.02.2017 / 00:52

Tags