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

Jak ograniczyć dostęp przez IP do twojego pliku wp-login.php w WordPress?

Czy chcesz ograniczyć dostęp według adresu IP do twojego pliku wp-login.php w WordPress?

Strona logowania WordPress jest często atakowana przez ataki DDoS i hakerów w celu uzyskania dostępu do twojej witryny internetowej. Ograniczenie dostępu do określonych adresów IP może skutecznie zablokować takie próby.

W tym artykule pokażemy, jak łatwo ograniczyć dostęp przez IP do twojego pliku wp-login.php w WordPress.

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

Dlaczego ograniczać dostęp do wp-login.php przez adres IP?

Strona logowania do witryny internetowej WordPress (zazwyczaj wp-login.php) to miejsce, w którym użytkownicy logują się do twojej witryny.

Jako właściciel witryny internetowej daje ci dostęp do obszaru administracyjnego WordPress, w którym możesz przeprowadzać konserwację witryny, pisać treści i zarządzać witryną.

Jednak powszechne ataki sił owe w Internecie są znane z atakowania strony wp-login.php w celu uzyskania dostępu do witryn internetowych. Nawet jeśli nie uda im się uzyskać dostępu, mogą spowolnić twoją witrynę internetową lub nawet spowodować jej awarię.

Jednym ze sposobów radzenia sobie z tą sytuacją jest blokowanie adresów IP, z których pochodzą ataki (Zamierzasz o tym porozmawiać w dalszej części artykułu).

Adres IP jest jak numer telefonu, który identyfikuje konkretny komputer w Internecie. Hakerzy mogą używać oprogramowania do zmiany adresów IP.

Jednak bardziej wyrafinowane ataki wykorzystują większą pulę adresów IP i może nie być możliwe zablokowanie ich wszystkich.

W takim przypadku możesz ograniczyć dostęp do określonych adresów IP używanych przez Ciebie i innych użytkowników Twojej witryny internetowej.

Biorąc to pod uwagę, przyjrzyjmy się, jak łatwo ograniczyć dostęp do pliku wp-login.php przez określone adresy IP przy użyciu 3 różnych sposobów, w tym zapory bezpieczeństwa w chmurze.

1. Ograniczenie dostępu do strony logowania WordPress według adresu IP

W przypadku tej metody konieczne będzie dodanie kodu do pliku .htaccess.

Plik .htaccess to specjalny plik konfiguracyjny serwera, który znajduje się w katalogu głównym twojej witryny internetowej i do którego można uzyskać dostęp za pomocą FTP lub aplikacji Menedżer plików w panelu sterowania hostingu WordPress.

Wystarczy połączyć się z twoją witryną WordPress za pomocą klienta FTP i edytować plik .htaccess, dodając następujący kod na górze.

<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>

Nie zapomnij zastąpić XX Twoim własnym adresem IP. Możesz łatwo znaleźć twój adres IP, przechodząc na stronę SupportAlly.

SupportAlly

Jeśli masz innych użytkowników, którzy również muszą logować się do twojej witryny internetowej, możesz poprosić ich o podanie swoich adresów IP. Można je następnie dodać do pliku .htaccess.

Oto kolejny przykład powyższego kodu.

<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>

Teraz użytkownicy z tymi adresami IP będą mogli zobaczyć plik wp-login.php i zalogować się do twojej witryny internetowej. Inni użytkownicy zobaczą następujący komunikat o błędzie:

Forbidden error

2. Blokowanie określonych adresów IP przed dostępem do twojej witryny internetowej

Ta metoda jest całkowitym przeciwieństwem pierwszej metody.

Zamiast ograniczać dostęp do strony logowania WordPress do określonych adresów IP, będziesz mógł blokować adresy IP używane do atakowania twojej witryny internetowej.

Ta metoda jest szczególnie przydatna w przypadku witryn członkowskich WordPress, sklepów e-handel lub innych witryn internetowych, w których wielu użytkowników musi się zalogować, aby uzyskać dostęp do swoich kont.

Wadą tej metody jest to, że hakerzy mogą zmienić swój adres IP i kontynuować atak na twoją witrynę internetową.

Na szczęście wiele typowych prób włamań do WordPressa wykorzystuje poprawki adresów IP, co czyni tę metodę skuteczną w większości przypadków.

Krok 1: Znalezienie obraźliwych adresów IP, które chcesz zablokować

Po pierwsze, musisz znaleźć adresy IP używane do atakowania twojej witryny internetowej.

Najłatwiejszym sposobem na znalezienie obraźliwych adresów IP jest przejrzenie logów twojego serwera. Wystarczy przejść do panelu sterowania twojego konta hostingowego i kliknąć ikonkę „Raw Access”.

