Estrutura / Permissões de Diretórios Good Wordpress (LNMP)?

2

Aviso: Antes que alguém faça uma menção inteligente ao Google (ou algo parecido), gostaria apenas de observar que estou fazendo essa pergunta porque não consegui encontrar um artigo ou artigos para o meu gosto.

Prefácio:

Amazon EC2 Micro instance (VPS) with Ubuntu 10.10 Server + nginx + php-fpm + Wordpress.

Pergunta:

Obviously there's no right or wrong answer, but nonetheless -- given my stack, what directory structure && file user/group permissions would you recommend?

É claro que a segurança é sempre uma preocupação, portanto a estrutura / permissões ideais não teriam riscos de segurança (ex: chmod 777 wp-content), mas também não teriam problema em funcionar corretamente (upload de imagens para wp-content, plugins) . Além disso, lembre-se de que estamos lidando com o Nginx em vez do Apache.

Eu tentei uma série de soluções, nenhuma das quais eu estou feliz com isso até agora. Esperando ter algumas ideias melhores!

    
por Dan Simmons 19.04.2011 / 06:07

2 respostas

1

Coloque o WordPress no diretório raiz definido com a localização do servidor em seu nginx sites-enabled / site-name.conf

Use o SVN para baixar e instalar o WordPress

$ cd public_html

$ svn co http://core.svn.wordpress.org/tags/3.1.2 .

chown www-data:www-data public_html/ -R

Verifique se o Nginx está sendo executado como www-data ou altere o usuário e o grupo para nginx acima

Quando o WordPress é instalado, todas as categorias serão 755 e os arquivos serão 644, o que é seguro

    
por 27.04.2011 / 01:29
0

Estou preparando um guia sobre isso no momento, porque não há muitas informações boas sobre como configurar melhor a arquitetura exata descrita acima.

Minha configuração é semelhante à configuração de Chirs_O descrita acima.

/ srv / www /

/site1.com/logs
/site1.com/public_html

/site2.com/logs
/site2.com/public_html

/site3.com/logs
/site3.com/public_html

Em uma situação em que sou o único administrador que precisa gerenciar arquivos em cada site, normalmente altero a propriedade do arquivo para um usuário específico para garantir que eu possa facilmente fazer o scp / ftp dos arquivos locais para cada site.

Eu geralmente uso o seguinte comando

chown -R myuser:myuser /site1.com

Isso permite que eu transfira arquivos sem problemas de permissão e também é uma boa configuração segura para veicular esses arquivos.

A desvantagem dessa configuração é que você terá todos os tipos de problemas com instalações de plug-ins, atualizações de wordpress etc. (e uploads de imagens).

Antes de instalar o plugin, atualizo o wordpress Eu normalmente mudo a propriedade de um site de myuser para www-data usando o mesmo comando

chown -R www-data:www-data /site1.com

Eu, então, instalo os plugins que eu preciso e, em seguida, redefinir as permissões de volta para myuser.

Algumas pessoas deixam o www-data como proprietário principal, mas eu entendo que isso não é uma ótima configuração de segurança, mas eu encontrei uma configuração de permissões para o nginx / php5-fpm que facilita a transferência de arquivos em ftp / ssh individual enquanto permite que o plug-in do WordPress seja instalado / atualizado sem a necessidade de definir permissões 777 em pastas específicas, o que é penoso e tem seus próprios problemas de segurança.

Atualmente, estou explorando uma configuração alternativa na qual configuro vhosts individuais diretamente nas contas individuais de cada usuário, por exemplo,

/home/meusuário/www/site1.com/public_html

Isso garante que a conta ftp / ssh para esse usuário esteja restrita a sua própria conta inicial. Atualmente, ainda haveria a necessidade de alterar a propriedade de volta para www-data para atualizações de wordpress etc. mas estou tentando descobrir se existe uma maneira segura de que essas contas de usuário possam ser adicionadas ao grupo www-data para permitir uma melhor dos dois cenários do mundo. Avisará se eu conseguir uma configuração de trabalho.

    
por 13.05.2011 / 00:24