[2019] Zabezpieczanie WordPress’a – Poradnik krok po kroku

Każdy właściciel strony internetowej opartej o WordPress powinien wziąć pod uwagę jej bezpieczeństwo. Jeśli posiadamy tego typu stronę firmową lub sklep internetowy, musimy pamiętać, że odpowiadamy za bezpieczeństwo nie tylko swoje, ale i również naszych klientów. Każdego tygodnia Google umieszcza na czarnych listach około 10 000 stron internetowych na których wykrył złośliwe skrypty oraz około 50 000 podejrzanych o phishing.

Podchodząc poważnie do swojej witryny, musisz podjąć działania dążące do zabezpieczenia jej w jak najlepszym stopniu. W poniższym przewodniku przedstawimy Tobie najważniejsze wskazówki dotyczące zabezpieczenia WordPress’a, aby pomóc Ci ochronić swoją stronę przed hakerami i złośliwym oprogramowaniem.

Samo podstawowe oprogramowanie WordPress’a jest dość bezpieczne, co zawdzięcza regularnym audytom przeprowadzanym przez setki programistów, ale istnieje wiele kwestii, na które oni nie mają wpływu i głównie nimi zajmiemy się w poradniku. Nie wierzymy w całkowitą eliminację zagrożeń, ponieważ nigdy nie jest to w stu procentach możliwe, a skupiamy się na samej redukcji ryzyka do minimum. Jako właściciel portalu możesz zrobić wiele, aby się do tego przyczynić (nawet jeśli jesteś zwykłym laikiem).

Przedstawimy szereg możliwych do podjęcia kroków, które znacznie zwiększą poziom bezpieczeństwa na Twojej stronie WordPress.

Aby ułatwić Ci nawigację po naszym poradniku, poniżej stworzyliśmy spis treści, który powinien w dużym stopniu Ci pomóc.

Spis treści

Podstawy bezpieczeństwa WordPress

Bezpieczeństwo WordPress w prostych krokach (bez kodowania)

Bezpieczeństwo WordPress dla zaawansowanych użytkowników


Podstawy bezpieczeństwa WordPress

Dlaczego bezpieczeństwo WordPress’a jest ważne?

Zhakowana witryna WordPress może spowodować poważne straty w przychodach i reputacji Twojej firmy. Hakerzy są w stanie ukraść informacje o użytkownikach, hasła, instalować złośliwe oprogramowanie, a nawet rozpowszechniać złośliwe oprogramowanie wśród użytkowników.

W najgorszej sytuacji będziesz musiał nawet zapłacić hakerom haracz tylko po to, aby odzyskać kontrolę nad swoją stroną.

W marcu 2016 r. Google poinformowało, że ponad 50 milionów użytkowników witryn otrzymało ostrzeżenie podczas odwiedzania stron internetowych, które mogły zawierać złośliwe oprogramowanie lub kradzież informacji.

Ponadto Google umieszcza na czarnych listach około 10 000 stron internetowych w poszukiwaniu złośliwego oprogramowania i około 50 000 stron w poszukiwaniu phishingu każdego tygodnia.

Jeśli Twoja strona internetowa jest powiązana z biznesem, musisz zwrócić szczególną uwagę na bezpieczeństwo WordPress.

Tak, jak w przypadku właściciela firmy, jesteś odpowiedzialny za ochronę budynku, w którym prowadzisz działalność, tak i w przypadku działalności online, jesteś odpowiedzialny za ochronę strony, na której prowadzisz interesy.

Aktualizowanie WordPress’a

WordPress to oprogramowanie open source, które jest regularnie konserwowane i aktualizowane. Domyślnie WordPress automatycznie instaluje drobne aktualizacje. W przypadku głównych wydań musisz ręcznie zainicjować aktualizację.

