Linux: como criar um superusuário?

2

Eu tenho três usuários:

  • user_1,
  • user_2 e
  • user_super.

Existem dois diretórios,

  • / root / user_1 (chown -R user_1: user_1)
  • / root / user_2 (chown -R user_2: user_2)

Eu quero que meu user_super possa modificar esses arquivos e poder voltar ao original.

user_1 e user_2 não podem ler / alterar os arquivos uns dos outros e são presos em suas pastas raiz.

Como faço para isso?

PS: user_super não deve ter permissões de root, user_super executará o apache no servidor, portanto, deve estar o mais próximo possível do usuário www-data (Apache).

    
por Devrim 09.09.2009 / 01:15

3 respostas

2

Defina o grupo sticky bit (chmod g + s) em um diretório, para que os arquivos recém-criados herdem a propriedade do grupo e as permissões do grupo. Isso ajudará no caso de você estar lidando com hospedagem apache e vários usuários ftp.

Nós contornamos esse problema em nossos servidores em apache vs. ftp-users executando o apache com mod_itk e definindo os vhosts para serem executados com permissões de propriedade ftp.

    
por 09.09.2009 / 02:06
3

crie um grupo supergrupo com o usuário user_super nele, então

/root/user_1 (chown -R user_1:supergroup)
/root/user_2 (chown -R user_2:supergroup)

Problema com esta configuração: Na maioria das implementações, o chown só pode ser executado pelo superusuário. Usuários desprivilegiados (regulares) que desejam alterar o grupo de um arquivo que possuem podem usar o comando chgrp. Então você pensaria: perfeito, eu deixarei user_super mudar o grupo de volta para o grupo user_1 ou user_2, mas o chgrp só permite user_super mudar a propriedade para um grupo do qual ele é um membro.

Eu acho que user_super não é root?

    
por 09.09.2009 / 01:22
3

Você pode tentar usar o sudo.

Crie entradas no arquivo sudoers para permitir que o user-super assuma os arquivos em / root / user-1 e / root / user-2 e também devolva a propriedade ao usuário-1 e ao usuário-2. / p>

Em seguida, user-super executaria o primeiro comando sudo chown, editaria o arquivo e executaria o segundo comando sudo chown para alterá-lo novamente. Não permita o uso de sudo chown irrestrito, mas padrões específicos.

Ao configurar um servidor de e-mail, eu precisava ter o apache para criar caixas de correio que seriam de propriedade do processo de caixa de correio virtual. Então, o que fiz foi criar um pequeno script que criaria o script e depois mudaria a propriedade para o processo de caixa de correio virtual. Eu adicionei o apache ao arquivo sudoers, permitindo que ele executasse o script. Funciona bem, mas no interesse de uma divulgação completa, você precisará ter cuidado na sua construção do roteiro, pois os erros de segurança podem ser confusos.

    
por 09.09.2009 / 01:49