Защита WordPress от взлома.

Когда я в первые поставил свой wordpress в качестве блога который сейчас перед вами, я задумался о том как сделать так чтобы его не  взломали, сначала я погуглил ответ на этот вопрос и наткнулся на кучу статей, в хабре и прочих блогах, как человеку который залил не одну сотню шеллов через wordpress мне от прочтения выданных статей стало просто смешно, поэтому ниже я  написал по пунктам, что и как делать правильно.

1)Первое что делается при взломе wordpress’a это сканируются его плагины и темы на наличие уязвимых, поэтому для начала нужно закрыть директорию wp-content, для этого в папке wp-content создаем файл .htaccess с таким содержимым.


deny from all
<FilesMatch ".(css|gif|png|jpg|jpeg|js|zip|rar|gzip|bmp)$">
order allow,deny
allow from all
</FilesMatch>

Данный код закроет доступ по данному каталогу для всего кроме css стилей, картинок, и архивов, если что-то еще понадобится то допишите разрешение.

PS: експлоитов под файлы что лежат в папке wp-include я не видел, но данный .htaccess файл можно положить и там.

2) Второе что нужно сделать это добавить htaccess авторизацию для админ панели для начала дописываем в файл .htaccess  такое содержимое ( это для корня, чтобы закрыть файл  wp-login.php)

<Files wp-login.php>
AuthType Basic
AuthName "Thats protected Area!"
AuthUserFile /home/path/site.ru/.htpasswd/.htpasswd
Require valid-user
</Files>
<Files .htpasswd>
deny from all #запрет доступа из браузера к .htpasswd
</Files> 

и для папки wp-admin

AuthType Basic
AuthName "Thats protected Area!"
AuthUserFile /home/path/site.ru/.htpasswd/.htpasswd
Require valid-user
<Files .htpasswd>
deny from all #запрет доступа из браузера к .htpasswd
</Files>

далее не забудьте создать по указному вами пути файл .htpasswd, там логин лучше выдумать посложнее, например lalalhuynahuy, ни и пароль посложнее, главное чтобы он не совпадал ни с одним из других ваших паролей от чего либо.

Таким образом убьем 2ух зайцев, первый это брут админки, и второй самый важный, как правило уязвимости (конкретно sql) находят не на wordpress а на сайте который использует одну и туже базу данных что и wordpress, тогда зная хеш пароля, брутят его,  спокойно входят в админку wordpress’a и заливают шелл, а в нашем случае, хакер обломается.

Кстати, вот вам еще хороший совет, для каждого сайта делаете отдельную БД)).

На этом всё.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *