É incomum encontrar o Apache executando como root
em qualquer configuração de estoque. Como você determinou que o Apache está sendo executado como root? Observe que o Apache deve ser iniciado como root para se conectar a portas privilegiadas, mas normalmente perde seus privilégios mais tarde.
Você pode procurar na configuração do Apache (geralmente em /etc/httpd
ou /etc/apache2
, dependendo da sua distribuição) as diretivas User
e Group
(documentadas aqui ). Essas duas diretivas controlam sob qual ID de usuário o Apache executa.
Também é incomum encontrar um sistema que "não tenha outros grupos ou usuários". O que fazer getent passwd
e getent group
mostrar? Realmente não existem outros usuários ou grupos root
? A maioria das distribuições navio com um apache
ou www-data
utilizador ou somesuch e uma configuração correspondente que vai executar o Apache como esse utilizador.
Há uma variedade de guias introdutórios disponíveis para configuração e segurança do Apache. Uma simples pesquisa no Google gera muitos resultados com aparência provável. O RedHat / CentOS Deployment Guide é um bom lugar para começar (se você estiver em um sistema RedHat / CentOS).