20 09 10 Reset hasła administratora w Wordpresie
Hasło administratora w Wordpresie nie jest w żadnym stopniu lepiej chronione niż te użytkowników o mniejszych przywilejach. Może się więc zdarzyć, że pewnego dnia administrator nie będzie w stanie zalogować się przy pomocy dotychczasowych danych. Nienijszy wpis ma na celu pokazać jak ustawić hasło administratora bloga spoza panelu administracyjnego.
Administrator w systemie WordPress ma nieograniczone możliwości wprowadzania zmian na blogu. Oznacza to, że jeżeli ktoś złamie jego hasło, praktycznie przejmie pełną kontrolę nad witryną. Przy słabym haśle zadanie wcale nie musi być bardzo trudne do wykonania. Utrata hasła może przydarzyć się także w innych okolicznościach, natomiast jego odzyskanie bywa problematyczne.
Hasła w nowych wersjach WordPressa są nieco bardziej skomplikowane niż miało to miejsc wcześniej. Do ich tworzenia i sprawdzania służy klasa class-phpass.php, która znajduje się w katalogu wp-includes/. Końcowe funkcje, które korzystają z metod instancji wyżej nadminionej klasy, to między innymi wp_hash_password, oraz wp_set_password. Obie je można znaleźć w pliku wp-includes/pluggable.php.
Funkcja wp_hash_password przyjmuje jeden argument, którym jest ciąg znaków i zwraca go w zakodowanej formie.
Funkcja wp_set_password służy do zapisania zakodowanego hasła w bazie danych Wordpresa.
Przechodząc do meritum, istnieje co najmniej kilka metod ustawienia nowego hasła dla administratora bloga opartego na Wordpresie. Poniżej przedstawiam dwie łatwiejsze do przeprwadzenia.
Pierwszym sposobem jest wykorzystanie funkcji wp_set_password w pliku functions.php
Ustawienie nowego hasła dla administratora bloga w tym przypadku odbywa się jak następuje.
wp_set_password('moje_nowe_haslo',1);
Kod pownien zostać umiesczony w pliku functions.php.
Po wykonaniu zapytania do serwera, funkcję należy wykasować i spróbować się zalogować. Wykonanie czynności w odwrotnej kolejności nie zadziała.
Innym sposobem na odzyskanie hasła administratora jest jego wygenerowanie z pomoca funkcji wp_hash_password i przesłanie na skrzynkę email.
Kod poniżej pownien zostac umieszczony w pliku functions.php.
wp_mail( 'twoj@email', 'hasło',wp_hash_password('twoje_nowe_hasło'));
Po odebraniu wiadomości z nowym zaszyfrowanym hasłem należy wstawić je do bazy danych. Dane o użytkownikach Wordpresa przechowywane są w tabeli wp_users (zakładam domyślny prefix tabel).
Korzystają z phpMyAdmin należy znaleźć rekord administratora ( użytkownik o ID = 1 ) i zaktualizować pole o nazwie user_pass tabeli użytkoników.
Po otrzymaniu email należy usunąć kod generujący i wysyłające hasło z pliku functions.php.
Wykonawszy aktualizację danych, należy zalogować się do panelu administracyjnego jako administrator i korzystając z formularza edycji profilu w zakładce użytkowników zmienić własne hasło na nowe. Jest to konieczne ( poprzednie hasło zostało przesłane na skrzynkę w postaci zwykłego tekstu ).
W obu przypadkach blog nie pownien być dostępny dla odiwedzających do mementu ustawienia poprawnego hasła dla jego administratora.
Autor wpisu jest blogerem, programistą PHP, administratorem Linux oraz twórcą blogów
RSS Subskrybuj wpisy bloga