В попередній статті ми розповіли вам, як приховати версію Вордпресс, закрити сайт від додавання «гарячих посилань», захистити директорії і адмін панель вашого сайту. Сьогодні ми поділимося з вами ще деякими секретами безпеки сайту на Вордпресс .

1. Файл Install.php в WordPress.
Як ви знаєте файл install.php (у папці wp-admin) один з найважливіших файлів для установки Вордпресс. Але після установки CMS цей файл більше не потрібен. Тому варто видалити або захистити його. Не турбуйтеся про те, що ви його видаліть. З оновленням версії Вордпресс у вас не виникне проблем, оскільки цей файл є в директорії CMS і ви зможете легко потім додати на хостинг, коли хочете оновити версію Вордпресс. Але не забувайте, якщо ви не видалите або не захистив цей файл, він буде легко доступний для хакерів і шпигунських програм. Є три способи захистити сайт від атак:

    • Перший варіант дуже простий – просто видалити файл install.php в папці wp-admin.
    • Через файл .htaccess : ви повинні додати файл .htaccess в папку wp-admin:
# PROTECT install.php
<Files install.php>
Order Allow,Deny
Deny from all
Satisfy all
</Files>
  • Якщо ви не хочете видаляти цей файл з хостингу або ваш хостинг не допускає додавання файлу .htaccess, то просто змініть назву цього файлу. Наприклад, змініть назву файлу install.php на mysafe-install.php, а вміст файлу install.php пропишіть таким чином:
    <?php header("HTTP/1.1 503 Service Temporarily Unavailable"); ?>
    <?php header("Status 503 Service Temporarily Unavailable"); ?>
    <?php header("Retry-After 3600"); // 60 minutes ?>
    <?php mail("your@email.com", "Database Error", "There is a problem with teh database!"); ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Error Establishing Database Connection</title>
    </head>
    <body>
    <img src="images/wordpress-logo.png" />
    <h1>Error Establishing Database Connection</h1>
    <p>We are currently experiencing database issues. Please check back shortly. Thank you.</p>
    </body>
    </html>

Тепер у вас буде два файли в папці wp-admin: install.php і mysafe-install.php.

2. Немає спаму!
Вордпресс – це блог, і є метою для всіх спамерів, які хочуть додати на ваш сайт свою рекламу, посилання, картинки та інше … Якщо ви не хочете, щоб цей спам додавався до вас на сайт, потрібно використовувати плагін або зробити це через файл .htaccess в корені сайту.
І напишіть ваш URL, як у прикладі http://www.yoursite.com/wp-comments-post.php.
Якщо ви побачите, що ваш сайт відкритий для спаму , ви можете закрити його, додавши код у файл .htaccess на вашому хостингу (якщо ваш хостинг не дозволяє файл .htaccess, то використовує плагін, наприклад Аkismet , який йде за замовчуванням до Вордпресс):

# block comment spam 
RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*yousite.com.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule ^(.*)$ ^ http://example.com/$ [R=301,L]

АБО

# BLOCK NO-REFERRER SPAMS 
<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_METHOD} POST
 RewriteCond %{HTTP_USER_AGENT} ^$ [OR]
 RewriteCond %{HTTP_REFERER} !.*example.com.* [NC]
 RewriteCond %{REQUEST_URI} /wp\-comments\-post\.php [NC]
 RewriteRule .* http://example.com/ [R=301,L]
</IfModule>

Не забудьте поміняти example.com на адресу вашого сайту (повна адреса) без http:// або www.

Тепер, коли спамери намагатимуться додати спам на ваш сайт, вони будуть перенаправлені на http://example.com/ , якраз те, що нам потрібно!

3. Заблокувати ботів.
Як ми можемо заблокувати сайт від поганих ботів, які постійно атакую ​​сайт? Ми пропонуємо зробити це через файл .htaccess на вашому хостингу :

# BLOCK BAD BOTS
<IfModule mod_setenvif.c>
 SetEnvIfNoCase User-Agent ^$ keep_out
 SetEnvIfNoCase User-Agent (casper|cmsworldmap|diavol|dotbot)   keep_out
 SetEnvIfNoCase User-Agent (flicky|ia_archiver|jakarta|kmccrew) keep_out
 SetEnvIfNoCase User-Agent (libwww|planetwork|pycurl|skygrid|badbot)   keep_out
 SetEnvIfNoCase User-Agent (purebot|comodo|feedfinder) keep_out
SetEnvIfNoCase User-Agent (badbot)   keep_out
 <Limit GET POST PUT>
  Order Allow,Deny
  Allow from all
  Deny from env=keep_out
 </Limit>
</IfModule>

Ви можете додати інших ботів, які ви знаєте, додавши ще одну строчку коду. Наприклад, ми додали badbot .

Ми сподіваємося, що ця стаття допоможе вам у захисті вашого сайту. Будьте з GKS Веб Студією та дізнавайтесь більше про те, як захистити ваш сайт від можливих атак, запобігти злому сайту, зробити представництво вашого бізнесу в інтернеті ще більш безпечним і багато іншого…