Permissões de ficheiros WordPress: configuração segura e correta

Permissões de ficheiros incorretas são uma das vulnerabilidades de segurança mais comuns em instalações WordPress — e uma das mais fáceis de corrigir. Permissões demasiado abertas permitem que malware seja escrito em ficheiros do servidor. Permissões demasiado restritivas impedem o WordPress de funcionar. Este guia cobre os valores corretos e como aplicá-los.

Como funcionam as permissões em Linux

Em sistemas Linux/Unix (onde corre a maioria dos servidores web), cada ficheiro e pasta tem três tipos de permissão: leitura (r=4), escrita (w=2) e execução (x=1). Estas são definidas para três grupos: proprietário (user), grupo e outros.

Os valores mais comuns em notação octal:

  • 755: proprietário tem leitura+escrita+execução; grupo e outros têm leitura+execução. Correto para pastas.
  • 644: proprietário tem leitura+escrita; grupo e outros têm apenas leitura. Correto para ficheiros.
  • 600: apenas o proprietário tem leitura+escrita. Para ficheiros muito sensíveis (wp-config.php).
  • 777: todos têm leitura+escrita+execução. Nunca use em produção — qualquer utilizador ou processo no servidor pode modificar o ficheiro.

Permissões recomendadas para WordPress

Ficheiro/PastaPermissãoPorquê
Raiz WordPress (/)755Servidor web precisa de executar; não deve escrever
wp-admin/755Acesso de leitura/execução pelo servidor web
wp-includes/755Idem
wp-content/755WordPress precisa de escrever (uploads)
wp-content/uploads/755WordPress escreve ficheiros de media aqui
wp-content/themes/755Leitura pelo servidor
wp-content/plugins/755Leitura pelo servidor
Todos os ficheiros .php644Leitura pelo servidor, escrita apenas pelo proprietário
wp-config.php600Credenciais — apenas proprietário deve ler
.htaccess644WordPress escreve via WP-Admin em algumas operações

Como verificar e corrigir permissões

Via SSH (método mais eficiente)

# Verificar permissões da instalação WordPress
ls -la /var/www/wordpress/

# Corrigir todas as pastas recursivamente
find /var/www/wordpress -type d -exec chmod 755 {} \;

# Corrigir todos os ficheiros recursivamente
find /var/www/wordpress -type f -exec chmod 644 {} \;

# Proteger wp-config.php especificamente
chmod 600 /var/www/wordpress/wp-config.php

# Verificar uploads (WordPress precisa de escrever)
chmod 755 /var/www/wordpress/wp-content/uploads/

Via cPanel File Manager

Selecione a pasta WordPress → Click direito → Change Permissions. Permite alterar permissões graficamente, com opção de aplicar recursivamente a subpastas e ficheiros.

Via FTP (FileZilla)

Click direito em ficheiro/pasta → File Permissions → altere o valor numérico. Para aplicar recursivamente: marque "Apply to subdirectories" e "Apply to files".

Erros comuns de permissão

777 em pastas de upload

Frequentemente definido para "resolver" um problema de upload de imagens. É desnecessário — 755 é suficiente para o servidor web escrever em uploads (se o servidor web correr como o proprietário dos ficheiros, o que é standard). 777 permite que qualquer utilizador do servidor escreva nessa pasta — um vetor de ataque claro.

wp-config.php com permissão 644

Em hosting partilhado, outros utilizadores no mesmo servidor podem potencialmente ler ficheiros 644 de outras contas. O wp-config.php contém credenciais da base de dados — deve ser 600 ou 640. Em ambientes onde o servidor web é o proprietário do ficheiro, 640 permite leitura pelo servidor sem exposição a outros utilizadores.

Pastas executáveis em wp-content/uploads

PHP não deve ser executável na pasta de uploads. Em Apache, adicione ao .htaccess dentro de wp-content/uploads/:

php_flag engine off
<FilesMatch "\.php$">
    Deny from all
</FilesMatch>

Isto impede que ficheiros PHP maliciosos enviados para a pasta de uploads sejam executados — uma proteção simples e eficaz.

Permissões e o processo de hardening

A verificação de permissões deve ser parte do processo de hardening de segurança WordPress. Juntamente com a desativação de XML-RPC, proteção do wp-admin e 2FA, as permissões corretas formam a base de uma instalação WordPress segura.

Em hosting partilhado onde não tem controlo total, verifique o que o hosting define por defeito e corrija apenas o que está errado — nomeadamente wp-config.php e quaisquer pastas com permissões 777.

Quer que auditemos a segurança dos sites WordPress dos seus clientes?

O nosso serviço de manutenção WordPress inclui auditoria de segurança e hardening de todos os sites sob gestão.

Falar connosco