Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Copa WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Como limitar o acesso por IP ao seu arquivo wp-login.php no WordPress

Deseja limitar o acesso por endereço IP ao seu arquivo wp-login.php no WordPress?

A página de login do WordPress é frequentemente atacada por ataques DDoS e hackers para obter acesso ao seu site. Limitar o acesso a endereços IP específicos pode bloquear efetivamente essas tentativas.

Neste artigo, mostraremos como limitar facilmente o acesso por IP ao seu arquivo wp-login.php no WordPress.

How to Limit Access by IP to Your wp-login file in WordPress

Por que limitar o acesso ao wp-login.php por endereço IP?

A página de login de um site WordPress (normalmente, wp-login.php) é onde os usuários vão para fazer login no seu site.

Como proprietário de um site, ele lhe dá acesso à área de administração do WordPress, onde você pode fazer a manutenção do site, escrever conteúdo e gerenciar seu site.

No entanto, sabe-se que os ataques de força bruta comuns na Internet têm como alvo a página wp-login.php para obter acesso a sites. Mesmo que não consigam entrar, eles ainda poderão tornar seu site mais lento ou até mesmo travá-lo.

Uma maneira de lidar com essa situação é bloquear os endereços IP de onde os ataques estão vindo (falaremos sobre isso mais adiante no artigo).

Um endereço IP é como um número de telefone que identifica um computador específico na Internet. Os hackers podem usar um software para alterar seus endereços IP.

No entanto, ataques mais sofisticados usam um conjunto maior de endereços IP e talvez não seja possível bloquear todos eles.

Nesse caso, você pode limitar o acesso a endereços IP específicos usados por você e por outros usuários no seu site.

Dito isso, vamos dar uma olhada em como limitar facilmente o acesso ao arquivo wp-login.php por endereços IP específicos usando três maneiras diferentes, incluindo o firewall de segurança na nuvem.

1. Limitar o acesso à página de login do WordPress por endereço IP

Para esse método, você precisará adicionar algum código ao arquivo .htaccess.

O arquivo .htaccess é um arquivo especial de configuração do servidor que fica na pasta raiz do seu site e pode ser acessado por meio de FTP ou do aplicativo Gerenciador de arquivos no painel de controle de hospedagem do WordPress.

Basta conectar-se ao seu site WordPress usando um cliente FTP e editar o arquivo .htaccess adicionando o seguinte código na parte superior.

<Files wp-login.php>
        order deny,allow
        Deny from all
 
# whitelist Your own IP address
allow from xx.xxx.xx.xx
 
#whitelist some other user's IP Address
allow from xx.xxx.xx.xx
 
</Files>

Não se esqueça de substituir os XXs por seus próprios endereços IP. Você pode encontrar facilmente seu endereço IP visitando a página do SupportAlly.

SupportAlly

Se houver outros usuários que também precisem fazer login no seu site, peça a eles que forneçam seus endereços IP. Em seguida, você também pode adicioná-los ao arquivo .htaccess.

Aqui está outro exemplo do código mencionado acima.

<Files wp-login.php>
        order deny,allow
        Deny from all
 
# Whitelist John as website administrator
allow from 35.199.128.0
 
#Whitelist Tina as Editor 
allow from 108.59.80.0

# Whitelist Ali as moderator
allow from 216.239.32.0
 
</Files>

Agora, os usuários com esses endereços IP poderão visualizar o arquivo wp-login.php e fazer login no seu site. Outros usuários verão a seguinte mensagem de erro:

Forbidden error

2. Bloqueio do acesso de endereços IP específicos ao seu site

Esse método é totalmente o oposto do primeiro método.

Em vez de limitar o acesso à página de login do WordPress a endereços IP específicos, você poderá bloquear os endereços IP usados para atacar seu site.

Esse método é particularmente útil para sites de associação do WordPress, lojas de comércio eletrônico ou outros sites em que vários usuários precisam fazer login para acessar suas contas.

A desvantagem desse método é que os hackers podem alterar seus endereços IP e continuar atacando seu site.

