Шифрование резервных копий для клиента Bareos

Обновлено и опубликовано Опубликовано:

В данной небольшой инструкции мы рассмотрим только возможность шифрования резервируемых данных с помощью Bareos. Подразумевается, что у нас уже установлен и настроен данный сервер резервного копирования. В противном случае, читаем инструкцию Настройка и использование сервера Bareos на Rocky Linux.

Создание сертификатов

Данные действия мы будем выполнять на сервере Bareos. Мы должны сгенерировать пару мастер ключей и пару для клиента.

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

Мастер ключи

Создаем каталог для хранения ключей и переходим в него для более удобной работы:

mkdir /etc/bareos/ssl

cd /etc/bareos/ssl

Создаем закрытый мастер-ключ:

openssl genrsa -out /etc/bareos/ssl/master.key 2048

На основе данного закрытого ключа генерируем открытый ключ:

openssl req -new -key master.key -days 1461 -x509 -out master.crt -subj "/C=RU/ST=SPb/L=SPb/O=Global Security/OU=IT Department/CN=test.dmosk.local/CN=test"

* обратите внимание на subj — данная опция позволит не запрашивать данные в интерактивном режиме. Сертификат будет создан для URL test.dmosk.local или test. По сути, эти данные технически для нас не имеют значения, но для большей информативности лучше внести реальные данные.

Клиентские ключи

Для клиента мы также генерируем пару закрытый-открытый ключи и объединяем их в один pem-файл.

Создаем пару ключей:

openssl genrsa -out client.key 2048

openssl req -new -key client.key -days 1461 -x509 -out client.crt -subj "/C=RU/ST=SPb/L=SPb/O=Global Security/OU=IT Department/CN=test.dmosk.local/CN=test"

Создадим файл pem за счет объединения содержимого двух файлов:

cat client.key client.crt > client.pem

Настройка клиента

Для начала, с сервера переносим файлы master.crt и client.pem. Это можно сделать с помощью утилиты WinSCP (для Windows) или команды scp (Linux), например:

scp client.pem master.crt root@192.168.0.15:/tmp

* данная команда скопирует файлы client.pem и master.crt на клиента 192.168.0.15 (в каталог /tmp). Подключение к компьютеру 192.168.0.15 будет выполняться под пользователем root — не все системы Linux это разрешают и возможно, нужно будет подключиться к удаленной системе под другим пользователем.

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

  • В Linux — /etc/bareos.
  • В Windows — C:\ProgramData\Bareos.

В Windows выполняем простое копирования или перенос, в Linux:

mv /tmp/client.pem /tmp/master.crt /etc/bareos

Открываем конфигурационный файл для настройки клиента. В зависимости от типа системы это будут разные файлы:

  • В Linux — /etc/bareos/bareos-fd.d/client/myself.conf.
  • В Windows — C:\ProgramData\Bareos\bareos-fd.d\client\myself.conf.

К содержимому раздела Client добавим:

Client {
   Name = client-fd
   ...
   PKI Signatures = Yes
   PKI Encryption = Yes
   PKI Keypair    = "/etc/bareos/client.pem"
   PKI Master Key = "/etc/bareos/master.crt"
   #PKI Keypair    = "C:\\ProgramData\\Bareos\\client.pem"
   #PKI Master Key = "C:\\ProgramData\\Bareos\\master.crt"
   PKI Cipher     = aes256

}

* пути до файлов в Linux и Windows будут отличаться. В нашем примере закомментированы для Windows. Также обратите внимание, что для последней ставится два слеша \\.
** где:

  • PKI Keypair — пара закрытый-открытый ключи, которые мы сгенерировали для клиента.
  • PKI Master Key — открытый мастер-ключ.

Перезапускаем службу bareos-fd. Пример команды для Linux:

systemctl restart bareos-filedaemon

Проверка и дешифрация

Чтобы убедиться в работе шифрования, предлагается создать обычный текстовый файл и создать его резервную копию. Подробнее настройка создания резервной копии описана в вышеупомянутой инструкции Настройка и использование сервера Bareos на Rocky Linux.

Пробуем создать резервную копию данного файла и восстановить его. В итоге, мы получим пустой файл и сообщение об ошибке при выполнении задания на восстановление файла.

Для восстановления данных мы должны сначала объединить мастер ключи и сохранить результат в pem-файл:

cat master.* > master.pem

* предполагается, что мы находимся в каталоге, в котором были сгенерированы ключи (в нашем примере, /etc/bareos/ssl).

Теперь копируем файл master.pem на клиент и редактируем конфигурационный файл myself.conf:

Client {
   ...
   PKI Keypair    = "/etc/bareos/master.pem"
   ...
}

Перезапускаем сервис bareos-fd и восстанавливаем файл.

# Серверы # Резервное копирование
Дмитрий Моск — частный мастер
Была ли полезна вам эта инструкция?

Да            Нет