WordPress jest jednym z najpopularniejszych systemów zarządzania treścią (CMS) na świecie. Jego popularność przyciąga jednak uwagę nie tylko użytkowników, ale także hakerów. Jednym ze sposobów na poprawę bezpieczeństwa strony jest zmiana domyślnego adresu logowania. W tym artykule omówimy, jak zmienić adres logowania do strony internetowej w WordPress i zablokować dostęp do standardowych adresów wp-login.php i wp-admin.
Dlaczego Warto Zmienić Adres Logowania w WordPress?
Zmiana adresu logowania w WordPress ma kilka korzyści:
- Poprawa bezpieczeństwa: Hakerzy często atakują strony, próbując odgadnąć dane logowania. Zmiana domyślnego adresu utrudnia im zadanie.
- Redukcja liczby niechcianych prób logowania: Automatyczne boty często atakują domyślne adresy logowania. Przeniesienie strony logowania na inny adres zmniejsza liczbę takich prób.
- Lepsza kontrola nad dostępem: Zmiana adresu logowania pozwala na bardziej precyzyjne monitorowanie, kto próbuje zalogować się do Twojej strony.
Jak Zmienić Adres Logowania w WordPress?
Zmiana adresu logowania w WordPress nie jest trudna i można ją wykonać na kilka sposobów. Najłatwiejszym jest skorzystanie z wtyczki, ale dla bardziej zaawansowanych użytkowników opiszemy również ręczną metodę.
Zmiana Adresu Logowania za Pomocą Wtyczki
Najprostszym sposobem na zmianę adresu logowania jest skorzystanie z wtyczki. Oto kilka popularnych wtyczek, które to umożliwiają:
- WPS Hide Login: Ta wtyczka pozwala na łatwą zmianę adresu logowania bez modyfikacji plików rdzenia WordPressa.
- Rename wp-login.php: Umożliwia zmianę adresu logowania w prosty sposób.
Aby zainstalować wtyczkę, wykonaj następujące kroki:
- Zaloguj się do panelu administracyjnego WordPress.
- Przejdź do sekcji „Wtyczki” i kliknij „Dodaj nową”.
- Wyszukaj wtyczkę, którą chcesz zainstalować, np. „WPS Hide Login”.
- Zainstaluj i aktywuj wtyczkę.
- Przejdź do ustawień wtyczki i skonfiguruj nowy adres logowania.
Ręczna Zmiana Adresu Logowania
Jeśli wolisz ręcznie zmienić adres logowania, możesz to zrobić, modyfikując plik functions.php swojego motywu. Poniżej znajduje się kod, który zmienia adres logowania na „custom-login” (możesz ustalić nazwę jaką chcesz) i blokuje dostęp do wp-login.php oraz wp-admin.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
function start_custom_login_session(){ // Sprawdzamy czy ID sesji istnieje if(!session_id()){ // Jeśi nie to uruchamiamy sesje session_start(); // Jeśli zmienna sesyjna start_login nie istnieje to tworzy ją i automatycznie nadaje wartość false if(!isSet($_SESSION['start_login'])){ $_SESSION['start_login'] = false; } } } // Dodanie akcji w WP przy uruchamianiu add_action('init', 'start_custom_login_session'); // Przekierowanie /wp-admin i /wp-login.php na 404 function redirect_wp_admin_to_404() { global $pagenow; global $wp_query; // Sprawdzamy, czy nasza sesja nie istnieje if(!isSet($_SESSION['start_login']) || !$_SESSION['start_login']){ // Sprawdzamy, czy user nie jest zalogowany if(!is_user_logged_in()){ // Jeśli nie to ustawiamy header 404 i wysyłamy użytkownika do 404 if($pagenow === 'wp-login.php' || (is_admin() && !wp_doing_ajax())){ $wp_query->set_404(); status_header(404); nocache_headers(); get_template_part(404); exit(); } }else{ // Jeśli sesja istnieje to ustaw jej wartosc na false $_SESSION['start_login'] = false; } } } // Dodanie akcji w WP przy uruchamianiu add_action('init', 'redirect_wp_admin_to_404'); // Ustawienie własnego URL logowania function custom_login_url(){ // '/custom-login' należy zmienić na taki URL jaki chcemy (np. '/secret-dashboard') return home_url('/custom-login'); } // Aktualizacja WordPressowego filtra (login_url) add_filter('login_url', 'custom_login_url'); // Wyświetlanie formularza logowania function custom_login_form(){ // '/custom-login' należy zmienić na taki URL jaki chcemy (np. '/secret-dashboard') // Url logowania musi być taki sam jak w funkcji custom_login_url() if(strpos($_SERVER['REQUEST_URI'], '/custom-login') !== false){ // Ustawiamy sesję na true, aby tym razem przy wysyłaniu zapytania POST przez formularz, nasz wp-login.php był dostępny, a nie zwracał błedu 404 $_SESSION['start_login'] = true; // Ustawiamy WordPressowe zmienne na puste, aby nie było błędów (bez tego nie istnieją wcale) $user_login = $error = ''; // Dodajemy pełny formularz logowania (formularz + style) include_once('wp-login.php'); // Kończymy skrypt, inaczej zostanie załadowana stopka motywu die(); } } // Dodanie akcji przed wybraniem przez WP templatu add_action('template_redirect', 'custom_login_form'); |
Podsumowanie
Zmiana adresu logowania w WordPress to skuteczny sposób na zwiększenie bezpieczeństwa Twojej strony internetowej. Niezależnie od tego, czy zdecydujesz się na użycie wtyczki, czy ręczne wprowadzenie zmian, pamiętaj, aby również zablokować dostęp do standardowych adresów logowania. Dzięki temu Twoja strona będzie lepiej chroniona przed nieautoryzowanymi próbami logowania i atakami botów.
Jeśli masz pytania lub napotkasz problemy podczas zmiany adresu logowania, skonsultuj się ze specjalistą lub poszukaj pomocy na forach WordPress. Zabezpieczenie strony to kluczowy krok w utrzymaniu jej w pełni funkcjonalnej i bezpiecznej.