Felizmente, muitas das tentativas comuns de invasão do WordPress usam um conjunto fixo de endereços IP, o que torna esse método eficaz na maioria dos casos.

Etapa 1: Localizar os endereços IP ofensivos que você deseja bloquear

Primeiro, você precisa encontrar os endereços IP usados para atacar seu site.

A maneira mais fácil de encontrar os endereços IP ofensivos é examinar os registros do servidor. Basta ir até o painel de controle da sua conta de hospedagem e clicar no ícone de registros “Raw Access”.

Raw access logs

Na próxima página, clique no nome do seu domínio para fazer download dos registros de acesso. Isso fará o download de um arquivo com extensão gz.

Você precisará extrair o arquivo e abri-lo com um editor de texto como o Notepad ou o TextEdit.

Aqui você encontrará os endereços IP que estão acessando repetidamente a página wp-login.php.

Finding IP addresses attacking your website

Copie e cole os endereços IP em um arquivo de texto separado em seu computador.

Etapa 2. Bloqueio de endereços IP suspeitos

Em seguida, é necessário fazer login no painel de controle da hospedagem do WordPress e clicar no ícone “IP Blocker”.

IP blocker app in hosting control panel

Na tela seguinte, basta copiar e colar os endereços IP que deseja bloquear e clicar no botão “Add” (Adicionar).

Block IP address

Repita o processo para bloquear quaisquer outros endereços IP suspeitos que você desejar.

Isso é tudo! Você conseguiu bloquear completamente o acesso de endereços IP suspeitos ao seu site.

Posteriormente, se você precisar desbloquear um desses endereços IP, basta fazer isso no aplicativo bloqueador de IP.

Unblock IP addresses

3. Proteção do login do WordPress com o firewall do site

Como administrador de um site, talvez você não queira gastar muito tempo gerenciando endereços IP que podem acessar sua página de login do WordPress.

A maneira mais fácil de proteger suas páginas de login do WordPress é usar o Sucuri. Ele é o melhor firewall para WordPress que acompanha um plugin de segurança abrangente para WordPress.

O firewall de site da Sucuri filtra automaticamente endereços IP suspeitos de acessar arquivos importantes do núcleo do WordPress sem que eles cheguem ao seu site.

How website firewall blocks attacks

Esse método também melhora o desempenho e a velocidade do WordPress, pois impede que atividades suspeitas reduzam a velocidade do servidor.

Além disso, a Sucuri também vem com uma rede CDN integrada. Ela serviria automaticamente arquivos estáticos como imagens, folhas de estilo e JavaScript de um servidor mais próximo dos seus usuários.

Você pode facilmente colocar na lista branca os endereços IP dos usuários se eles não conseguirem acessar as páginas de login do WordPress.

Whitelist IP address

Alternativas: MalCare ou Cloudflare Free CDN

Esperamos que este artigo tenha ajudado você a aprender como limitar o acesso por endereço IP ao seu arquivo wp-login.php. Talvez você também queira consultar nosso guia completo de segurança do WordPress ou ver estas dicas adicionais para proteger a área de administração do WordPress.

Se você gostou deste artigo, inscreva-se em nosso canal do YouTube para receber tutoriais em vídeo sobre o WordPress. Você também pode nos encontrar no Twitter e no Facebook.

Divulgação: Nosso conteúdo é apoiado pelo leitor. Isso significa que, se você clicar em alguns de nossos links, poderemos receber uma comissão. Veja como o WPBeginner é financiado, por que isso é importante e como você pode nos apoiar. Aqui está nosso processo editorial.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

O kit de ferramentas definitivo WordPress

Obtenha acesso GRATUITO ao nosso kit de ferramentas - uma coleção de produtos e recursos relacionados ao WordPress que todo profissional deve ter!

Reader Interactions

