• HOME
  • O NAS
  • OFERTA
  • REALIZACJE
  • OPINIE
  • BLOG
  • KONTAKT

Nasz blog

  1. Home
  2. Blog
Zabezpieczenie WordPressa w paru krokach
2018-07-02

Zabezpieczenie WordPressa w paru krokach

Zabezpieczenie wordpressa nie jest tak trudne jak może się wydawać, warto jest pamiętać o paru najważniejszych etapach działań. Im bardziej nasza strona internetowa jest bezpieczna, tym bardziej jest ona efektywna.

1. Sprawdzone oraz okresowe aktualizacje

  • Jako iż sam CMS czasami wychodzi z pewnymi "dziurami" jak to było w wersji 4.7.0 warto jest aktualizować jedynie wersje, które posiadają poprawki po poprzednikach. Dokładne opisy aktualizacji możemy sprawdzić na oficjalnej stronie Wordpress'a - ODNOŚNIK

2. Zmiana prefiksu wp_ dla tabeli w bazie danych

  • Domyślny prefiks jest jak wiadomo taki sam dla każdej instalacji, stąd warto go już początku instalacji zmienić. Oczywiście można w późniejszych fazach rozwoju strony zmienić go, lecz wiadomo podczas instalacji jest to znacznie wygodniejsze i prostsze. Przykładowo, wchodzimy do naszej bazy danych phpmyadmin, następnie wklejamy przykładowy kod, który zmieni nam prefix tabeli dla kolumn _options, _usermeta na sk45s_ (tutaj możemy wpisać najwygodniejszy dla nas)
 
SELECT * FROM `sk45s_options` WHERE `option_name` LIKE '%wp_%';
SELECT * FROM `sk45s_usermeta` WHERE `meta_key` LIKE '%wp_%'; Warto dodatkowo pamiętać iż trzeba wprowadzić zmiany w pliku wp_config.php, w głównym katalogu naszego wordpress'a. /** * WordPress Database Table prefix. * * You can have multiple installations in one database if you give each * a unique prefix. Only numbers, letters, and underscores please! */ $table_prefix = 'wp_'; Na wybrany nasz prefix w tym przypadku: /** * WordPress Database Table prefix. * * You can have multiple installations in one database if you give each * a unique prefix. Only numbers, letters, and underscores please! */ $table_prefix = 'sk45s_';

3. Generujemy własnoręcznie klucze szyfrujące odpowiedzialne za przechowywanie ciasteczek

  • W pliku wp_config.php zawarte są wygenerowane klucze przykładowo:
define('AUTH_KEY',         'l1SqAENca$;BTPZwiu7W,G61Tk$U%a:Et4dms6M}u-JU<*+6]e8-={=-KQ]>8kp+');
define('SECURE_AUTH_KEY',  '^DWW1AZk)%{s5}7B>b(OY!g@-WC>e.I&|WqcAfh^/ d+mhcF9?5$8L(@D3t[iFz<');
define('LOGGED_IN_KEY',    'ft#<-E$Z<EN-[Gk(*A)Mq-.8%*o: W3*-/)zNx,V6NhZM~gbU!4l-Lj4VqXtQ{!q');
define('NONCE_KEY',        'ZvOK/)By-JtF=*zZ^0C{h+WHYlM;7!)SKg>L]q+9AvTH]+DH8+)OS<~h;kdD3%,{');
define('AUTH_SALT',        'h4<=|Se$4t+|W!d6AcdA)(Itzs3d/PTZ3qr@/US|(Y$VPd~l,;-/>W,l%9t:q{PE');
define('SECURE_AUTH_SALT', '1py&Mw~}C#,_-~H-M8L$<c YfZ@%|`QpYv3f1$-YiQ||Ov-n7sM]ni[`d}|PZ}VL');
define('LOGGED_IN_SALT',   '@qeiIM?%Il#IkXi(T9}<15[=.|H:yw`ScWo65BK`fptbL|V.CBYqr~%YM1O+>9+u');
define('NONCE_SALT',       '! fagoqhd)>7d1U7iCC ub)hO=-s5pSn]:Cgy/Wxzl$~uKk|x[P:t=x3UL42ZY}h');
 
Aby je zmienić wchodzimy na stronę ODNOŚNIK , uzyskane klucze kopiujemy i wklejamy zamiast naszych.

4. Chowamy domyślne dane do bazy danych

  • Wchodzimy do naszego głównego katalogu wordpress'a i tworzymy w nim nowy plik o przykładowej nazwie: wp-db-data.php
  • Kolejno otwieramy plik wp_config.php i wycinamy z niego tą zawartość, odpowiedzialną za dane dostępowe do bazy danych. Następnie wklejamy ją do pliku wp-db-data.php, warto jest pamiętać iż na początku kodu musimy dodać "<?php", natomiast na końcu kodu "?>"
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'nazwa_bazy_danych');
/** MySQL database username */
define('DB_USER', 'nazwa_uzytkownika_bazy_danych');
/** MySQL database password */
define('DB_PASSWORD', 'haslo_do_bazy_danych');
/** MySQL hostname */
define('DB_HOST', 'host_bazy_danych');
/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8mb4');
/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');
  • Kolejno zapisujemy plik i ponownie wracamy do wp_config.php i na samej górze pliku po "<?php" dodajemy:
require_once „wp-config-data.php”;

5. Ukrywamy błędy

  • Ponownie wchodzimy do pliku wp_config.php i szukamy:
define(‚WP_DEBUG’, false);
  • Dodajemy pod:
if ( ! WP_DEBUG ) { ini_set(‚display_errors’, 0); }

6. Usuwamy dostęp do niektórych plików

  • Poprawne zabezpieczenie wordpress to ukrycie, niektórych ważnych dla nas plików. Aby to zrobić wchodzimy do głównego katalogu ponownie i otwieramy plik .htaccess i na jego początku dodajemy:
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{HTTP_REFERER} !^http://(.*)?.TWOJA-NAZWA-DOMENY.pl [NC] RewriteCond %{REQUEST_URI} ^/wp-login\.php(.*)$ RewriteRule ^(.*)$ – [R=403,L] </IfModule> <FilesMatch „wp-config.*\.php|\.htaccess|readme\.html”>    Order allow,deny    Deny from all </FilesMatch> <files xmlrpc.php> order deny,allow deny from all </files> <FilesMatch „\.(?i:php)$”> Order allow,deny Deny from all </FilesMatch> <Files wp-tinymce.php> Allow from all </Files> <Files ms-files.php> Allow from all </Files>
  • Dodatkowo, niektórzy jeszcze zabezpieczają katalog wp_content, lecz my tego nie polecamy ze względu na częste błedy i problemy z działaniem wtyczek czy motywów.

7. Usuwamy plik wp_install.php

  • Aby to zrobić wchodzimy do głównego katalogu z wordpressem, nastepnie do folderu /wp_admin/ i nim własnie jest owy plik, który należy wczesniej zgrać na dysk - jako kopia zapasowa. A ten na serwerze (hostingu) po prostu usunąć.

8. Blokujemy możiwość edytowanie wtyczek oraz motywów przez panel administratora

  • Wchodzimy do pliku, wp_config.php i dodajemy do niego:
define(‚DISALLOW_FILE_EDIT’, true);  

9. Pobieramy wtyczkę odpowiedzialną za dodatkowe zabezpieczenia

  • Jak wiadomo na naszej stronie zawsze warto jest mieć najbardziej potrzebne wtyczki, nie ściągamy takich, których nie używamy. Znacznie to spowolni stronę i dodatkwo narazi ją na ewentualne niebezpieczeństwa. Najbardziej polecamy pobranie JEDNEJ ze wtyczek: Wordfence Security – Firewall & Malware Scan, Cerber Security, Antispam & Malware Scan, iThemes Security (formerly Better WP Security)

10. Instalujemy na serwerze certyfikat SSL

  • Certyfikat SSL daje nam gwarancję bezpieczeństwa na naszej stronie, aby taki nabyć najlepiej jest zakupić go u dostawcy naszego hostingu. Który pomoże nam w konfiguracji oraz instalacji na danej domenie. Dodatkowo dla naszego serwisu warto zainstalować plugin odpowiedzialny za certyfikat SSL - Really Simple SSL

11. Używamy bezpiecznych haseł

  • Zabezieczenie wordpressa nie musi być bardzo wymagające, lecz warto zapamiętać o podstawach. W tym wypadku będzie to bezpieczne i wystarczająco skomplikowane hasło. Najlepszą opcją jest używanie wbudowanych generatorów haseł w wordpress'ie bądź używać zewnętrznych - ODNOŚNIK

12. Usuwamy informację o wersji naszego Wordpressa

  • Aby to zrobić musimy wejść do głównego folderu naszego portalu, następnie do katalogu functions.php i dodać na samym końcu fragment kodu:
function remove_bootstrap_version() { return ""; } add_filter(‚the_generator’, ‚remove_bootstrap_version’); remove_action(‚wp_head’, ‚wp_generator’);

13. Zmieniamy domyślny adres logowania

  • To obecnie jest jedna z ważniejszych rzeczy ale też jedna z prostszych. Wystarczy zmienić adres logowania do naszego panelu administratora, który domyślnie ukrywa się pod /wp-admin/, na jakikolwiek inny. Do tego warto użyć wtyczki WP Hide Login

14. Logowanie dwustopniowe

  • Kolejnym przydatnym zabezpieczeniem jest na pewno logowanie dwustopniowe, które minimaluzuje możliwości dla potencjalnego chętnego na włamanie do naszej strony. W tym wypadku warto pobrać wtyczkę odpowiedzialną za tą czynność. Jedną z lepszych polecanych przez nas jest Google Authenticator - jest to na pewno bardzo duże zabezpieczenie od strony logowania do samego panelu. Daje nam to możliwość logowania się przez generowane klucze w naszej aplikacji mobilnej w smartphone.

15. Zmieniamy nasz login na adres e-mail

  • Kolejna ważna kwestia to prosty login do panelu administratora - gdzie dużo osób używa po prostu - "admin"/"Admin". Aby utrudnić ewentualne rozszyfrowanie warto używać po prostu adresu email do logowania. W tym celu pobieramy wtyczkę Email Login i podmieniamy nasz login, na adres email. Oczywiście można to wykonać bez wtyczki, jednakże pokazujemy sposoby takie aby każdy mógł je wykonać bez względu na doświadczenie

© 2018 SocialKing All Rights Reserved