Ponadto WordPress zawiera tysiące wtyczek i motywów, które możesz zainstalować na swojej stronie. Te wtyczki i motywy są obsługiwane przez zewnętrznych programistów, którzy regularnie publikują aktualizacje (choć nie zawsze). Zwróć uwagę, aby instalowane przez Ciebie dodatki były pod stałą kontrolą wydawcy. Unikaj tych, które nie były aktualizowane od roku i dłużej. Warto również korzystać jedynie z wtyczek i motywów oferowanych za darmo za pośrednictwem oficjalnej strony WordPress’a lub płatnych, które możesz zakupić na portalach typu CodeCanyon.

Aktualizacje WordPress’a są kluczową kwestią bezpieczeństwa i stabilności witryny. Musisz się upewnić, że rdzeń WordPress, wtyczki i motywy są aktualne.

Hasła i uprawnienia użytkownika

Najczęściej próby hakerskie wobec WordPress wykorzystują skradzione hasła. Możesz to utrudnić, używając silniejszych haseł, które są unikalne dla Twojej witryny. Nie tylko dla obszaru administracyjnego WordPress, ale także dla kont FTP, bazy danych, konta hostingowego i niestandardowych adresów e-mail wykorzystujących nazwę domeny Twojej witryny. Polecamy korzystanie z generatorów haseł dostępnych za darmo online.

Wielu początkujących nie lubi używać silnych haseł, ponieważ trudno je zapamiętać. Dobrą praktyką jest rozpoczęcie korzystania z dostępnych, darmowych menedżerów haseł.

Kolejny sposobem na obniżenie ryzyka jest ograniczenie uprawnień dla każdego konta WordPress, tak, aby nie miały one dostępu do pełnego panelu administratora (chyba, że koniecznie muszą). Jeśli posiadasz spory zespół lub zewnętrznych autorów wpisów, upewnij się, że rozumiesz, jak funkcjonują role na systemie WordPress, zanim dodasz nowe konto dla kolejnego członka zespołu.

Rola hostingu internetowego

Hosting na którym posiadasz swoją stronę internetową, odgrywa najważniejszą rolę w bezpieczeństwie Twojej witryny WordPress.

Oto, jakimi sposobami dobra firma hostingowa działa w tle, aby chronić Twoje strony internetowe i dane:

  • Stały monitoring sieci pod kątem podejrzanej aktywności,
  • Wszystkie dobre firmy hostingowe mają narzędzia do zapobiegania atakom DDOS na dużą skalę,
  • Aktualizacja swojego oprogramowania serwerowego i sprzętu, aby zapobiec wykorzystywaniu przez hakerów znanej luki w zabezpieczeniach w starej wersji,
  • Gotowość do wdrożenia planów odzyskiwania danych w wypadku awarii i przejęcia strony, co pozwala im chronić dane w poważnych sytuacjach.

W przypadku hostingu współdzielonego zasoby serwera są udostępniane wielu innym klientom. Otwiera to ryzyko zarażenia witryny, gdy haker może użyć sąsiedniej witryny do zaatakowania pozostałych.


Bezpieczeństwo WordPress w prostych krokach (bez kodowania)

Zainstaluj rozwiązanie do tworzenia kopii zapasowych WordPress

Kopie zapasowe to Twoja pierwsza obrona przed atakiem na WordPress. Pamiętaj, że nic nie jest w 100% bezpieczne. Jeśli rządowe strony internetowe mogą zostać zhakowane, to również i Twoja.

Kopie zapasowe umożliwiają szybkie przywrócenie witryny WordPress na wypadek, gdyby zdarzyło się cokolwiek złego.

Istnieje wiele darmowych i płatnych wtyczek do tworzenia kopii zapasowych WordPress, których możesz użyć. Najważniejszą rzeczą, którą musisz wiedzieć, jeśli chodzi o kopie zapasowe, jest to, że musisz regularnie zapisywać pełne kopie zapasowe w zdalnej lokalizacji (nie na twoim koncie hostingowym).

Zalecamy przechowywanie go w usłudze chmury, takiej jak Google Drive, Dropbox, czy prywatnych chmurach, takie jak Stash.

