Основные правила защиты сайта на Joomla.

Используйте хороший и проверенный хостинг.

Все усилия по защите сайта на Joomla будут бесполезными, если ваш хостинг недостаточно защищен. Читайте отзывы и не выбирайте самый дешевый.

Обновляйте CMS до последней версии.

Это касается не только Joomla, но и других систем управления сайтом. Разработчики регулярно выпускают релизы безопасности для CMS. Устаревший код имеет уязвимости,  которые могут использовать специальные программы-боты.

Установите надежный пароль администратора.

Для создания пароля можно воспользоваться любым из on-line сервисов по генерации паролей. Логин так же должен быть неявным (отличным от admin, superuser  и т.п.).

Ограничьте прямой доступ к административной панели Joomla.

Админ панель в Joomla имеет стандартный адрес site.ru/administrator. Это известно всем и чтобы исключить возможность взлома через подбор логина и пароля доступ к панели рекомендуется скрыть.

Рекомендую два расширения.

  1. AdminExile - плагин для защиты админки.

 Изменяет адрес, по которому будет доступна административная панель. Имеется возможность добавления к адресу секретного ключа. Можно блокировать или разрешать доступ к админпанели для конкретных IP адресов. Позволяет ограничить количество попыток ввода пароля (защита от брутфорс).

  1. Компонент Admin Tools от Akeeba.

После настройки компонент Admin Tools создаст 2 файла в папке administrator:

  • .htaccess — обеспечивает вывод всплывающего окна.
  • .htpasswd — содержит дополнительные логин и пароль.

Теперь при переходе по адресу на страницу входа в админку браузер будет выводить всплывающее окно с полями для дополнительных логина и пароля.

Проверьте права доступа к важным файлам и папкам.

Неправильная настройка прав  - ключ к взлому вашего сайта. Рекомендуемые значения прав для сайтов на Joomla:

  • 755 — для папок
  • 644 — для файлов
  • 444 — для файла configuration.php

Проверить и изменить (при необходимости) эти значения  проще всего  через Менеджер файлов вашего хостинга.

Устанавливайте  расширения только с официальных сайтов.

Любое расширение, установленное на сайт, может обращаться к  базе данных Joomla. Теоретически,  любой опытный программист  имеет возможность дополнить любой модуль или плагин  "полезной функцией”  считывания  данных из таблиц вашей базы данных. При этом расширение будет работать как и должно. Главная опасность – при сканировании антивирусом такое расширение может не определяться как вредоносное.

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

Используйте необходимый минимум расширений.

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

Настройте регулярное резервное копирования сайта.

Резервные копии сайта нужно делать регулярно и обязательно перед обновлением CMS Joomla или перед установкой  дополнительных расширений.

Настроить создание резервных копий можно :

  1. средствами хостинга (если есть такая возможность);
  2. используя компонент Akeeba BackUp (бесплатная и платная версии);
  3. скрипт резервного копирования сайта AutoBackupMaster 3 (платный);
  4. ручным способом (копируются и сохраняются все файлы сайта и дампы базы данных).

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

Для предотвращение взлома и атак возможно использовать плагины или компоненты, которые обеспечат дополнительные меры безопасности. Есть несколько популярных решений, которые реализуют функции сетевого экрана (firewall).  Например, RSFirewall — самый продвинутый компонент безопасности для Joomla 3, применяемый для защиты сайта от взлома и атак хакеров.