Um fato muito negligenciado por quem hospeda o seu próprio site WordPress são as permissões de arquivos. Essa configuração é que diz para o servidor quem pode ver, editar e executar seus arquivos e diretórios.
Se você possui uma hospedagem compartilhada, os riscos de uma má configuração são reduzidos por ter um usuário FTP para cada site. Agora, se você possui diversos sites hospedados no mesmo servidor usando o mesmo usuário FTP tenha muito cuidado.
Resumindo
Para os mais apressadinhos (ou nós da Agência Doggus buscando o comando certo pela n-ésima vez) aqui vão as permissões padrão para WordPress:
Diretórios: 755
Arquivos: 644
Comando UNIX para alterar as permissões de todos os diretórios do projeto (Entenda o comando antes de executar).
$ find . -type d -exec chmod 755 {} \;
Comando UNIX para alterar as permissões de todos os arquivos do projeto (Entenda o comando antes de executar).
$ find . -type f \-exec chmod 644 {} \;
Atenção: Alguns plugins exigem permissões diferenciadas para seus diretórios.
Entendendo as Permissões
As permissões de arquivos são informações que o sistema operacional utiliza para saber quem pode acessar, editar e executar os arquivos que estão no disco rígido. Por exemplo, os arquivos de configuração do sistema operacional não podem ser editados nem excluídos por usuários comuns, evitando assim, que o seu filho apague os arquivos de funcionamento do Windows (true story, veja no final os detalhes).
Proprietário do Arquivos (Eu, Nós e Eles)
Antes de alterar as permissões, precisamos entender quem é o dono do arquivo. Para todo arquivo salvo no disco rígido é salvo também a informação de quem é o seu “dono” e qual é o seu “grupo”.
O dono do arquivo é, geralmente, quem o salvou. O grupo do arquivo é, geralmente, o mesmo grupo do usuário que o salvou. Legal. até aqui tudo bem.
Nós também temos a informação de “Outros” (others) e o que eles podem fazer com o arquivo. Para quem é do mundo UNIX, podemos ver os detalhes de posse dos arquivos executando o comando ls -l em um diretório:
Permissões | Dono | Grupo | Arquivo
drwxr-xr-x mauricio mauricio wp-content
-rw-r--r-- mauricio mauricio wp-cron.php
drwxr-xr-x mauricio mauricio wp-includes
-rw-r--r-- mauricio mauricio wp-links-opml.php
-rw-r--r-- mauricio mauricio wp-load.php
-rw-r--r-- mauricio mauricio wp-login.php
Desconsiderando as permissões e os arquivos, você pode verificar que o dono e o grupo do arquivo são “mauricio”.
Permissões dos Arquivos (Quem pode o quê)
Ainda usando a listagem anterior, você pode conferir os dados da coluna “permissões” e comparar com o diagrama abaixo.
O primeiro caractere define se é um arquivo ou um diretório. Na sequência, temos os 3 caracteres definindo as permissões do dono, depois do grupo e depois dos “outros” (others).
As permissões são definidas a partir de um número binário de 3 dígitos (000). Acompanhe por exemplos:
- 001 | –x
- Permissão de execução (1 em decimal)
- 010 | -w-
- Permissão de escrita (2 em decimal)
- 011 | -wx
- Escrita + Execução (3 em decimal)
- 100 | r–
- Permissão de leitura (4 em decimal)
- 101 | r-x
- Leitura + execução (5 em decimal)
- 110 | rw-
- Leitura + escrita (6 em decimal)
- 111 | rwx
- Todas as permissões (7 em decimal)
Entendendo os Comandos
Agora vamos entender os comandos que mostramos lá no início.
find . -type d
Procura todos os arquivos a partir do diretório atual que sejam diretórios.
chmod 755
Altera as permissões do arquivo para 755 (octal).
Referências
True Story (Ou como eu apaguei o Windows do computador de trabalho do meu pai)
Quando eu era criança, nós tínhamos um computador Windows 95 em casa que o meu pai usava para trabalhar.
É claro que, como toda criança, eu queria instalar joguinhos e ficar brincando com aquele monte de ferro que fazia barulho. Desde o início, meus pais deixaram claro que não era para tocar no computador, afinal eles custavam MUITO dinheiro e tinha todo o trabalho do meu pai dentro.
Bom, depois de muita insistência, eles deixaram eu instalar UM jogo e fizeram questão de fazer a instalação comigo para evitar problemas. Depois de algumas semanas, cansei do jogo e decidi apagar para liberar espaço. O nome do jogo era “COMMANDOS”.
Eu procurei em todas as pastas do computador essa mesma palavra e fui apagando. Até que encontrei o “COMMAND.exe” e apaguei também. Bom, depois de desligar o computador ele nunca mais ligou.
Depois disso, vale a pena investir um tempo criando usuários, grupos e definir permissões adequadamente para todo mundo.
Comentários