Z pewnością przeczytałeś już wiele poradników o zabezpieczeniu WordPressa, a wśród nich wskazówka, aby zabezpieczyć dodatkowym hasłem katalog /wp-admin umożliwiający dostęp do kokpitu.
Zabezpieczenie hasłem kokpitu – możliwe problemy
Oto podstawowe fakty dlaczego:
- Strona stanie się bezużyteczna, gdyż takie elementy jak np. formularze kontaktowe opierają się o AJAX, a plik odpowiedzialny za obsługę tych zapytań znajduje się właśnie w /wp-admin/admin-ajax.php,
- Podobnie jak w przypadku zmienionego adresu logowania przestaną działać wpisy zabezpieczone hasłem,
- Skrypty, style i obrazy z tego katalogu będą niedostępne.
Jak poprawnie zabezpieczyć kokpit (/wp-admin) nie psując strony?
Całe szczęście w WordPress możliwe jest rozwiązanie prawie każdego tego typu problemy – poniższy kod dodany do pliku .htaccess, pozwala na działanie plikom admin-ajax.php i admin-post.php , jednocześnie chroniąc kokpit i stronę logowania dodatkowym hasłem.
AuthType Basic
AuthName "Strona zabezpieczona"
AuthUserFile /home/.htpasswd
Require valid-user
<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any
</Files>
<Files admin-post.php>
Order allow,deny
Allow from all
Satisfy any
</Files>
<Files "\.(css|gif|png|js)$">
Order allow,deny
Allow from all
Satisfy any
</Files>
Aby to wszystko zadziałało musisz stworzyć plik .htpasswd z danymi logowania, a najlepiej stwórz go z pomocą np. Tego generatora.
Dodaj go do głównego katalogu domeny np. /home/strona.pl/public_html, a w przypadku innej niż standardowa lokalizacja pliku – zmodyfikuj druga linijkę powyższego kodu, aby zabezpieczenie zadziałało.
Jeden komentarz dla "Dlaczego nie powinieneś chronić hasłem /wp-admin w WordPress?"
Janusz Kamiński
Lapka wgórę za świetne rozwiązanie. :)