Работа с сертификатами и ключами SSL
В этом разделе описан процесс создания собственных ключей и сертификатов вместо тех, которые входят в стандартную поставку RuBackup. В комплекте поставки RuBackup есть необходимые для работы SSL-сертификаты клиента и сервера.
Сертификаты, необходимые для работы RuBackup, располагаются в каталоге /opt/rubackup/keys
и предоставляются в составе пакета rubackup-common
.
В процессе подключения к серверу клиент отправляет свой сертификат /opt/rubackup/keys/client/clientCert.crt
для проверки подлинности клиента сервером. Также клиент принимает от сервера его сертификат /opt/rubackup/keys/server/serverCert.crt
и проверяет его подлинность с использованием серверного корневого сертификата /opt/rubackup/keys/rootCA/serverRootCACert.crt
. Сервер проверяет подлинность полученного клиентского сертификата с помощью клиентского корневого сертификата /opt/rubackup/keys/rootCA/clientRootCACert.crt
.
При подключении к серверу оконный менеджер отправляет свой сертификат /opt/rubackup/keys/rbm/rbmCert.crt
на проверку. Также он принимает от сервера его сертификат /opt/rubackup/keys/server/serverCert.crt
и проверяет его подлинность с использованием серверного корневого сертификата /opt/rubackup/keys/rootCA/serverRootCACert.crt
. Сервер проверяет подлинность полученного сертификата оконного менеджера с помощью клиентского корневого сертификата /opt/rubackup/keys/rootCA/clientRootCACert.crt
.
Для взаимодействия с сервером лицензий и проверки его на подлинность используется корневой сертификат сервера лицензий /opt/rubackup/keys/rootCA/licenseServerRootCACert.crt
.
Размещение сертификатов и ключей
Файлы приватных ключей следует хранить в надёжном месте, недоступном ни с сервера, ни с клиента RuBackup.
При замене сертификатов на собственные необходимо убедиться, что все сертификаты обновлены на всех узлах, где установлены компоненты RuBackup: клиент, сервер, медиасервер, резервный сервер, оконный менеджер, REST API сервис и другие.
Использование цепочки сертификатов
Иногда клиентский или серверный сертификат подписывается не корневым клиентским или серверным сертификатом, а промежуточным сертификатом, который, в свою очередь, подписан корневым или следующим промежуточным сертификатом. Это называется цепочкой сертификатов.
Чтобы RuBackup мог работать с такой цепочкой сертификатов, необходимо объединить все промежуточные и корневой сертификаты в единый корневой клиентский или серверный сертификат.
@startuml object "ROOT CA" as 1 object "Intermediate CA 1" as 2 object "Intermediate CA 2" as 3 object "SSL Certificate" as 4 1 ..|> 2 2 ..|> 3 3 ..|> 4 @enduml