czwartek, 10 czerwca 2021

Jak zabezpieczyć Wordpress?

 1. Ukrycie wp-config.php and .htaccess files

Dodanie w htaccess:

# protect wpconfig.php 

<files wp-config.php> 

  order allow,deny 

  deny from all 

</files>

<Files .htaccess>

order allow,deny

deny from all

</Files>


2. Zablokowanie edycji plików przez zaplecze

W pliku wp_config.php

define('DISALLOW_FILE_EDIT', true);


3. Wyłączenie indeksowania i przeglądania katalogów

W htaccess na końcu pliku:

Options -Indexes

4. Zmiana prefixu bazy danych

Najprościej wtyczka Brozzme DB Prefix & Tools Add-ons


5. Zabezpieczenie wp-includes

W htaccess:

# Block the include-only files.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
</IfModule>


6. Zablokowanie XML-RPC 

W functions.php (blokuje wszystko):

add_filter('xmlrpc_enabled', '__return_false');


Zablokowanie tylko pingbacków w functions.php


function webinsider_remove_only_xmlrpc_pingback( $methods ) {

unset( $methods['pingback.ping'] );

return $methods;

}

add_filter( 'xmlrpc_methods', 'webinsider_remove_only_xmlrpc_pingback' );

W htaccess:

<files xmlrpc.php>

Order allow,deny

Deny from all

</files>


7. Ukrycie wersji Wordpress. 

W functions.php motywu:

function wp_version_remove_version() {

return '';

}

add_filter('the_generator', 'wp_version_remove_version');

8. Instalacja wtyczki Wordfence

9. Regularny Backup

Backup na zewnętrzny serwer np. One Drive, Google Drive

10. Regularne aktualizacje wtyczek i motywu

11. Usunąć zbędne wtyczki i nieużywane motywy

12. Zmiana haseł na mocne

13. Instalacja SSL

Nie używając wtyczki!

W pliku htaccess:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

W Wordpress w ustawieniach ogólnych zmienić adres strony z http na https