Dostęp do admina chroniony ciastkiem

W poprzednim wpisie opowiedziałem czym są ciastka i jak możemy nimi zarządzać. Dzisiaj chciałbym pokazać łatwy sposób na zabezpieczenie dostępu do panelu admina za pomocą ciastka.

Dlaczego to jest użyteczne i takie ważne?

Dzięki ustawieniu ciastka, mamy dodatkową ochronę, że nasze hasło i login nie zostaną złamane. W większości stron opartych na WordPressie, wystarczy tylko wpisanie /wp-admin i  ukazuje nam się panel do logowania.

Pierwszym etapem, który wykonamy, będzie ustawienie przekierowania w .htaccess.

Czym jest htaccess?

Jest to plik, dzięki któremu możemy zmienić domyślne ustawienia dla katalogów w naszym serwerze. Zapisy zawarte w tym pliku funkcjonują dla danego katalogu oraz wszystkich podkatalogów w nim zawartych.

Ustawienie przekierowania

Na serwerze wchodzimy do katalogu z wordpressem i w folderze wp-admin tworzymy, bądź edytujemy plik .htaccess.

Wklejamy do niego:

RewriteEngine On
RewriteCond %{HTTP_COOKIE} !admin=supertajnehaslo; [NC]
RewriteRule ^ http://www.totylkokod.pl [NC,L]

RewriteEngine On – zaczynamy od tego każdą naszą regułe. Przydaje się, gdy chcemy „zakomentować” dany blok, wystarczy podmiana zamiast on ustawić off.

RewriteCond – warunek który musi zostać spełniony

%{HTTP_COOKIE} !admin=supertajnehaslo – jeżeli ciastko jest różne od
admin z wartością supertajnehaslo

RewriteRule – wykonaj przekierowanie

[NC] – wielkość liter nie ma znaczenia

[L] – jeżeli cookie nie zostanie dopasowane do wzorca,
reguła zawierająca flagę L, zostanie wykonana jako ostatnia

Skrypt ustawiający ciastko i przenoszący do panelu admina

Następnie tworzymy skrypt(plik) o nazwie ustawiciastko.php, który umieszamy w głównym katalogu, zaraz obok index.php. Jego zadaniem będzie utworzenie ciastka i przekierowanie na stronę panelu admina.

 <?php
 $name = "admin";
 $value = "supertajnehaslo";
 $days = 365;
 setcookie($name, $value, time() + ($days * 365 * 24 * 60 * 60), "/");
 header("Location: http://totylkokod.pl/wp-admin");
 die();

Ustawiamy ciastko o nazwie admin, wartości supertajnehaslo,
ważne przez jeden rok i dostępne w obrębie całej strony („/”),
a następnie podajemy stronę, na którą mamy zostać przekierowani.

Dzięki tym sposobom zabezpieczyliśmy dostęp do naszej strony,
przed niepowołanymi osobami.

Posted by zielas

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *