В данной небольшой инструкции мы рассмотрим только возможность шифрования резервируемых данных с помощью 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.remontka.local/CN=test»
* обратите внимание на subj — данная опция позволит не запрашивать данные в интерактивном режиме. Сертификат будет создан для URL test.remontka.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.remontka.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:ProgramDataBareos.
В Windows выполняем простое копирования или перенос, в Linux:
mv /tmp/client.pem /tmp/master.crt /etc/bareos
Открываем конфигурационный файл для настройки клиента. В зависимости от типа системы это будут разные файлы:
- В Linux — /etc/bareos/bareos-fd.d/client/myself.conf.
- В Windows — C:ProgramDataBareosbareos-fd.dclientmyself.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 и восстанавливаем файл.