W zależności od tego, jak często aktualizujesz witrynę, idealnym ustawieniem może być raz dziennie lub tworzenie kopii zapasowych w czasie rzeczywistym.

Na szczęście można to łatwo zrobić za pomocą wtyczek, takich jak VaultPress lub UpdraftPlus. Są niezawodne i co najważniejsze łatwe w użyciu (nie jest potrzebne kodowanie).

Najlepsza darmowa wtyczka zabezpieczająca WordPress

Po utworzeniu kopii zapasowych następną rzeczą, którą musimy zrobić, jest skonfigurowanie systemu kontroli i monitorowania, który śledzi wszystko, co dzieje się w witrynie.

Obejmuje to monitorowanie integralności plików, nieudane próby logowania, skanowanie złośliwego oprogramowania itp.

Na szczęście wszystko to może załatwić najlepsza darmowa wtyczka bezpieczeństwa WordPress, Sucuri Scanner.

Zainstaluj i aktywuj wtyczkę Sucuri Security. Po aktywacji musisz przejść do menu Sucuri w swoim administratorze WordPress. Pierwszą rzeczą, o którą zostaniesz poproszony, jest wygenerowanie bezpłatnego klucza API. Umożliwia to rejestrowanie inspekcji, sprawdzanie integralności, powiadomienia e-mail i inne ważne funkcje.

Następną rzeczą, którą musisz zrobić, jest kliknięcie karty „Hardening” w menu ustawień. Przejdź przez każdą opcję i kliknij przycisk „Apply Hardening”.

Opcje te pomagają zablokować kluczowe obszary, które hakerzy często wykorzystują w swoich atakach.

Poza tym domyślne ustawienia wtyczki są wystarczające dla większości witryn i nie wymagają żadnych zmian. Jedyne, co zalecamy dostosowywać, to „Alerty e-mail”.

Domyślne ustawienia alertów mogą zaśmiecać skrzynkę odbiorczą wiadomościami e-mail. Zalecamy otrzymywanie powiadomień o kluczowych działaniach, takich jak zmiany wtyczek, rejestracja nowego użytkownika itp. Alerty można skonfigurować, przechodząc do opcji Sucuri Settings » Alerts.

Ta wtyczka zabezpieczeń WordPress jest bardzo potężna, więc przejrzyj wszystkie karty i ustawienia, aby zobaczyć wszystko, co robi, takie jak skanowanie złośliwego oprogramowania, dzienniki audytu, śledzenie nieudanej próby logowania itp.

Włącz zaporę sieciową (Firewall)

Najprostszym sposobem ochrony witryny i zapewnienia bezpieczeństwa WordPress jest użycie zapory sieciowej. Zapora sieciowa blokuje cały złośliwy ruch, zanim jeszcze dotrze do Twojej witryny.

Darmowe rozwiązania powinny wystarczyć w większości przypadków.

Polecamy zapoznać się z poniższymi trzema rozwiązaniami:

  1. WordPress Simple Security FireWall
  2. All In One WP Security & Firewall
  3. BulletProof Security

Dodaj do WordPress certyfikat SSL / HTTPS

SSL (Secure Sockets Layer) to protokół szyfrujący transfer danych między witryną, a przeglądarką użytkowników. Szyfrowanie utrudnia komuś kradzież i podsłuchiwanie informacji.

Po włączeniu protokołu SSL Twoja witryna będzie używać protokołu HTTPS zamiast protokołu HTTP, zobaczysz również znak kłódki obok adresu witryny w przeglądarce.

Certyfikaty SSL są zazwyczaj wydawane przez urzędy certyfikacji, a ich ceny zaczynają się od 80 do setek złotych rocznie. Ze względu na dodatkowy koszt większość właścicieli stron internetowych zdecydowała się nadal korzystać z niezabezpieczonego protokołu.

Aby to naprawić, organizacja non-profit o nazwie Let’s Encrypt postanowiła zaoferować właścicielom witryn bezpłatne certyfikaty SSL. Ich projekt jest wspierany przez Google Chrome, Facebook, Mozilla i wiele innych firm.

