10 dicas avançadas de segurança para WordPress

Segurança para WordPress é coisa séria: Confira 10 dicas de segurança, além de outras 10 dicas mais básicas, e proteja seu WP de hackers e invasões.

Recentemente Fabio Lobo publicou o post “10 dicas básicas de segurança para WordPress“, que traz ótimas soluções para deixar seu WordPress seguro. Porém, você pode fazer ainda mais para aumentar a segurança para WordPress.

Nossas dicas são mais avançadas porque envolvem código. Então, prepare os backups e prepare-se também para testar bastante!

10 dicas de segurança para WordPress

seguranca para wordpress
Segurança para WordPress: deixe seu WordPress seguro com essas dicas!

Algumas dicas já comentamos por aqui, outras são complementos ao post supracitado. Vamos deixar seu WordPress seguro?

1. Ative a atualização automática do WordPress

Semana passada publicamos por aqui o post “Como configurar a atualização automática do WordPress“. Nele constam as informações para os 3 primeiros itens desta lista, mas vamos repetí-las abaixo por sua importância.

O WordPress recebe atualizações constantes, sendo algumas atualizações de segurança. Então, um WordPress atualizado é um WP seguro. Para garantir que todas as atualizações fiquem em dia, insira o código abaixo no arquivo wp-config.php de seu WordPress:

/* Atualizações automáticas do WordPress */
define('WP_AUTO_UPDATE_CORE', true);

2. Ative a atualização automática dos plugins

Também em seu wp-config.php, insira o código abaixo:

/* Atualizações automáticas de plugins */
add_filter('auto_update_plugin', '__return_true');

3. Ative a atualização automática dos templates

Por fim, se você utiliza um template pago, certamente ele recebe algumas atualizações. Então, utilize o código abaixo em seu wp-config.php:

/* Atualizações automáticas de templates */
add_filter('auto_update_theme', '__return_true');

Importante: Se você realizou alterações no código do template, elas poderão sumir com as atualizações.

4. Desative o editor de temas e plugins

É possível editar o template e os plugins através do próprio WordPress, sabia? Pois bem: se algum membro tem a conta hackeada, o invasor poderá fazer a festa em seu site.

Você pode alterar as permissões dos arquivos no FTP, mas por que não desativar de vez essa função? Utilize o código abaixo no wp-config.php:

/* Desativar o editor de temas e plugins */
define('DISALLOW_FILE_EDIT', true);

5. Elimine os avisos de erros de PHP

Se acontecer algum problema com um plugin ou template, por exemplo, poderá aparecer uma mensagem de erro em seu site. E através de mensagens de erro, um hacker poderá ver o caminho completo do seu servidor.

Para evitar isso, insira o código abaixo no wp-config.php:

/* Desativar mensagens de erros de PHP */
error_reporting(0);
@ini_set(‘display_errors’, 0);

Sim, você deixará de ver possíveis erros, o que poderá ser prejudicial (afinal, se há algum problema, você precisa resolvê-lo logo). Em todo caso, você pode comentar o código cada vez que fizer alguma atualização, ou de tempos em tempos, para ver se está tudo em ordem.

6. Proteja seus arquivos com o .htaccess

Você tem feito várias alterações de segurança importantes no wp-config.php… então é melhor esconder esse arquivo, certo?

No arquivo .htaccess, também na raíz de seu WordPress, utilize o código abaixo:

# Proteger wp-config
<files wp-config.php>
order allow,deny
deny from all
</files>

Você também pode impedir que acessem seu wp-admin e o wp-login através do .htaccess. Porém, nesse caso sugerimos a utilização de um plugin que altera essa URL (o iThemes Security é o recomendado no post citado no início deste texto).

7. Esconda o nome de usuário dos membros

Saber o nome de usuário de algum membro do WordPress já é um passo importante para uma invasão. Então, em primeiro lugar, certifique-se de que não há links para a página dos autores de seu WordPress, já que a url dessas páginas “entregam” o nome de usuário.

Em segundo lugar, copie o código abaixo no functions.php de seu tema – ele fará com que essas urls, que já são geradas por padrão no WordPress, redirecionem para a página inicial do seu site:

/* Redirecionar páginas de usuários */
function redirecionar_usuario() {
if (is_author()) {
wp_redirect( home_url() ); exit;
}
}
add_action('template_redirect', 'redirecionar_usuario');

8. Gere logs de atividades no wp-admin

O já recomendado plugin iThemes Security gera logs de erros, mudanças de arquivos, bloqueios de IPs e tentativas inválidas de login.

O plugin WP Security Log gera logs de atividades dentro do seu WordPress – ou seja, mostra quem fez o que e quando. Por exemplo: se alguém deletou um post, criou um usuário ou modificou alguma coisa, você ficará sabendo. Isso é importante, já que se você vir qualquer atividade suspeita, poderá alterar a senha do usuário antes que mais estragos sejam feitos.

9. Desative avisos de erros de login

Se alguém descobrir a url de login do seu WP e tentar acessá-lo, as mensagens de erro poderão dar algumas dicas para ele. Que tal removê-las de vez? Utilize o código abaixo no functions.php de seu template:

/* Desativar avisos de erros de login */
function erros_login() {
return '';
}
add_filter( 'login_errors', 'erros_login' );

Você pode adicionar alguma mensagem entre as aspas simples, depois de return. Eu prefiro deixar em branco mesmo!

10. Revise as permissões de arquivos no seu FTP

Por fim, mas tão importante quanto os outros itens: Verifique se os arquivos de seu FTP estão com permissão 644 e pastas com permissão 755.

Hospedagem segura para WordPress

Claro, não adianta nada tomar todas essas precauções se a hospedagem não toma nenhuma medida de segurança – e vice-versa.

Em nossa hospedagem compartilhada, além de tomarmos medidas de segurança, também temos experiência com WordPress e podemos te ajudar com todos esses itens acima. Saiba mais: hospedagem WordPress.

Não se esqueça de seguir as outras dicas de segurança para WordPress do link no início do texto!

Por WOWF em 22 de dezembro de 2016 (atualizado em 29 de março de 2019)

Hospedagem Premium para WordPress

Serviço Ultra Gerenciado para você não ter trabalho nenhum.