Raw access logs

Na następnej stronie kliknij nazwę twojej domeny, aby pobrać logi dostępu. Spowoduje to pobranie pliku z rozszerzeniem gz.

Należy wyodrębnić plik i otworzyć go za pomocą edytora tekstu, takiego jak Notatnik lub TextEdit.

Tutaj znajdziesz adresy IP, które wielokrotnie trafiają na stronę wp-login.php.

Finding IP addresses attacking your website

Skopiuj i wklej adresy IP do osobnego pliku tekstowego na twoim komputerze.

Krok 2. Blokowanie podejrzanych adresów IP

Następnie należy logować się do twojego panelu kontrolnego hostingu WordPress i kliknąć ikonkę „IP Blocker”.

IP blocker app in hosting control panel

Na następnym ekranie wystarczy skopiować i wkleić adresy IP, które mają zostać zablokowane, a następnie kliknąć przycisk „Dodaj”.

Block IP address

Powtórz ten proces, aby zablokować inne podejrzane adresy IP.

To wszystko! Udało ci się całkowicie zablokować podejrzanym adresom IP dostęp do twojej witryny internetowej.

Później, jeśli zajdzie potrzeba odblokowania jednego z tych adresów IP, można to po prostu zrobić z poziomu aplikacji do blokowania adresów IP.

Unblock IP addresses

3. Zabezpieczenie logowania do WordPressa za pomocą zapory witryny internetowej

Jako administrator witryny internetowej możesz nie chcieć poświęcać zbyt wiele czasu na zarządzanie adresami IP, które mogą uzyskać dostęp do twojej strony logowania WordPress.

Najprostszym sposobem na zabezpieczenie twoich stron logowania WordPress jest użycie Sucuri. Jest to najlepsza zapora WordPress, która towarzyszy kompleksowej wtyczce zabezpieczeń WordPress.

Zapora sieciowa Sucuri automatycznie odfiltrowuje podejrzane adresy IP przed dostępem do ważnych plików rdzenia WordPressa, które nigdy nie docierają do twojej witryny internetowej.

How website firewall blocks attacks

Ta metoda poprawia również wydajność i szybkość twojego WordPressa, ponieważ blokuje podejrzane włączanie spowalniające twój serwer.

Co więcej, Sucuri posiada również wbudowaną sieć CDN. Będzie ona automatycznie obsługiwać pliki statyczne, takie jak obrazki, arkusze stylów i JavaScript, z serwera znajdującego się bliżej twoich użytkowników.

Możesz łatwo umieścić adresy IP użytkowników na białej liście, jeśli nie mogą oni uzyskać dostępu do stron logowania WordPress.

Whitelist IP address

Alternatywy: MalCare lub Cloudflare Free CDN

Mamy nadzieję, że ten artykuł pomógł ci dowiedzieć się, jak ograniczyć dostęp przez adres IP do twojego pliku wp-login.php. Możesz również zapoznać się z naszym kompletnym przewodnikiem po zabezpieczeniach WordPress lub zapoznać się z tymi dodatkowymi wskazówkami dotyczącymi ochrony obszaru administracyjnego WordPress.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Ujawnienie: Nasze treści są wspierane przez czytelników. Oznacza to, że jeśli klikniesz na niektóre z naszych linków, możemy otrzymać prowizję. Zobacz jak WPBeginner jest finansowany, dlaczego to ma znaczenie i jak możesz nas wspierać. Oto nasz proces redakcyjny.

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.

Najlepszy zestaw narzędzi WordPress

Uzyskaj BEZPŁATNY dostęp do naszego zestawu narzędzi - zbiór produktów i zasobów związanych z WordPressem, które każdy profesjonalista powinien mieć!

Reader Interactions

26 komentarzyZostaw odpowiedź

  1. 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.

  2. 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.

      Administrator

  3. Michael Pepper

    Thanks for the article, helpful!

    • WPBeginner Support

      Glad our article was helpful :)

      Administrator

  4. 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

      Administrator

  5. 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.

      Administrator

  6. 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 ?

  7. 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.

  8. 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?

  9. 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

  10. MargaretMacnamar

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

  11. EQHRaymond

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

  12. 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.

  13. 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?

  14. 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?

  15. 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.

  16. Kris

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

  17. 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 !)

  18. 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.

    Administrator

    • Steve Pringle

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

Zostaw odpowiedź

Dziękujemy za pozostawienie komentarza. Pamiętaj, że wszystkie komentarze są moderowane zgodnie z naszymi polityka komentarzy, a Twój adres e-mail NIE zostanie opublikowany. NIE używaj słów kluczowych w polu nazwy. Przeprowadźmy osobistą i konstruktywną rozmowę.