Первые несколько месяцев существования сайтов на Joomla проходят бесхлопотно. Но потом, особенно если проект успешен, появляются определённые сложности, которые вначале могут выбить из колеи опытных администраторов. Даже для начинающих хакеров очень просто узнать, какая CMS управляет конкретным сайтом. Существуют сервисы, которые облегчают эту задачу (например, 2ip).
По умолчанию, файлы с административными скриптами устанавливаются в папку administrator. И так делают миллионы пользователей. Известны многочисленные и довольно успешные попытки взломать сайт разработчиков самой Joomla!
Хотя это и не служит утешением, но вы должны понимать, что абсолютную безопасность любого сайта гарантировать невозможно. Любые действия по защите направлены в первую очередь на то, чтобы избавиться от любопытных мальчишек, только освоивших первые азы брутфорса.
Почему взламывают сайты?
Потому же, почему и пишут вирусы для популярных операционных систем:
- Чтобы побаловаться.
- Чтобы добавить свои ссылки или файлы на сайт.
- Чтобы собрать информацию о пользователях сайта.
- Украсть базу данных.
- Навредить и так далее.
Элементы безопасности, встроенные в Joomla
Наверняка любопытные уже заметили, что во всех папках с файлами Joomla обязательно присутствуют файлы с именем index и расширением html. Он там находится для того, чтобы такой же «любопытствующий» недоброжелатель вместо списка файлов и директорий увидел пустой экран. Возможно, это не самое сильное средство против взломщиков, но если оставить ключ на самом видном месте, то войти к вам смогут абсолютно все желающие.
Устанавливаем права доступа
Самое первое действие, которое необходимо выполнить по завершении всех работ, связанных с установкой и настройкой сайта, заключается в установке прав доступа к определённым файлам и директориям Joomla. Обычно это осуществляется в административной панели хостинга или, если есть доступ по SSH-протоколу, то с помощью него заходите на сервер и выполняете необходимые процедуры.
Вот перечень самых необходимых действий:
- Для файла configuration.php запрещаете запись в него всем (в том числе и себе, как создателю). Вернее, разрешается только чтение: создателю, группе и всем остальным пользователям. Как правило, все современные хостинги используют UNIX-подобные операционные системы (Linux), в которых права изменяются с помощью пакета chmod. Впрочем, это можно выполнить и в популярных файловых менеджерах, работающих в Windows (например, Total Commander). Для файла configuration.php числовое представление прав «только чтение» следующее: 444.
- Для всех файлов CMS Joomla устанавливаете такие права: владелец (то есть вы) – может и читать и записывать в них информацию, а все остальные могут только читать (644).
- Для папок нужно установить такие права: владельцу (создателю) – читать, писать и выполнять, а остальным только читать и выполнять (755).
Но если вы хотите установить новые расширения, то права должны быть 777. Иначе у вас просто не будет доступа к папкам и файлам.
Устанавливаем пароль на директорию administrator
Это одна из самых важных директорий. В ней хранятся самые главные файлы со скриптами, управляющими работой сайта. Пароль на эту папку устанавливается также в административной панели хостинга.
Выполняем обновления движка и расширений Joomla
Многие усовершенствования, выполняемые авторами этой CMS, касаются безопасности. На сайтах, посвящённых Joomla, появляются сообщения об уязвимостях. Например, последняя проблема была обнаружена 19.06.2010 года и связана она была с работой расширения Alpha User Points. Соответственно, необходимо периодически интересоваться новыми версиями и по возможности устанавливать их.
Мы также внимательно следим за безопасностью наших расширений. Пока что не было замечаний, но мы будем признательны за любые тематические комментарии.