27 ComentáriosDeixe uma resposta

  1. Syed Balkhi

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Jiří Vaněk

    I copied the directives to the website, adjusted the IP addresses, and placed them in the .htaccess file. It works perfectly for both IP addresses that are now set in the .htaccess.

  3. Av

    in regards to a woocommerce site, is this function useful?
    login can be done from my-account page.

    • WPBeginner Support

      If you have multiple users logging in to your site for something like WooCommerce then this would not be something you would use. This would normally be for a site with a limited number of users.

      Administrador

  4. Michael Pepper

    Thanks for the article, helpful!

    • WPBeginner Support

      Glad our article was helpful :)

      Administrador

  5. Mick

    For some reason when I use this the whitelisted ip is blocked too.

    any idea why?

    • WPBeginner Support

      You may want to ensure you set the correct IP and if you are using a VPN or something similar that may be the root of the issue

      Administrador

  6. Bahar Ali

    I used the above code and it somehow apply’s to every page of the site for example my home even shows prohibited.

    • WPBeginner Support

      You may first want to check with your hosting provider to ensure there isn’t a conflicting setup on their end.

      Administrador

  7. Unni Krishnan

    Good One guys,
    As you stated in the last section, I do have dynamic IPs for my mobile connection. Though I have white listed my Broadband IP, getting stuck while accessing on the go.
    Do you know if any plugins help to solve this ?

    • Unni Krishnan

      Also, such requests to wp-login.php are getting redirected to the homepage. Is this normal ?

  8. FrancescoElzy

    Hmm it seems like your blog ate my first comment (it was super long) so I guess I’ll just sum it up what I wrote and say, I’m thoroughly enjoying your blog. I too am an aspiring blog blogger but I’m still new to the whole thing. Do you have any helpful hints for newbie blog writers? I’d genuinely appreciate it.

  9. Stéfano Willig

    We have made our ftp accessable only by certain IP.
    Now I can’t install or update wordpress directly via wordpress…
    What can I do?

  10. Jobbatam

    Great tips and works for me.
    But, Can i redirect wp-login to error 404?
    If can, what code i add into code above?

    thanks

  11. MargaretMacnamar

    It’s very simple to find out any matter on net as compared to textbooks, as I found this post at this website.

  12. EQHRaymond

    Thank you for the function. Post aided me a whole lot

  13. Rex Wickham

    If you want to add more than one IP you can do this:

    1. you can use a partial IP:

    Allow from 145.50.39

    This will allow IP from 145.50.39.0 to 145.50.39.255

    2. you can use a netmask or a CIDR:

    Allow from 145.50.39.0/255.255.255.224

    or

    Allow from 145.50.39.0/27

    This will allow IP from 145.50.39.0 to 145.50.39.31.

    • Julius Musembi

      This is a great workaround.

  14. David Swanson

    I added the code to my .htaccess but when my users logout they receive Error 403.
    When they click logout the link is /wp-login.php?action=logout

    Anyway to fix this?

  15. Brijesh

    Great Tip! But i got a problem. It locks admin login from others ips, but if a registered user sign out from site, code also restricts that. I mean when user click sign out, it gives forbidden message. How to solve it?

  16. Rafaqat

    Thanks for your quick guideline to protect from excessive and illegal log in attempts. Actually there is a free plugin “better wp security” that can manage nearly all security issues regarding,login attempts,wp.config file,.htaccess file and many more. I think one should give it a try.

  17. Kris

    To get around the dynamic IP issue you can reference an htpasswd.

  18. Baptiste Legrand

    Thanks for this great tip ! But i’m a but confused : should I paste this snippet in my root .htacess file, or into my wordpress/.htaccess file ?

    Cheers (and btw, I just LOVE wpbegginer.com, keep up the good work !)

  19. Editorial Staff

    With dynamic IPs this can be a pain. You can set Apache Protect on it, but that is a bit more complex. #whitelist line is just to let me know which IP is which.

    Administrador

    • Steve Pringle

      You should mention that plugins (like JetPack) may have issues when you limit access.

Deixe uma resposta

Obrigado por deixar um comentário. Lembre-se de que todos os comentários são moderados de acordo com nossos política de comentários, e seu endereço de e-mail NÃO será publicado. NÃO use palavras-chave no campo do nome. Vamos ter uma conversa pessoal e significativa.