Z tego powodu, teraz jest łatwiej niż kiedykolwiek zacząć korzystać z SSL dla wszystkich witryn WordPress.

Bezpieczeństwo WordPress dla zaawansowanych użytkowników

Jeśli zrobisz wszystko, o czym wspominaliśmy do tej pory, Twoja strona jest już w miarę bezpieczna, a na pewno bezpieczniejsza od wielu innych portali w Internecie.

Oczywiście możesz zrobić więcej, aby jeszcze bardziej wzmocnić zabezpieczenia WordPress’a, co jest konieczne, jeśli Twój serwis traktujesz profesjonalnie.

Niektóre z tych kroków mogą wymagać znajomości kodowania.

Zmień domyślną nazwę użytkownika „admin”

W dawnych czasach domyślną nazwą użytkownika admin WordPress był „admin”. Ponieważ nazwy użytkowników są pierwszą częścią wymaganą do zalogowania, ułatwiło to hakerom wykonywanie ataków typu brute-force.

Na szczęście WordPress zmienił to i teraz wymaga wybrania niestandardowej nazwy użytkownika w trakcie instalacji WordPress.

Jednak niektóre automatyczne instalatory WordPress’a, nadal ustawiają domyślną nazwę administratora na „admin”. Jeśli zauważysz, że tak jest, to prawdopodobnie warto zmienić hosting.

Ponieważ WordPress nie pozwala domyślnie na zmianę nazw użytkowników, istnieją trzy metody, aby to obejść.

  • Utwórz nowego administratora z nową nazwą i po zalogowaniu się usuń starego,
  • Użyj wtyczki Username Changer,
  • Zaktualizuj nazwę użytkownika z pozycji phpMyAdmin

Uwaga: mówimy o nazwie użytkownika „admin”, a nie roli administratora.

Wyłącz edycję plików

WordPress posiada wbudowany edytor kodu, który pozwala edytować pliki motywów i wtyczek bezpośrednio z obszaru administracyjnego WordPress. W złych rękach ta funkcja może stanowić zagrożenie bezpieczeństwa, dlatego zalecamy jej wyłączenie.

Możesz to łatwo zrobić, dodając następujący kod w pliku wp-config.php.

1. // Nie zezwalaj na edycję pliku
2. define (’DISALLOW_FILE_EDIT’, true);

Wyłącz wykonywanie plików PHP

Kolejnym sposobem wzmacniającym bezpieczeństwo WordPress’a jest uniemożliwienie wykonywania plików PHP w folderach, w których nie jest to potrzebne – np. /wp-content/uploads/.

Aby ustawić tego typu blokadę, musisz utworzyć nowy plik w notatniku, w którym umieścisz poniższy kod:

deny from all

Następnie zapisz go jako .htaccess i za pomocą klienta FTP wrzuć go do folderu /wp-content/uplaods/ na Twoim serwerze.

Ogranicz próby logowania

Domyślnie WordPress pozwala na dokonywanie nieskończonej ilości prób logowania. Przez to Twoja strona lub sklep są podatne na ataki typu „brute force”, które polegają na sprawdzaniu kolejno wszystkich możliwych kombinacji znaków, aż zostanie odnalezione Twoje hasło.

Możesz tego z łatwością uniknąć, wprowadzając limit prób logowania dla jednego użytkownika.

1. Zainstaluj i aktywuj darmową wtyczkę Login Lockdown – https://pl.wordpress.org/plugins/login-lockdown/
2. Przejdź do Ustawienia » Login LockDown.

3. Skonfiguruj wtyczkę wedle uznania (domyślne ustawienia wystarczą dla laika).

Dodaj uwierzytelnianie dwustopniowe (2-FA)

Logowanie dwustopniowe to skuteczna metoda ochrony kont na WordPress. Polega ona na podzieleniu logowania na dwa etapy. W pierwszym użytkownik podaje swój login i hasło, a w drugim musi potwierdzić swoją tożsamość za pomocą oddzielnego urządzenia, bądź aplikacji.

