Pular para o conteúdo principal
BlogSegurançaComo tornar o WordPress seguro: Passos Avançados

Como tornar o WordPress seguro: Passos Avançados

Segurança avançada do WordPress

A segurança do WordPress é levada muito a sério por sua equipe de desenvolvimento. As correções e atualizações de segurança são freqüentemente lançadas para ajudar a garantir que o WordPress acompanhe um ambiente on-line cada vez mais desafiador. Como parte destes esforços, o WordPress executa um programa de divulgação responsável por vulnerabilidades, para que estas questões não sejam deixadas sem solução.

Além dos esforços da equipe de desenvolvimento do WordPress, os usuários individuais também devem tomar medidas para minimizar seus riscos de segurança - muitas vezes chamados de "endurecimento do WordPress". Várias vitórias rápidas podem proteger seu site WordPress, e nós cobrimos estas etapas fáceis de implementar em um post recente, How to Keep WordPress Secure: O básico.

Além das etapas básicas, há também técnicas de segurança mais avançadas que podem ser empregadas para proteger ainda mais seu site WordPress, bem como importantes medidas de segurança que podem ser ou não empregadas ao gerenciar um site WordPress.

Vamos mergulhar e dar uma olhada nalgumas delas.

SFTP - Conectando-se ao seu servidor

Primeiro, é crucial garantir que quando você se conectar ao seu servidor web, faça isso usando SFTP, que é semelhante ao FTP, exceto que sua senha e outros dados são criptografados enquanto viajam entre você e seu servidor. FileZilla é um excelente aplicativo de transferência de arquivos que suporta vários protocolos de transferência de arquivos, incluindo o SFTP. Você pode descobrir como instalar e transferir arquivos para seu Linode usando o FileZilla aqui.

Prevenção de Ataques com Força Bruta

Ataques por força bruta ocorrem quando um atacante submete repetida e sistematicamente diferentes nomes de usuário e senhas para tentar obter acesso a um site. É importante notar que os ataques por força bruta não são endêmicos para o WordPress. Cada aplicativo da web é suscetível.

A primeira defesa contra este tipo de ataques é certificar-se de que sua senha está segura. O objetivo final de um ataque com força bruta é ganhar entrada em seu site. A escolha de uma senha difícil de ser quebrada foi discutida em nosso artigo anterior para garantir a segurança do WordPress, por isso não entraremos em mais detalhes. Basta dizer, certifique-se de que sua senha é uma boa senha. Também vale a pena permitir a autenticação em duas etapas dentro de sua instância WordPress.

A seguir, use um plugin para limitar o número de tentativas seqüenciais de login em seu site. Um plugin popular é o Limit Login Attempts Reloaded, que tem mais de 1 milhão de downloads. Ele limita o número de tentativas de login que são possíveis através do login normal, assim como o XMLRPC, WooCommerce e páginas de login personalizadas.

Outra opção é mudar o local de login wp-admin. Por padrão, todos os sites WordPress têm suas páginas de login localizadas em /wp-admin (por exemplo, www.examplesite.com/wp-admin.) Os bots que realizam ataques de força bruta muitas vezes têm como alvo imediato esta página. Use o WPS Hide Login para ajudar.

Como sempre, antes de instalar plugins novos e não testados, vale sempre a pena fazer um backup do seu site. Embora a maioria dos plugins populares não prejudique seu site, há sempre a possibilidade de uma incompatibilidade. Um backup lhe dá tranquilidade de que qualquer dano feito por um plugin errante pode ser revertido rápida e facilmente.

Autenticação WordPress Admin HTTP

Você pode bloquear ainda mais seu WP Admin, adicionando a Autenticação HTTP básica. Este processo exigirá que um usuário digite um nome de usuário e uma senha antes mesmo de chegar à página de Login do WP, o que pode ajudar a parar os bots de força bruta em seus rastros.

Para fazer isso, você precisará criar um arquivo .htpasswd. Tente usar um grande recurso gratuito da Hosting Canada para fazer isso. Você precisará digitar o nome de usuário que gostaria de usar junto com uma senha, selecionar um método de criptografia na caixa suspensa, e clicar em 'Gerar Senha'. Uma cadeia de texto longa é gerada. Copie e cole isto em um novo arquivo de texto. Salve este arquivo simplesmente como '.htpasswd'. 

Em seguida, faça o login em seu servidor e vá para sua pasta wp-admin do WordPress. Abra isto e em wp-admin crie uma nova pasta chamada 'htpasswd'. Em seguida, faça o upload de seu arquivo .htpasswd que criamos anteriormente para esta pasta. Você deve transferir seus arquivos usando apenas o modo 'ASCII' e não o modo 'BINÁRIO'. 

A etapa final é criar um novo arquivo que contenha o seguinte:

AuthName "Admins Only"
AuthUserFile /home/public_html/wp-admin/htpasswd/.htpasswd
AuthType basic
Require user yourusername

