Веб-разработка

Защита сайта на HostCMS: обновления, права, резервные копии

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

Защита сайта на HostCMS: обновления, права, резервные копии

Сразу после запуска сайта на HostCMS сделайте четыре вещи: установите последние обновления системы, смените стандартный логин и пароль администратора и заведите сотрудникам отдельные учётные записи с ограниченными правами, ограничьте доступ к центру администрирования и настройте регулярные резервные копии с хранением вне сервера. Этого хватит, чтобы закрыть большую часть автоматических атак.

HostCMS — популярная российская CMS, на ней работают сайты компаний, интернет-магазины и порталы. Чем шире распространена система, тем охотнее её сканируют боты: они ищут стандартный адрес центра администрирования, перебирают пароли, проверяют устаревшие версии и забытые на сервере файлы установки и резервных копий. Взлом редко бывает «точечным» — чаще это массовая автоматическая атака на всё, что плохо защищено.

Хорошая новость в том, что в HostCMS многое для защиты уже встроено: система обновлений, разграничение прав сотрудников, модуль резервного копирования, работа с IP-адресами. Нужно лишь всё это включить и настроить. Ниже — порядок действий, которым мы в Pear Advert пользуемся при запуске и аудите сайтов на HostCMS.

Официальная документация HostCMS: описание модулей, настроек и центра администрирования
Официальная документация HostCMS: описание модулей, настроек и центра администрирования

1. Установите обновления и продлите поддержку

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

  • Проверьте текущую версию системы и сравните её с последней на странице обновлений HostCMS.
  • Перед обновлением сделайте полную резервную копию файлов и базы данных.
  • Если сайт сильно доработан под вас, сначала проверьте обновление на тестовой копии.
  • Следите, чтобы срок поддержки лицензии не истёк: без него сайт перестаёт получать исправления.
  • Обновляйте и окружение на хостинге: версию PHP и MySQL/MariaDB, поддерживаемую вашей версией HostCMS.

2. Пароли, пользователи и права доступа

Самая частая причина взлома — не уязвимость, а слабый или общий пароль. После установки HostCMS сразу замените стандартные учётные данные администратора: логин не должен быть «admin», пароль — длинным (от 14 символов) и уникальным.

В HostCMS пользователи центра администрирования являются сотрудниками компании: они распределяются по отделам и должностям, а права на модули и действия настраиваются через политику безопасности и права доступа в модуле «Компании». Используйте это:

  • Каждому сотруднику — своя учётная запись. Общий логин на весь отдел не позволяет понять, кто что изменил.
  • Полные права оставьте одному-двум ответственным лицам. Контент-менеджеру достаточно доступа к информационным системам и структуре сайта, менеджеру магазина — к заказам.
  • Не давайте сотрудникам доступ к модулям, через которые можно выполнить код или изменить файлы: шаблоны, SQL-запросы, работа с файлами.
  • Удаляйте или блокируйте учётные записи уволенных сотрудников и подрядчиков сразу после завершения работы.
  • Если ваша версия поддерживает дополнительное подтверждение входа, включите его для администраторов.

3. Защитите центр администрирования

По умолчанию центр администрирования HostCMS открывается по адресу /admin/, и боты это знают. Задача — сделать так, чтобы до формы входа добирались только свои.

  • Ограничьте доступ к каталогу /admin/ по IP-адресам офиса на уровне веб-сервера (директивы в .htaccess для Apache или в конфигурации nginx). Если адреса динамические, используйте VPN.
  • Как дополнительный слой поставьте на каталог HTTP-авторизацию средствами хостинга.
  • Используйте модуль «IP-адреса» для блокировки адресов, с которых идёт перебор паролей или подозрительная активность.
  • Входите в центр администрирования только по https и не сохраняйте пароль в браузере на общих компьютерах.

4. Конфигурация и права на файлы

Параметры подключения к базе данных и другие важные настройки HostCMS хранятся в конфигурационных файлах в каталоге modules/core/config/. Если злоумышленник прочитает их, он получит доступ к базе.

  • Используйте для сайта отдельного пользователя базы данных с правами только на его базу, а не root.
  • Выставьте стандартные права: каталоги 755, файлы 644; конфигурационные файлы — строже, если хостинг это позволяет. Права 777 недопустимы.
  • Удалите с сервера файлы и каталоги установки, если они остались после развёртывания, а также старые архивы и дампы базы из корня сайта.
  • Отключите вывод ошибок PHP на экран на рабочем сайте: сообщения об ошибках раскрывают пути и структуру.
  • Закройте доступ по FTP, если он не нужен, и пользуйтесь SFTP с отдельными учётными записями.
Защита сайта начинается с доступа к серверу и центру администрирования
Защита сайта начинается с доступа к серверу и центру администрирования

5. Резервные копии

В HostCMS есть модуль «Резервное копирование»: он создаёт копии из центра администрирования, позволяет восстановиться из копии, а также выгружать копии в облачное хранилище и загружать их оттуда. Это главный инструмент восстановления после взлома или неудачного обновления.

  • Делайте копию и файлов, и базы данных. Одна база без файлов, как и наоборот, сайт не восстановит.
  • Храните копии вне сервера сайта: в облаке или у хостинга в отдельном хранилище. Если сервер скомпрометирован, локальные копии тоже под угрозой.
  • Не оставляйте архивы в публичных каталогах сайта — их ищут боты.
  • Настройте расписание: для активно меняющегося магазина — ежедневно, для сайта-визитки — раз в неделю, плюс внеплановая копия перед каждым обновлением.
  • Раз в несколько месяцев проверяйте восстановление на тестовом сервере. Копия, из которой нельзя восстановиться, бесполезна.