Najpopularniejsze serwisy internetowe dają taką możliwość dla swoich użytkowników, zatem nic nie stoi na przeszkodzie, aby dodać tę funkcję na Twoim serwisie.

Pobierz i aktywuj darmową wtyczkę Two Factor Authentication. Po aktywacji przejdź w zakładkę Two Factor Auth w menu administracyjnym po lewej stronie.

Teraz zainstaluj i otwórz aplikację uwierzytelniającą w Twoim telefonie. Dostępnych jest wiele rozwiązań. Np. Google Authenticator, Authy, czy LastPass Authenticator. Polecamy Authy oraz LastPass, ponieważ one umożliwiają przechowywanie kopii zapasowej swoich kont w chmurze. Jest to przydatne, gdy zgubisz telefon, bądź kupisz nowy. Wszystkie swoje konta z łatwością przywrócisz na dowolnym urządzeniu.

Na potrzeby tutoriala skorzystamy z Authy. Etapy autoryzacji wyglądają mniej więcej tak samo dla wszystkich aplikacji.

Otwórz swoją aplikację i kliknij przycisk Dodaj.

Aplikacja poprosi o dodanie klucza prywatnego udostępnionego przez stronę.

Możesz zeskanować kod QR znajdujący się na stronie ustawień wtyczki lub ręcznie wpisać znajdujący się klucz.

Zaznacz Enable w ustawieniach wtyczki, aby aktywować logowanie dwustopniowe.

Teraz przy logowaniu będziesz proszony o kod, który wyświetla się w aplikacji.

Wyłącz indeksowanie i przeglądanie katalogów

Chcąc znaleźć wtyczki, bądź pliki posiadające znane luki bezpieczeństwa hackerzy będą chcieli przeglądać katalogi znajdujące się na Twoim serwerze. Samo przeglądanie katalogów może zostać wykorzystane na przeróżne sposoby, dlatego zaleca się wyłączenie indeksowania katalogów i uniemożliwienie ich przeglądania postronnym użytkownikom.

W celu zastosowania tej rady musisz przejść do głównego katalogu WordPressa na Twoim serwerze FTP i zmodyfikować plik .htaccess. Dodaj na końcu tego pliku następujący wiersz:

Options -Indexes

Następnie zapisz go i sprawdź, czy strona działa prawidłowo.

Automatycznie wyloguj bezczynnych użytkowników

Zalogowani do panelu administracyjnego użytkownicy niejednokrotnie zostawiają swój włączony komputer bez nadzoru, co tworzy ogromne ryzyko bezpieczeństwa. Ktoś może przejąć kontrolę nad ich sesją, zmienić hasła lub dokonać zmian na ich kontach.

Z tego powodu większość banków automatycznie wylogowują nieaktywnych użytkowników ze swoich systemów bankowości. Możesz dodać tę funkcjonalność również na swój serwis WordPress.

Zainstaluj i włącz wtyczkę Inactive Logout. Po aktywacji przejdź w zakładkę Ustawienia » Inactive Logout i skonfiguruj wtyczkę.

Ustaw czas i dodaj informację o wylogowaniu, a następnie zapisz.


Podsumowanie

To już wszystko w naszym poradniku. Mamy nadzieję, że pomógł on Tobie w zastosowaniu najlepszych praktyk bezpieczeństwa w WordPress i dał szansę poznać świetne wtyczki pomagające w tej kwestii.


Autorem powyższego artykułu jest Konrad Janduła-Caban z agencji pavos.media z miasta Świdnica, która specjalizuje się w tworzeniu,  obsłudze i zabezpieczaniu serwisów internetowych opartych o WordPress.

Jeśli potrzebujesz pomocy w kwestii bezpieczeństwa Twojego serwisu WordPress, zapraszamy do kontaktu z pavos.media.

Strona agencji –
Mail – kontakt@pavos.media
Telefon – +48 733 022 794