<Files admin-ajax.php>
    Order allow,deny
    Allow from all
    Satisfy any
</Files>

Você precisará atualizar a localização do AuthUserFile com a URL do diretório completo de seu arquivo .htpasswd, bem como seu nome de usuário com o nome de usuário utilizado para o arquivo .htpasswd. Salve este arquivo como .htaccess e faça o upload deste arquivo .htaccess para sua pasta wp-admin em seu servidor, e pronto. Na próxima vez que você entrar em seu site em www.examplesite.com/wp-admin, você será solicitado a fornecer seu nome de usuário e senha antes que a tela de login do WordPress Admin seja exibida.

Dica útil: Se você não conhece a url do diretório completo de seu arquivo .htpasswd, um truque útil é usar um pequeno script PHP:

<?php
    echo "Absolute path: ", getcwd();
?>

Crie um arquivo que contenha este script chamado testpath.php e faça o upload para o arquivo htpasswd e depois visite esta url (por exemplo www.example.com/wp-admin/htpasswd/testpath.php) para obter o caminho completo do arquivo .passwd.

 A segurança wp-inclui

Há scripts específicos incluídos em sua instalação do WordPress que não se destinam a ser acessados. Eles oferecem, no entanto, uma rota possível para o seu site por hackers. Por causa disso, pode valer a pena bloqueá-los. Você pode bloquear o acesso a estes arquivos com um mod_rewrite no arquivo .htaccess. Para fazer isso, adicione o seguinte código ao seu arquivo .htaccess (normalmente localizado na raiz do documento de seu site WordPress) fora das tags # BEGIN WordPress e # END WordPress; caso contrário, o WordPress poderá sobrescrevê-lo:

# Block the include-only files.
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^wp-admin/includes/ - [F,L]
    RewriteRule !^wp-includes/ - [S=3]
    RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
    RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
    RewriteRule ^wp-includes/theme-compat/ - [F,L]
</IfModule>
 
# BEGIN WordPress

Desativar a edição de arquivos

Muitos aspectos para assegurar um site WordPress giram em torno de tornar a vida mais difícil para um hacker em potencial. Da mesma forma que um ladrão procurará uma casa em uma rua sem luz de alarme ou luzes de segurança, um hacker prefere visar um site que carece de características básicas de segurança em vez de um onde as janelas e portas metafóricas tenham sido firmemente fechadas.

Por padrão, o WordPress permite aos administradores editar arquivos PHP como temas e plugins dentro do Painel de Controle. Como este recurso permite a execução de código, é um alvo óbvio para um hacker. Para a maioria dos desenvolvedores web, as mudanças no código são feitas com um editor de texto como o Sublime em vez de dentro do Dashboard. Faz sentido 'fechar' esta janela específica do WordPress e, ao fazê-lo, remover outro ponto de acesso potencial para um hacker.

Para fazer isto, coloque esta linha de código no arquivo wp-config.php. Esta linha remove os recursos 'edit_themes', 'edit_plugins', e 'edit_files' de todos os usuários:

define(‘DISALLOW_FILE_EDIT’, true);

Embora isto não impeça um hacker de carregar arquivos maliciosos em seu site, ajudará a parar alguns ataques em seu rastro.

Use um Firewall

Um firewall é uma excelente maneira de ajudar a evitar que um atacante chegue ao seu site WordPress. Há um par de opções:

Um Plugin de Firewall

Vários bons plugins de firewall funcionam restringindo o acesso no nível do servidor Apache antes que o WordPress o processe. Um bom exemplo é o All In One WP Security & Firewall ou WordFence. Ambos procurarão filtrar as solicitações recebidas para garantir que nenhum tráfego malicioso possa atingir sua instalação do WordPress.

Firewalls Intermediários

Plugins como o WordFence filtram o tráfego no nível do servidor. Uma abordagem alternativa é interceptar o tráfego a caminho de seu servidor antes de triá-lo e, em seguida, enviá-lo a pedido a seu servidor usando um produto como o Cloudflare. Esta abordagem é popular porque tudo o que você precisa fazer é alterar seus registros DNS para enviar tráfego através de um intermediário, sem necessidade de alterações em seu servidor. 

Próximos passos

A segurança do WordPress continua sendo um tópico popular. Se tudo isso parece ser um trabalho árduo, então considere o uso de um host WordPress gerenciado como o Pressidium, que pode fazer muito do trabalho pesado para você. E finalmente, faça backups regulares de seu site para que você possa dormir bem à noite com o conhecimento de que sempre poderá restaurar seu site.

Comentários (2)

  1. Author Photo
    Atul Kumar Pandey

    Excellent tips. Strong password and using limit login attempts are the quick fix for any WP blog. Being in the same industry I would like to add one more tip – use only trusted and highly rated themes and plugins.

  2. Author Photo

    A good password is great. Also, hiding or changing the wp-admin slug is really helps.

Deixe uma resposta

Seu endereço de e-mail não será publicado. Os campos obrigatórios estão marcados com *