6. Формы, капча и спам

Формы обратной связи, регистрация пользователей сайта, комментарии и отзывы привлекают ботов. HostCMS поддерживает проверку CAPTCHA в формах — включите её везде, где посетитель может что-то отправить.

  • Включите капчу в формах, регистрации и комментариях.
  • Включите премодерацию комментариев и отзывов.
  • Ограничьте типы файлов, которые посетители могут прикреплять к формам.
  • Если спам идёт с конкретных адресов, заблокируйте их через модуль «IP-адреса».

7. HTTPS и защитные заголовки

Весь сайт должен работать по https, включая центр администрирования. Сертификат выпускается на стороне хостинга, например бесплатный Let’s Encrypt.

  • Настройте постоянный редирект с http на https и укажите адрес с https в настройках сайта.
  • Добавьте на уровне веб-сервера заголовки Strict-Transport-Security, X-Content-Type-Options: nosniff, X-Frame-Options или Content-Security-Policy с frame-ancestors.
  • Проверьте, что в шаблонах нет ссылок на скрипты и изображения по http.

8. Мониторинг и журнал

Чем раньше вы заметите проблему, тем дешевле её исправить.

  • Регулярно просматривайте журнал событий центра администрирования: входы, неудачные попытки авторизации, изменения.
  • Подключите внешний мониторинг доступности сайта с уведомлениями.
  • Добавьте сайт в Яндекс Вебмастер — сервис сообщает о заражении и подозрительном содержимом.
  • Следите за неожиданными изменениями файлов: новые PHP-файлы в каталогах загрузок — тревожный признак.
Задача Где решается
Обновления системы Центр администрирования HostCMS
Права сотрудников Модуль «Компании», политика безопасности
Блокировка адресов Модуль «IP-адреса»
Резервные копии Модуль «Резервное копирование» и хостинг
Права на файлы, HTTPS, заголовки Хостинг и веб-сервер
Документация модуля «Резервное копирование» HostCMS
Документация модуля «Резервное копирование» HostCMS

Типичные ошибки

  • Логин «admin» и простой пароль, оставшиеся после установки.
  • Один аккаунт с полными правами на всю команду и подрядчиков.
  • Истёкший период обновлений и сайт на версии многолетней давности.
  • Резервные копии только на том же сервере или архивы в корне сайта.
  • Права 777 на каталоги «чтобы всё работало».
  • Подключение к базе под root-пользователем.
  • Формы без капчи и комментарии без модерации.
  • Центр администрирования открыт для всего интернета по стандартному адресу.

Чек-лист первичной защиты

  1. Установлена последняя доступная версия HostCMS, поддержка лицензии активна.
  2. Версии PHP и СУБД актуальны и поддерживаются.
  3. Стандартный логин администратора изменён, пароль от 14 символов.
  4. У каждого сотрудника своя учётная запись.
  5. Права настроены через политику безопасности, полные права у одного-двух человек.
  6. Удалены учётные записи бывших сотрудников и подрядчиков.
  7. Доступ к /admin/ ограничен по IP или дополнительной авторизацией.
  8. Для базы используется отдельный пользователь с минимальными правами.
  9. Права на файлы 755/644, нет каталогов с 777.
  10. С сервера удалены установочные файлы, старые архивы и дампы.
  11. Вывод ошибок PHP на рабочем сайте отключён.
  12. Настроены регулярные копии через модуль «Резервное копирование» с хранением вне сервера.
  13. Восстановление из копии проверено.
  14. Во всех формах включена капча, комментарии модерируются.
  15. Сайт работает только по https, добавлены защитные заголовки, подключён мониторинг.

Частые вопросы

Нужен ли отдельный модуль безопасности для HostCMS?

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

Можно ли перенести центр администрирования на другой адрес?

Надёжнее не прятать адрес, а ограничить к нему доступ: по IP, через VPN или дополнительную HTTP-авторизацию. Это работает независимо от того, знает ли бот путь.

Как часто делать резервные копии?

Для интернет-магазина — ежедневно, для сайта компании — еженедельно, и обязательно перед каждым обновлением или крупной правкой.

Что делать, если сайт уже взломан?

Смените все пароли (центр администрирования, база, хостинг, SFTP), найдите и удалите посторонние файлы, восстановитесь из чистой копии, установите обновления и выясните, через что произошёл взлом, чтобы он не повторился.

Поможем настроить

Если не хочется разбираться самостоятельно, мы проведём аудит сайта на HostCMS: проверим версию и обновления, права сотрудников, настройки сервера и резервные копии, а затем закроем найденные уязвимости.

Читайте также

Pear Advert · поддержка и защита сайтов

Защитим ваш сайт на HostCMS

Обновим систему, настроим права сотрудников, закроем доступ к центру администрирования и организуем резервные копии вне сервера.

  • Аудит безопасности и отчёт с приоритетами
  • Обновления, бэкапы и мониторинг доступности
  • Очистка от вирусов и восстановление после взлома

Ответим в течение рабочего дня

Читать дальше

Статьи по теме

Начать проект

Давайте сделаем крутой проект вместе

Расскажите о задаче — мы бесплатно проанализируем нишу, предложим решение и назовём сроки со стоимостью. Без навязчивых звонков.

Телефон

8 (926) 837 76 68

Почта

info@pear-advert.ru

Офис

Москва, ул. Гиляровского, 57с1

Оставьте заявку

Ответим в течение рабочего дня

Выберите тип проекта

Данные используются только для ответа на заявку и хранятся не дольше трёх лет.