Como você configura as permissões depende dos seus modelos de segurança e ameaça. E nós não sabemos o que são esses.
Mas, em geral, os arquivos / diretórios só devem ser lidos pelos uids que precisam lê-los e devem ser gravados apenas pelos uids que precisam escrevê-los. Às vezes, isso nem sempre é prático para mapear diretamente para o modelo de permissões do Unix, portanto, o próximo princípio que geralmente se aplica é que a divulgação acidental de informações geralmente é preferível à modificação não autorizada de dados.
O que isto significa no seu caso, é que nenhum dos arquivos / diretórios dentro da árvore de documentos do servidor web deve ser gravável pelo servidor web uid. Em alguns casos, isso pode implicar a montagem do sistema de arquivos somente leitura. Mas obviamente isso torna a vida mais complicada quando você quer mudar seu conteúdo. Então, quem muda o conteúdo? Se for um único usuário (e sempre será um único usuário), suas permissões podem ser:
-rw-r----- devuser wwwuser somefile
drwxr-s--- devuser wwwuser somedir
Assim, seu servidor da Web obtém acesso por meio da propriedade do grupo. O bit de grupo fixo garante que os diretórios / filiais criados herdem o mesmo grupo.
Se você tiver vários usuários alterando arquivos, adicione-os todos a um grupo (digamos, webdev) e torne o acesso do servidor da web por meio das 'outras' permissões:
-rw-rw-r-- devuser webdev somefile
drwxrxsr-x devuser webdev somedir
Certamente, existem ferramentas adicionais que podem adicionar mais separação de privilégios, mas consideraria apenas examiná-las se você estivesse configurando um host compartilhado e precisasse isolar cada vhost.