Смена ключа шифрования не должна лишать вас доступа к старым резервным копиям. До отключения прежнего ключа проверьте расшифровку копий разных поколений из той среды и под той ролью, которыми будете пользоваться при аварии.
Сначала выясните, что именно меняется: пароль к ключу, сам ключ или только права доступа. Успешное создание нового бэкапа не подтверждает, что архив до смены по-прежнему можно прочитать.
1. Разделите пароль, ключ и доступ к хранилищу
Пароль защищает ключ. Его замена может оставить шифрование самих данных прежним. Например, в Borg команда key change-passphrase меняет пароль, но не ключи шифрования; если злоумышленник уже получил ключ и пароль, такая операция не защитит прошлые и будущие копии в том же репозитории. Это ограничение указано в документации Borg.
Ротация внутри KMS отличается от создания другого ключа. KMS — сервис управления ключами. При ротации ключа AWS KMS с материалом AWS_KMS сервис сохраняет прежний материал и выбирает нужный при расшифровке; существующие данные при этом не перешифровываются. Создание нового ключа и перевод задания на него — отдельный сценарий: старые зависимости нужно учитывать явно. См. порядок ротации AWS KMS.
Доступ к архиву и право расшифровки проверяются отдельно. Возможность скачать объект ещё не доказывает, что аварийная роль сможет использовать нужный ключ. Не переносите поведение AWS на другой облачный сервис или программу без проверки её документации.
2. Свяжите поколения копий с ключами
Составьте закрытый реестр без секретных значений. Для каждого поколения запишите:
- идентификатор комплекта и время создания с часовым поясом;
- место хранения и версию объекта либо снимка;
- инструмент, версию и режим шифрования;
- идентификатор ключа или ссылку на защищённую запись о нём;
- роль восстановления и способ получить аварийный доступ;
- срок, до которого комплект нужен для восстановления.
Идентификатор ключа помогает найти зависимость, но не заменяет ключевой материал. Запись «используется текущий ключ» недостаточна: после переключения она перестанет объяснять, чем открывать прежний архив.
Для проверки выберите комплект до смены, первый завершённый комплект после неё и более давнюю копию, если она относится к другому поколению ключей. У инкрементальных копий учитывайте все необходимые части цепочки, а не только последний файл.
3. Проверьте восстановление без старого сервера
Подготовьте отдельную защищённую среду с совместимой версией программы. Не используйте рабочий сервер с уже загруженными ключами как единственное доказательство аварийного доступа.
- Получите выбранный старый комплект штатной ролью восстановления.
- Получите ключ через предусмотренный защищённый канал. Не помещайте его в журнал, командную строку или заявку в поддержку.
- Расшифруйте и полностью прочитайте выбранный комплект; запишите охват проверки и код завершения.
- После смены повторите тот же тест для старого комплекта и отдельно проверьте новый.
- Зафиксируйте, какой ключ и роль использованы, что прочитано и какие зависимости ещё не проверены.
Если применяется Borg, резервный экспорт ключа остаётся зашифрованным и не содержит пароль: для восстановления нужны оба компонента. Хранить единственный экспорт внутри архива, который открывается этим же ключом, бессмысленно; требования описаны в разделе об экспорте ключа Borg.
Успешная расшифровка не подтверждает согласованность базы с файлами и запуск сайта. Это следующий этап — пробное восстановление на изолированном стенде.
4. Если старый бэкап не читается
Объект не удаётся получить
Начните с адреса, версии объекта, доступности хранилища и прав чтения. Пока сам комплект не получен, рано объяснять отказ неправильным ключом.
Комплект получен, расшифровка отклонена
Сверьте поколение копии, идентификатор ключа, пароль к нему и разрешения аварийной роли. В KMS проверьте состояние нужного ключа: для AWS KMS даже состояние ожидания удаления уже запрещает криптографические операции. Окончательно удалённый ключ восстановить нельзя — см. ограничения удаления AWS KMS.
Не создавайте новый ключ с похожим именем в надежде открыть старые данные. При ошибке чтения сохраните исходный комплект и обезличенное сообщение; проверка целостности бэкапа поможет отделить повреждение данных от проблем доступа.
5. Когда прежний ключ можно выводить из использования
Один успешный тест не доказывает отсутствие остальных зависимостей. Сначала сверьте весь реестр: нужные копии либо сохраняют контролируемый путь расшифровки, либо перенесены поддерживаемым способом под новую схему и повторно проверены. Для ненужных комплектов должно быть принято решение по срокам хранения.
При подозрении на утечку нужен отдельный план: изоляция скомпрометированной среды, отзыв опасных доступов и переход на безопасную схему хранения. Сохранение аварийной читаемости не означает, что прежний ключ следует оставить доступным всем старым ролям.
Web-Puls может наблюдать за доступностью публичного сайта после восстановления, но внешний HTTP-мониторинг не проверяет ключи и читаемость резервных копий.
Если старый комплект не расшифровывается или непонятно, как безопасно вывести ключ из использования, отправьте заявку на профессиональную поддержку. Укажите инструмент, схему хранения и обезличенную ошибку без архивов, ключей и паролей: специалист оценит задачу и предложит формат работ.