SEO Маяк

Как заблокировать доступ по IP адресу через файл .htaccess

07.03.2013 автор: Виталий Кириллов

Всем привет! Сегодня на SEO-Mayak.com в рамках рубрики «Заботимся о безопасности » я буду рассказывать, как заблокировать доступ по IP адресу через файл .htacces к админ-панели блога или к отдельным файлам.

Немного лирики. Миллионы людей создают свои блоги на основе бесплатной CMS WordPress, которая безусловно является самой популярной на сегодняшний день системой управления.

Постоянно появляющиеся новые плагины, платные и бесплатные шаблоны и конечно новые версии, делают движок еще более удобным и легко управляемым. Эта доступность и простота побуждает все большее количество веб-мастеров пользоваться именно CMS WordPress.

Но популярность всегда имеет и обратною сторону медали. Чуя «запах» легкой наживы над WordPress постоянно кружат стаи «черных» специалистов, которые не упустят возможность воспользоваться брешами в системе защиты движка и неопытностью, а иногда просто обыкновенной халатностью, администраторов блогов.

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

Блокирование доступа по IP адресу является наиболее действенной мерой зашиты от взлома системы управления сайтом.

С помощью файла .htaccess можно управлять работой сервера, отдавая ему нужные «распоряжения».

Я уже писал в статье «Как сделать 301 редирект (перенаправление) через файл .htaccess» об одной из таких команд, но также, кроме перенаправления, можно разрешать, ограничивать или запрещать доступ, как к отдельным файлам, так и к целым каталогам (папкам).

Где лучше хранить пароли доступа и какие разделы блога следует защищать в первую очередь

Самым уязвимым местом в WordPress безусловно является админ-панель сайта. Чаще всего несанкционированные проникновения происходят именно через нее. Добравшись до админки, злоумышленник получает полную свободу действий по внедрению в файлы блога различных вирусов или злокачественных функций.

Каким же образом осуществляется взлом сайтов? Причиной могут быть разные, например: слабые пароли, которые легко подбираются или сохранение паролей в браузере:

Использование одинаковых паролей, как для входа в различные социальные сети, так и для входа в админ панель блога и т.д. Всех способов вычисления паролей я конечно не знаю, так как я не занимаюсь этим «скользким» ремеслом.

Могу дать совет, чтобы постоянно не вписывать логины и пароли при входе на различные ресурсы, и тем более не хранить их в браузере, установите расширение LastPass.

Расширение LastPass для Google Chrome

Расширение LastPass для  Mozilla Firefox

Расширение LastPass для Opera

Как пользоваться расширением Вы можете почитать на официальном сайте  lastpass.com .

Использования расширения LastPass значительно упрощает авторизацию на веб-ресурсах и надежно защищает Ваши данные доступа от глаз хакеров

Также взломщик может получить доступ к вашим файлам через протокол FTP, но об это я расскажу уже как-нибудь в другой раз.

Итак, как запретить доступ к важным разделам сайта по IP адресу? Давайте для начала определимся, какие разделы являются важными.

В первую очередь надо запретить доступ к каталогу wp-admin. который находится в корне вашего блога.

Также очень важным, с точки зрения безопасности, является файл wp-config.php, который тоже находится в корневой папке и его изменение напрямую влияет на базу данных.

Не надо далеко ходить, в прошлой статье «Как удалить, отключить, ограничить ревизии записей » мы с вами воздействовали на базу данных посредством небольших команд через файл wp-config.php.

Как заблокировать доступ по IP адресу к файлу wp-config.php через файл .htaccess

Что такое IP адрес? Если бы меня спросили об этом лет пять назад, то наверное я бы с трудом смог подобрать слова для ответа. Но теперь наверное даже многие бабушки скажут вам, что IP — это уникальный сетевой адрес определенного компьютерного узла.

Как узнать свой IP адрес? Большой сложности узнать свой IP не представляет, можно просто спросить у Яндекса. если конечно вы зарегистрированы в этой поисковой системе .

