Como gerenciar a administração não privilegiada dos serviços do sistema usando o Debian?

3

No nosso laboratório, temos vários serviços gerenciados por diferentes alunos de phd (como eu). A flutuação é alta e as pessoas fazem o trabalho ao lado de suas tarefas de pesquisa. Até agora, os serviços estavam sendo executados em máquinas diferentes, com diferentes configurações de sistema operacional que podem resultar em problemas administrativos rapidamente.

Queremos consolidar nossa configuração de serviço. Nossa idéia principal é que os responsáveis pelos serviços não devem mais se intrometer no sistema subjacente. Além dos sistemas principais, como o NFS e o Kerberos, um serviço típico já pode ser executado como não-raiz. Estou falando sobre o apache, o mysql, o subversion, o mail com o openxchange e assim por diante. Redirecionar portas privilegiadas também não é problema ( source ).

O que resta é a configuração do serviço e sua carga útil. Um cenário que imaginamos é que todo serviço tem seu próprio diretório de usuário e home, acessível pelos administradores correspondentes. O backup e o fallback do serviço são fáceis, pois tudo que é necessário para o serviço ser executado é encontrado em um só lugar.

  • Existem formas estabelecidas para criar tal configuração?
  • Faz uma maioria exclusiva método existe para fazer encontrar serviços seus arquivos (exceto no sistema diretórios) enquanto ainda usa o pacotes debian correspondentes?
  • Há alguma pegadinha com a nossa ideia de que podemos ter esquecido?
  • Você talvez alegar que a virtualização é a resposta para o nosso problema? (em nosso POV, não nos ajudaria manter o sistema configuração estritamente separada do serviço configuração.)

Obrigado por qualquer conselho!

    
por ypnos 15.05.2010 / 17:23

2 respostas

1

Eu pensei às vezes sobre o que você está tentando fazer, mas no final eu sempre recorro ao sudo. Eu acho que nativamente no linux é muito difícil alcançar esse objetivo, talvez com algum uso do SElinux. Veja este artigo:

link

Não é muito fácil, mas é intrigante. Talvez um pouco mais fácil seria usar solaris e é possibilidades de rbac. Mover arquivos de configuração de serviços em algum outro diretório é um tipo de confusão quando você precisa atualizar os pacotes. Nesse caso, talvez o melhor seja reembalar o software e alterar os diretórios de destino.

    
por 15.05.2010 / 18:24
1

não deve ser muito difícil executar uma instalação do apache2 em todo o sistema, com configurações de domínio para cada usuário em seu próprio diretório.

o mesmo vale para o mysql, muitos usuários podem utilizar o mesmo servidor mysql, sem bater nos cotovelos, e se necessário, o mysql pode ser executado sem privilégios, dentro do próprio diretório do usuário.

não tenho muita certeza sobre o svn, mas presumo que seria outro caso de um servidor que poderia rodar sem privilégios, ou uma instalação do sistema com configurações de usuário personalizadas.

mail e openexchange podem ser um assunto totalmente separado. não está familiarizado com o openexchange, mas um servidor de correio, como o postfix, pode ser configurado em chroot na casa de um usuário, sendo executado em uma porta sem privilégios.

para o apache2 e arquivos de usuário personalizados, tudo que você precisa é de uma linha como:

Include /home/*/httpd/

na configuração do seu sistema no apache. Isso permitiria que os usuários tivessem um diretório ~/httpd/ onde pudessem colocar seus arquivos de configuração para seus próprios VirtualHosts, e assim por diante.

    
por 15.05.2010 / 18:38