Set up security certificates for StorageGRID and ONTAP in NetApp Backup and Recovery
Create a security certificate to enable communication between NetApp Backup and Recovery and StorageGRID or ONTAP.
Create a security certificate for StorageGRID
If the communication between NetApp Backup and Recovery containers and StorageGRID should verify the StorageGRID certificate, then complete following steps.
The generated certificate should have CN and Subject Alternative Name as the name provided in NetApp Backup and Recovery when you were activating the backup.
-
Follow the steps in the StorageGRID documentation to create the StorageGRID certificate.
-
Update StorageGRID with the certificate if you have not already done so.
-
Log in to the Console agent as a root user. Run:
sudo su -
Get the NetApp Backup and Recovery (Cloud Backup Service) Docker volume. Run:
docker volume ls | grep cbsOutput example:
local service-manager-2_cloudmanager_cbs_volume"
The volume name differs among Standard, Private, and Restricted deployment modes. This example uses Standard mode. Refer to NetApp Console deployment modes. -
Find the mount point of the NetApp Backup and Recovery volume. Run:
docker volume inspect service-manager-2_cloudmanager_cbs_volume | grep MountpointOutput example:
"Mountpoint": "/var/lib/docker/volumes/service-manager-2_cloudmanager_cbs_volume/_data"
The mount point differs among Standard, Private, and Restricted deployment modes. This example shows a Standard cloud deployment. Refer to NetApp Console deployment modes. -
Change to the MountPoint directory. Run:
cd /var/lib/docker/volumes/service-manager-2_cloudmanager_cbs_volume/_data -
If StorageGRID's certificate is signed by the root CA and an intermediate CA, then append the
pemfiles of both into one file namedsgws.crtin the current location. Do not add the leaf certificate to this file.
Steps for cloudmanager_cbs container
You'll need to enable the StorageGRID Server certificate verification in NetApp Backup and Recovery (Cloud Backup Service).
-
Change directories to the Docker volume obtained in earlier steps.
cd /var/lib/docker/volumes/service-manager-2_cloudmanager_cbs_volume/_data -
Change directories to the config directory.
cd cbs_config -
Create and save a configuration file as shown below with one of the following names based on your deployment environment:
-
production-customer.jsonUsed for Standard mode and Restricted mode deployments. -
darksite-customer.jsonUsed for Private mode deployments.Refer to NetApp Console deployment modes.
Configuration file
{ "protocols": { "sgws": { "certificates": { "reject-unauthorized": true, "ca-bundle": "/config/sgws.crt" } } } }
-
-
Exit the container. Run:
exit -
Restart
cloudmanager_cbs. Run:docker restart cloudmanager_cbs
Steps for cloudmanager_cbs_catalog container
Next, you'll need to enable the StorageGRID Server certificate verification for the Cataloging Service.
-
Change directories to the Docker volume:
cd /var/lib/docker/volumes/service-manager-2_cloudmanager_cbs_volume/_data -
Configure the catalog. Run:
cd cbs_catalog_config -
Create a config file as shown below with one of the following names based on your deployment environment:
-
production-customer.jsonUsed for Standard mode and Restricted mode deployments. -
darksite-customer.jsonUsed for Private mode deployments.Refer to NetApp Console deployment modes.
Catalog configuration file
{ "protocols": { "sgws": { "certificates": { "reject-unauthorized": true, "ca-bundle": "/config/sgws.crt" } } } }
-
-
Restart the catalog. Run:
docker restart cloudmanager_cbs_catalog
Update the Console agent certificate with the StorageGRID certificate based on the agent operating system
Ubuntu
-
Copy the SGWS certificate to
/usr/local/share/ca-certificates. Here is an example:cp /config/sgws.crt /usr/local/share/ca-certificates/where
sgws.crtis the root CA certificate. -
Update the host certificates with the StorageGRID certificate. Run
sudo update-ca-certificates
Red Hat Enterprise Linux
-
Copy the SGWS certificate to
/etc/pki/ca-trust/source/anchors/.cp /config/sgws.crt /etc/pki/ca-trust/source/anchors/where
sgws.crtis the root CA certificate. -
Update the host certificates with the StorageGRID certificate.
update-ca-trust extract -
Update the
ca-bundle.crtcd /etc/pki/tls/certs/ openssl x509 -in ca-bundle.crt -text -noout -
To check whether the certificates are present, run the following command:
openssl crl2pkcs7 -nocrl -certfile /etc/pki/tls/certs/ca-bundle.crt | openssl pkcs7 -print_certs | grep subject | head
Create a security certificate for ONTAP
If the communication between the NetApp Backup and Recovery containers and ONTAP should validate the ONTAP certificate, then complete the following steps.
NetApp Backup and Recovery uses the Cluster Management IP to connect to ONTAP. Enter the IP address of the cluster in the Subject Alternative names of the Certificate. Specify this step when you generate the CSR using the System Manager UI.
Use the System Manager documentation to create a new CA certificate for ONTAP.
-
Login to the Console agent as root. Run:
sudo su -
Get the NetApp Backup and Recovery Docker volume. Run:
docker volume ls | grep cbsOutput example:
local service-manager-2_cloudmanager_cbs_volume
The volume name differs among Standard, Private, and Restricted deployment modes. This example shows a Standard cloud deployment. Refer to NetApp Console deployment modes. -
Obtain the mount for the volume. Run:
docker volume inspect service-manager-2_cloudmanager_cbs_volume | grep MountpointOutput example:
"Mountpoint": "/var/lib/docker/volumes/service-manager-2_cloudmanager_cbs_volume/_data
The mount point differs among Standard, Private, and Restricted deployment modes. This example shows a Standard cloud deployment. Refer to NetApp Console deployment modes. -
Change to the mountpoint directory. Run:
cd /var/lib/docker/volumes/service-manager-2_cloudmanager_cbs_volume/_data -
Complete one of the following steps:
-
If the ONTAP certificate is signed by the root CA and an intermediate CA, then append the
pemfiles of both into one file namedontap.crtin the current location. -
If the ONTAP certificate is signed by a single CA, then rename the
pemfile asontap.crtand copy it in the current location. Do not add the leaf certificate to this file.
-
Steps for cloudmanager_cbs container
Next, enable the ONTAP Server certificate verification in NetApp Backup and Recovery (Cloud Backup Service).
-
Change directories to the Docker volume obtained in earlier steps.
cd /var/lib/docker/volumes/service-manager-2_cloudmanager_cbs_volume/_data -
Change to the config directory. Run:
cd cbs_config -
Create a configuration file as shown below with one of the following names based on your deployment environment:
-
production-customer.jsonUsed for Standard mode and Restricted mode deployments. -
darksite-customer.jsonUsed for Private mode deployments.Refer to NetApp Console deployment modes.
Configuration file
{ "ontap": { "certificates": { "reject-unauthorized": true, "ca-bundle": "/config/ontap.crt" } } }
-
-
Exit the container. Run:
exit -
Restart NetApp Backup and Recovery. Run:
docker restart cloudmanager_cbs
Steps for cloudmanager_cbs_catalog container
Enable the ONTAP Server certificate verification for the Cataloging Service.
-
Change directories to the Docker volume. Run:
cd /var/lib/docker/volumes/service-manager-2_cloudmanager_cbs_volume/_data -
Run:
cd cbs_catalog_config -
Create a configuration file as shown below with one of the following names based on your deployment environment:
-
production-customer.jsonUsed for Standard mode and Restricted mode deployments. -
darksite-customer.jsonUsed for Private mode deployments.Refer to NetApp Console deployment modes.
Configuration file
{ "ontap": { "certificates": { "reject-unauthorized": true, "ca-bundle": "/config/ontap.crt" } } }
-
-
Restart NetApp Backup and Recovery. Run:
docker restart cloudmanager_cbs_catalog
Create a certificate for both ONTAP and StorageGRID
If you need to enable the certificate for both ONTAP and StorageGRID, then the configuration file looks like this:
Configuration file for both ONTAP and StorageGRID
{
"protocols": {
"sgws": {
"certificates": {
"reject-unauthorized": true,
"ca-bundle": "/config/sgws.crt"
}
}
},
"ontap": {
"certificates": {
"reject-unauthorized": true,
"ca-bundle": "/config/ontap.crt"
}
}
}