mxBackup — обезличенные копии MODX в пару кликов

  • mxBackup создаёт полноценные резервные копии MODX: файлы сайта, SQL-дамп базы, манифест и контрольные суммы — всё в одном архиве.
  • Главная фишка пакета — отдельный dev-профиль, который автоматически обезличивает данные. Такую копию можно передать разработчику, подрядчику или
    команде тестирования без пользователей, телефонов, адресов и других реальных данных клиентов.
  • Пакет доступен для MODX Revolution 2 и MODX Revolution 3.
  • Полная документация: https://docs.modx.pro/components/mxbackup


Главная идея
Больше не нужно вручную чистить дамп перед передачей разработчику, искать персональные данные по десяткам таблиц и надеяться, что вы ничего
не пропустили. mxBackup создаёт отдельную dev-копию, в которой чувствительные данные заменяются прямо во время формирования SQL-дампа.
Обезличенный бэкап в пару кликов
  • В менеджере MODX достаточно выбрать профиль dev, нажать «Проверить состав», а затем создать копию.
  • mxBackup соберёт файлы сайта и базу данных, полностью очистит сессии и заменит персональные данные безопасными тестовыми значениями.
  • Встроенные правила уже знают основные таблицы MODX и miniShop2: пользователей, профили, заказы, адреса и данные покупателей.
  • Перед созданием архива можно посмотреть, какие таблицы войдут в копию, какие колонки будут обезличены и какие таблицы будут выгружены пустыми.
  • Готовую копию можно передавать разработчику, разворачивать локально или использовать на тестовом сервере.
Можно вообще без кликов
Обезличенную копию можно создавать одной CLI-командой или автоматически по расписанию. Например, раз в неделю готовить свежий dev-бэкап для
команды разработки.
php core/components/mxbackup/cli/mxbackup.php backup --profile=dev
  • Та же команда ставится в cron — менеджер MODX для регулярного запуска не нужен.
  • CLI использует те же профили и правила, которые настроены в интерфейсе пакета.
  • Результат команды возвращается в JSON, поэтому запуск можно подключить к мониторингу или своему сценарию автоматизации.
  • Для крупных сайтов CLI — основной вариант работы: он не зависит от таймаутов браузера, PHP-FPM и прокси.
Как работает обезличивание
  • Почта, телефоны, имена, адреса, IP и другие типовые данные заменяются стабильными тестовыми значениями.
  • Подмена детерминированная: связанные записи остаются согласованными между таблицами, поэтому копия сохраняет пользу для разработки и
    тестирования.
  • Пароли, токены, секреты и API-ключи очищаются или заменяются безопасными значениями.
  • Таблицы с сессиями выгружаются пустыми.
  • Для собственных таблиц можно добавить правила через менеджер: заменить значение тестовым, очистить, захешировать или подставить фиксированную
    заглушку.
  • Поддерживаются правила для отдельных полей внутри JSON.
  • Пользовательские правила имеют приоритет над встроенными, поэтому обезличивание можно подстроить под конкретный проект.
Не создаст сомнительную dev-копию молча
Для известных чувствительных таблиц mxBackup работает по принципу fail-closed. Если структура базы изменилась и обязательное поле больше
нельзя гарантированно обработать, пакет остановит создание архива и покажет ошибку. Лучше не получить копию вообще, чем случайно передать реальные
данные клиентов.
  • Свои таблицы пакет угадать не может, поэтому для нестандартных сущностей с персональными или коммерчески чувствительными данными нужно добавить
    собственные правила.
  • Проверка состава покажет, применились ли эти правила к нужным таблицам и колонкам.
  • Если таблица нужна только для сохранения структуры, её можно выгрузить полностью пустой.
Обычные резервные копии тоже есть
  • Профиль prod создаёт полноценную аварийную копию без изменения данных.
  • В архив попадают выбранные файлы сайта, SQL-дамп базы, манифест и контрольные суммы.
  • Можно включать и исключать отдельные каталоги и таблицы.
  • Поддерживаются форматы ZIP и tar.gz.
  • Старые архивы автоматически удаляются по заданным правилам хранения.
  • Параллельные запуски блокируются, чтобы два процесса не испортили копию.
  • Результат сохраняется в истории запусков, при необходимости отправляется отчёт на почту.
Шифрование и безопасная передача
  • Содержимое ZIP-архива можно зашифровать с помощью AES-256.
  • Пароль не попадает в манифест, историю запусков и логи пакета.
  • Для CLI пароль можно передать через защищённый файл или переменную окружения, не показывая его в аргументах команды и списке процессов.
  • Каталог хранения проверяется до запуска: mxBackup не позволит складывать архивы в публичную часть сайта, core, кэш или корень webroot.
Восстановление без прыжка в неизвестность
  • Перед восстановлением mxBackup проверяет формат архива, манифест, контрольные суммы, внутренние пути и версию MODX.
  • После проверки пакет выдаёт отдельный код подтверждения.
  • Непосредственно перед изменением сайта автоматически создаётся страховочная production-копия текущего состояния.
  • Можно восстановить весь сайт, только файлы или только базу данных.
  • В менеджере право на восстановление вынесено отдельно, поэтому его можно не выдавать пользователям, которым нужен только запуск и просмотр
    истории.
Что уже встроено
  • Профили prod и dev.
  • Запуск из менеджера, CLI и cron.
  • Архив файлов и SQL-дамп базы в одном пакете.
  • Обезличивание MODX и miniShop2.
  • Собственные правила для таблиц, колонок и JSON-полей.
  • Предварительная проверка состава без создания архива.
  • ZIP, tar.gz и AES-256.
  • Ротация старых копий.
  • История запусков и отчёты.
  • Блокировка параллельных процессов.
  • Контрольные суммы и манифест.
  • Проверка и восстановление архивов.
  • Автоматический страховочный бэкап перед восстановлением.
Для кого этот пакет
  • Для разработчиков, которым регулярно присылают боевые дампы и предлагают самостоятельно убрать из них всё лишнее.
  • Для владельцев сайтов, которым нужно безопасно передавать проект внешним исполнителям.
  • Для команд, которым нужна всегда свежая обезличенная копия production-сайта на dev или stage.
  • Для администраторов, которым нужны регулярные резервные копии MODX с понятной историей, ротацией и возможностью восстановления.





Бесплатно
mxBackup — абсолютно бесплатный пакет. Можно использовать его для обычных резервных копий, автоматически готовить обезличенные dev-архивы,
переносить профили между проектами и безопасно выдавать копии разработчикам без отдельной оплаты.
Артур Шевченко
Артур Шевченко
Сегодня в 13:03
modx.pro
65
Поблагодарить автора Отправить деньги

Комментарии: 0

Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
0