quando devo usar “apache: apache” ou “nobody: nobody” nos meus arquivos do servidor web?

1

Contexto: Lembro-me, no antigo local de emprego, de como o administrador do servidor da Web sempre me fazia alterar os diretórios de upload de arquivos acessíveis pelo httpd para que fossem de propriedade do apache: apache ou nobody: nobody .

Ele disse que isso era por motivos de segurança.

Pergunta: Você pode me dizer quais foram especificamente as implicações de segurança disso? Também existe uma maneira de fazer o apache rodar como nobody: nobody, e existem implicações de segurança para isso também?

TIA

    
por dreftymac 05.12.2009 / 00:27

2 respostas

1

Várias aplicações usam o usuário nobody como padrão. Por exemplo, você provavelmente nunca quer realmente dizer que o serviço apache esteja sobrescrevendo os arquivos que pertencem ao bind. Ter uma conta por serviço tende a ser uma boa ideia.

Fazendo o apache rodar como ninguém: ninguém é muito fácil, apenas atualize o User e Group . definições. Mas como eu mencionei acima, eu realmente não recomendo esse usuário / grupo em particular. É inteiramente possível que você seja tentado a adicionar um serviço ao sistema em algum momento no futuro que também seja executado como ninguém, e você esquecerá que deu acesso de gravação no sistema de arquivos ao usuário nobody.

Por que você precisava fazer isso para um diretório de upload. Você realmente não precisa alterar o proprietário do diretório para uploads. Eu mudaria apenas o grupo e, em seguida, configuraria as permissões para 2775. Claro, se você configurar um sistema em que muitos usuários compartilhem o mesmo servidor da Web, obter a configuração das permissões para a melhor segurança pode ser muito mais complexo

    
por 05.12.2009 / 00:35
0

Acho que o ponto principal é que, se o servidor da Web não puder gravar nos arquivos por meio do acesso ao grupo de proprietários e proprietários, eles precisarão ser graváveis em todo o mundo.

Agora, um arquivo ou diretório de propriedade do apache ou ninguém soa preferível a um arquivo gravável por qualquer pessoa, incluindo outros serviços.

Não vejo grandes implicações de segurança alterando o usuário efetivo do apache para "nobody", a menos que você tenha outros serviços também em execução como esse usuário. Por outro lado, eu realmente não vejo nenhuma boa razão para que isso não seja deixado como "apache".

    
por 05.12.2009 / 00:35