Spec-Zone.ru › MySQL Enterprise Backup 4.1
Глава 9 Шифрование резервных копий

Глава 9 Шифрование резервных копий

Для повышения безопасности резервных данных MySQL Enterprise Backup предоставляет шифрование для резервных копий в формате одного файла. Шифрование также может быть применено при создании частичных, сжатых или инкрементных резервных копий одного файла, а также для потоковой передачи данных резервной копии на другое устройство или сервер.

Шифрование выполняется с использованием блочного шифра Advanced Encryption Standard (AES) в режиме CBC с использованием строкой ключа из 64 шестнадцатеричных цифр, предоставленной пользователем. Расшифровка выполняется с использованием того же ключа. Ключ можно создать вручную, просто объединив 64 случайных шестнадцатеричных байта, или его можно сгенерировать с помощью shasum (или аналогичных программ для вычисления хэш-функций, работающих на вашей платформе), предоставив ему фразу ключа:

$ echo -n "my secret passphrase" | shasum -a 256
a7e845b0854294da9aa743b807cb67b19647c1195ea8120369f3d12c70468f29  -

Обратите внимание, что “-” в конце не является частью ключа и его следует игнорировать. Передайте ключ команде mysqlbackup с опцией --key, или вставьте ключ в файл ключа и передайте путь к файлу в команду mysqlbackup с опцией --key-file.

Для генерации случайного ключа можно использовать такие инструменты, как OpenSSL:

$ openssl rand -hex 32
8f3ca9b850ec6366f4a54feba99f2dc42fa79577158911fe8cd641ffff1e63d6

Чтобы поместить сгенерированный OpenSSL ключ в файл ключа, можно выполнить следующие действия:

$ openssl rand -hex 32 >keyfile
$ cat keyfile
6a1d325e6ef0577f3400b7cd624ae574f5186d0da2eeb946895de418297ed75b

Функция шифрования использует собственный формат шифрования MySQL Enterprise Backup, что означает, что расшифровка возможна только с помощью MySQL Enterprise Backup. Для операционных систем семейства Unix используются различные магические числа для идентификации зашифрованных и незашифрованных файлов резервных копий. Например, вы можете добавить эти строки в файл /etc/magic вашей операционной системы:

0   string  MBackuP\n   MySQL Enterprise Backup backup image
0   string  MebEncR\n   MySQL Enterprise Backup encrypted backup

Команда file может быть использована для определения типов файлов:

  $ file /backups/image1 /backups/image2
  /backups/image1: MySQL Enterprise Backup backup image
  /backups/image2: MySQL Enterprise Backup encrypted backup

Опции команд, используемые для шифрования и расшифровки, это --encrypt, --decrypt, --key и --key-file. Эти опции могут быть использованы с различными операциями над резервными изображениями. Подробности см. в разделе 16.13 «Опции шифрования».

Ниже приведен пример команды для создания зашифрованной резервной копии:

mysqlbackup --backup-image=/backups/image.enc --encrypt
   --key=23D987F3A047B475C900127148F9E0394857983645192874A2B3049570C12A34
   --backup-dir=/var/tmp/backup  backup-to-image

Чтобы использовать файл ключа для той же задачи:

mysqlbackup --backup-image=/backups/image.enc --encrypt
   --key-file=/meb/key  --backup-dir=/var/tmp/backup  backup-to-image

Чтобы расшифровать резервную копию при ее извлечении:

mysqlbackup --backup-image=/backups/image.enc --decrypt
   --key-file=/meb/key --backup-dir=/backups/extract-dir  extract

Чтобы проверить изображение зашифрованной резервной копии:

mysqlbackup --backup-image=/logs/encimage.bi --decrypt --key-file=/meb/enckey validate

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-enterprise-backup-4.1-en/meb-encryption.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API