Начнем с того, что сделаем бекап. Как сделать резервную копию всех файлов расположенных на сервере, читайте в статье «FTP клиент Fileziia »

Теперь запретим

доступ к файлу wp-config.php  со всех IP адресов. кроме своего, чтобы никто извне не смог «нагадить» в нашу базу данных.

С помощью текстового редактора Notepad++ открываем для редактирования файл .htaccess, который должен находиться в корневой папке блога.

Обычно, после настройки ссылок ЧПУ. файл .htaccess выглядит так:

После строчки # END WordPress вставляем следующее:

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

Order  - Директива означающая »порядок». Является управляющей директивой для директивDeny и Allow.

Deny -  Запрещающая доступ к документам директива. Распространяется на всех или на определенных пользователей.

Allow - Разрешающая доступ к документу директива. Распространяется на всех или на определенных пользователей.

Пока не понятно, но дальше постепенно все должно прояснится.

Deny,Allow — запрещаем доступ всем, кроме определенных пользователей.

Allow,Deny  - разрешаем доступ всем, кроме определенных пользователей.

Значит с первой строчкой <Files wp-config.php> должно быть все ясно, здесь мы просто указываем имя файла к которому хотим ограничить доступ.

Общее значение второй строчки Order Deny,Allow  постараюсь объяснить своими словами: Order -  порядок действий такой, Deny — сначала запрещаем, Allow — потом разрешаем.

Deny from all — запрещаем доступ к файлу всем пользователям.

Allow from Ваш IP адрес — но разрешаем доступ пользователю с определенным IP адресом

Теперь все должно быть понятно. Кстати, разрешать доступ к файлам можно и группе IP адресов, просто надо добавить одну или несколько строчек:

Как проверить, действует ли запрет?

Изменяем одну цифирку в своем IP адресе и в адресной строке браузера указываем путь к файлу:

site.com/wp-config.php

и браузер должен нам выдать следующее:

Что означает — «У вас нет разрешения на доступ / WP-config.php на этом сервере». Незабываем обратно поменять цифирку в своем IP адресе.

Как заблокировать доступ по IP адресу в админ-панель через файл .htaccess

Для того, чтобы запретить доступ извне в админку блога нам придется создать еще один файл .htaccess, но уже не в корне блога а непосредственно в каталоге wp-admin .

При создании файла .htaccess настоятельно не рекомендую пользоваться обычными блокнотами, которые изначально присутствуют в арсенале Windows.

Во-первых, созданный файл .htaccess необходимо сохранять в кодировке UTF-8 без BOM.

Во-вторых, написание кодов в обычном блокноте сопровождается автоматическим добавлением специальных символов, которые не видны невооруженным глазом.

Не перестану советовать, при создании новых файлов, пользоваться текстовым редактором Notepad++

И так, мы создали файл, и чтобы запретить доступ в админку со всех IP адресов кроме нашего, в совершенно пустом файле .htaccess, прописываем следующие директивы:

Незабываем изменить кодировку файла на UTF-8 без BOM:

И сохранить файл в каталог wp-admin:

Я уже не буду объяснять значения директив, а просто предложу опять для проверки изменить одну цифру в Вашем IP адресе и попробовать войти в админ-панель. В результате браузер покажет туже страницу, что и при проверке доступа к файлу wp-config.php.

Обращаю Ваше внимание на то, что надо обязательно проверить статический у вас IP или динамический. Динамические IP могут меняться с разной периодичностью и прописывать в .htaccess динамический IP не имеет смысла.

Чтобы узнать больше про свой IP и проверить динамический он или статический можно воспользоваться услугами специального сервиса .

Но если в друг вы не смогли зайти к себе в админку из-за смены IP, то помните, что вы всегда можете воспользоватся FTP клиентом или зайти на свой хостинг и поправить файл .htaccess.

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

На сегодня у меня все. Как Вам статья?

С уважением, Виталий Кириллов

Очень красивое видео!

Источник: seo-mayak.com

Категория: Безопасность

Похожие статьи: