8 способов защиты сайта на WordPress через Htaccess!
Здравствуйте, дорогие друзья и читатели – Sozdaiblog.ru!
Сегодня у нас очень серьёзная тема — Защита сайта.
Не так давно, я поднимал эту тему в статье – «Как защитить блог от взлома», но читая Ваши комментарии, в которых Вы стали часто говорить о том, что Ваш Веб-ресурс взломали, я решил её продолжить. Если Вы помните, то вся защита сайта была построена при помощи плагинов. Больше мы не будем их устанавливать, а поколдуем с WordPress htaccess.
Файл htaccess, находится в корневой папке Вашего ресурса.
Если у Вас такого файла нет, то нужно его создать. Это не сложно, создаёте любой текстовый документ на рабочем столе компьютера, присваиваете ему имя – «.htaccess» и через ftp-клиент вставляете его в корневую папку Вашего ресурса.
Затем, открываете его на редактирование и вставляете следующий код:
# BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
Этот код стандартный и устанавливается практически во всех файлах htaccess.
Теперь мы будем его дополнять новыми кусками различного кода, которые в сочетании с плагинами будут укрепять защиту сайта.
Все ниже приведённые коды, ставим строго после — # END WordPress.
Защита сайта в wp-config.php.
Все, кто сам устанавливал WordPress, знают файл – «wp-config.php». В нём хранится имя базы данных, пароль и логин. Думаю, ни кто из нас не хочет, чтобы эти данные попали в чужие руки.
Для предотвращения несанкционированного доступа к этому документу, вписываем в наш htaccess файл, следующий код:
<Files wp-config.php> order allow,deny deny from all </Files>
Админ доступ, только с Вашего IP адреса.
Для нежелательного редактирования данных Вашего ресурса посторонними людьми, Вы можете ограничить доступ к папке администратора (wp-admin), при помощи блокировки IP адресов.
Чтобы это сделать, нужно создать новый файл htaccess и закинуть его в папку – «wp-admin». Затем, открываем его на редактирование и вписываем код, заменяя существующий IP адрес своим:
order deny,allow allow from 237.070.33.1 (replace with your IP address) deny from all
Но, здесь есть одно условие, этот хак работает в том случае, если у Вас IP адрес – статический. В случаи с динамическим будьте осторожны, он постоянно меняется, и Вы можете сами себя заблокировать.
Поэтому такой способ лучше не использовать.
Блокировка определённого пользователя.
Если у Вас есть IP адрес, с которого пытаются вломиться на Ваш ресурс, то такого Икара можно мигом обломать, ограничив ему доступ. Для этого, воспользуйтесь приведённым кодом, вписав туда адресок обидчика:
<Limit GET POST PUT> order allow,deny allow from all deny from 46.160.64.94 </LIMIT>
Таким образом, можно добавлять новых недоброжелателей, дописывая строчки:
deny from 205.095.41.1
Запретить доступ к wp-content.
В папке – «wp-content», хранятся Ваши темы, плагины, картинки и многое другое. Поэтому, будет не лишним обезопасить её от злоумышленников.
Вам снова потребуется создать новый файл htaccess, вписать в него код и закинуть в — «wp-content»:
<Files ~ ".(xml|css|jpe?g|png|gif|js)"> Allow from all </Files>
Таким образом, пользователи смогут просматривать изображения и CSS файлы, но доступ к PHP будет им закрыт. Очень полезный хак.
Индивидуальная защита файлов.
Случается так, что Вам не нужно запрещать доступ к целой папке, а лишь к одному файлу. Для этого, добавьте следующий код в htaccess, внутри кавычек впишите имя файла:
<FilesMatch \.(?i:gif|jpe?g|png)$> Order allow,deny Deny from all </FilesMatch>
Чтобы не запутаться, записывайте, где и что вы блокируете.
Защита от спама.
При помощи htaccess файла, можно сделать блокировку от спама. Совместно с плагинами, это будет дополнительная защита сайта:
# protect from spam comments RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} .wp-comments-post\.php* RewriteCond %{HTTP_REFERER} !.*Ваш домен.ru.* [OR] RewriteCond %{HTTP_USER_AGENT} ^$ RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]
Ограничения для вредоносных пауков и приложений.
Большинство владельцев Веб-сайтов и администраторов не знают, что Интернет кишит вредоносными пауками из различных приложений и программ, которые бесконечно сканируют веб-серверы, заглядывая в каждую директорию файла Robots.txt с подробными инструкциями для поисковых систем.
Всё это приводит к лишней нагрузке и риску быть взломанным.
Чтобы прекратить бесконечное сканирование и показать этим гадам, где Ваш Robots.txt зимует, достаточно в файле htaccess вписать код с точным адресом:
RewriteBase / RewriteCond %{REQUEST_URI} !^/robots.txt$ [NC] RewriteCond %{REQUEST_URI} robots\.txt [NC] RewriteRule .* http://Ваш сайт.ru/robots.txt [R=301,L]
Защита htaccess.
Смешно так звучит, правда? Мы столько времени потратили на защиту сайта при помощи различных плагинов и блокировок, а про то, что сам файл htaccess остаётся уязвим, забыли.
Следующий кусок кода, защищает все файлы, начинающиеся с — «hta», от просмотра ненужными людьми:
<Files ~ "^.*\.([Hh][Tt][Aa])"> order allow,deny deny from all satisfy all </Files>
Теперь, защита Вашего сайта стала надёжная, как дом у Наф-Нафа из трёх поросят и ни один волк Вам не страшен.
А какие коды используете Вы? Поделитесь с читателями своими наработками!
Надеюсь, что Вам понравилась статья, и Вы обязательно подпишетесь на обновления блога, чтобы получать уведомления о выходе нового материала на Вашу электронную почту.
На сегодня это всё…
С уважением, Денис Черников!
Дополнение к статье.
Также рекомендую установить специальный плагин который помогает дополнительно защитить ваш сайт.
Самый простой вариант это Clearfy Pro.
Здесь можно убрать стандартный адрес входа в админ панель и заменить его на свой вариант, о котором никто не догадается.
Например:
Также есть дополнительные настройки, которые также могут пригодиться.
Есть один интересный плагин, который мне понравился. All In One WP Security
Он предоставляет мощный функционал по защите своего сайта.
Плагин показывает текущий уровень защиты сайта.
И наиболее значимые изменения.
В целом эти плагины и другие рекомендации из этой статьи могут значительно снизить риск взлома сайта.
Также рекомендую вам регулярно делать бэкапы базы данный и файлов сайта. И нужно хранить бэкапы за длительный период, например если вы делайте бэкап раз в неделю. То у вас должны быть доступны бэкапы за год или пол года.
У меня есть внешний жесткий диск и специальная папка, где у меня хранятся резервные копии за год и более по всем сайтам.
Это очень важно. Некоторые люди забывают и потом не могут восстановить свой сайт в случае форс мажорных обстоятельствах.
Также вы можете найти много полезных советов если почитаете комментарии к статье.