Techniques for secure host connectivity in disaster recovery scenarios
A method for establishing secure connectivity is described. The method may include transmitting, to one or more host nodes of a data management system (DMS), an indication of a backup service configuration that includes a public key certificate associated with a first cluster of storage nodes in the DMS and a root certificate associated with a certificate authority. The method may further include establishing a primary connection between the first cluster and the host nodes using the public key certificate. The method may further include obtaining, by a second cluster of storage nodes in the DMS, a certificate chain signed by the certificate authority. The method may further include establishing a secondary connection between the second cluster and the host nodes in response to the first cluster becoming disconnected from the host nodes, where the secondary connection is established using the certificate chain.
1 . A method for establishing secure connectivity at a data management system, comprising:
transmitting, to one or more host nodes associated with a client of the data management system, an indication of a backup service configuration that includes a public key certificate associated with a first cluster of storage nodes in the data management system and a root certificate associated with a certificate authority;
establishing a primary connection between the first cluster and the one or more host nodes using a first key pair derived from the public key certificate in the backup service configuration, wherein the one or more host nodes are external to the first cluster;
receiving, from the client of the data management system, an indication to transmit a certificate signing request to the certificate authority;
transmitting the certificate signing request from a second cluster of storage nodes in the data management system to the certificate authority based at least in part on receiving the indication;
obtaining, by the second cluster of storage nodes in the data management system, a certificate chain signed by the certificate authority based at least in part on transmitting the certificate signing request; and
establishing a secondary connection between the second cluster and the one or more host nodes in response to the first cluster becoming disconnected from the one or more host nodes based at least in part on a failure of the primary connection, wherein the secondary connection is established using a second key pair derived from the certificate chain signed by the certificate authority.
2 . The method of claim 1 , wherein establishing the secondary connection comprises:
establishing the secondary connection between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system in response to one or more of a service outage, a natural disaster, or an operational failure associated with the first cluster of storage nodes in the data management system.
3 . The method of claim 1 , wherein establishing the secondary connection comprises:
establishing the secondary connection between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system in accordance with a failover recovery scheme of the data management system.
4 . The method of claim 1 , further comprising:
designating the second cluster of storage nodes in the data management system as a primary cluster for the one or more host nodes associated with the client of the data management system after establishing the secondary connection between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system.
5 . The method of claim 1 , further comprising:
generating a symmetric key to use for subsequent communications between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system after establishing the secondary connection between the second cluster and the one or more host nodes.
6 . The method of claim 5 , further comprising:
exchanging at least one message between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system after the secondary connection is established, wherein the at least one message is encrypted using the symmetric key.
7 . The method of claim 1 , wherein the secondary connection between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system is established by performing a transport layer security handshake procedure between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system.
8 . The method of claim 1 , wherein the certificate chain obtained by the second cluster of storage nodes in the data management system comprises a list of certificates that include a public key certificate associated with the second cluster and the root certificate associated with the certificate authority.
9 . The method of claim 1 , wherein the certificate authority is trusted by the one or more host nodes associated with the client of the data management system.
10 . An apparatus for establishing secure connectivity at a data management system, comprising:
at least one processor;
memory coupled with the at least one processor; and
instructions stored in the memory and executable by the at least one processor to cause the apparatus to:
transmit, to one or more host nodes associated with a client of the data management system, an indication of a backup service configuration that includes a public key certificate associated with a first cluster of storage nodes in the data management system and a root certificate associated with a certificate authority;
establish a primary connection between the first cluster and the one or more host nodes using a first key pair derived from the public key certificate in the backup service configuration, wherein the one or more host nodes are external to the first cluster;
receive, from the client of the data management system, an indication to transmit a certificate signing request to the certificate authority;
transmit the certificate signing request from a second cluster of storage nodes in the data management system to the certificate authority based at least in part on receiving the indication;
obtain, by the second cluster of storage nodes in the data management system, a certificate chain signed by the certificate authority based at least in part on transmitting the certificate signing request; and
establish a secondary connection between the second cluster and the one or more host nodes in response to the first cluster becoming disconnected from the one or more host nodes based at least in part on a failure of the primary connection, wherein the secondary connection is established using a second key pair derived from the certificate chain signed by the certificate authority.
11 . A non-transitory computer-readable medium storing code, the code comprising instructions executable by one or more processors to:
transmit, to one or more host nodes associated with a client of a data management system, an indication of a backup service configuration that includes a public key certificate associated with a first cluster of storage nodes in the data management system and a root certificate associated with a certificate authority;
establish a primary connection between the first cluster and the one or more host nodes using a first key pair derived from the public key certificate in the backup service configuration, wherein the one or more host nodes are external to the first cluster;
receive, from the client of the data management system, an indication to transmit a certificate signing request to the certificate authority;
transmit the certificate signing request from a second cluster of storage nodes to the certificate authority based at least in part on receiving the indication;
obtain, by the second cluster of storage nodes in the data management system, a certificate chain signed by the certificate authority based at least in part on transmitting the certificate signing request; and
establish a secondary connection between the second cluster and the one or more host nodes in response to the first cluster becoming disconnected from the one or more host nodes based at least in part on a failure of the primary connection, wherein the secondary connection is established using a second key pair derived from the certificate chain signed by the certificate authority.
12 . The non-transitory computer-readable medium of claim 11 , wherein to establish the secondary connection, the instructions are further executable by the one or more processors too:
establish the secondary connection between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system in accordance with a failover recovery scheme of the data management system.
13 . The non-transitory computer-readable medium of claim 11 , wherein the instructions are further executable by the one or more processors to:
designate the second cluster of storage nodes in the data management system as a primary cluster for the one or more host nodes associated with the client of the data management system after establishing the secondary connection between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system.
14 . The non-transitory computer-readable medium of claim 11 , wherein to establish the secondary connection, the instructions are further executable by the one or more processors to:
establish the secondary connection between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system in response to one or more of a service outage, a natural disaster, or an operational failure associated with the first cluster of storage nodes in the data management system.
15 . The non-transitory computer-readable medium of claim 11 , wherein the instructions are further executable by the one or more processors too:
generate a symmetric key to use for subsequent communications between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system after establishing the secondary connection between the second cluster and the one or more host nodes.
16 . The non-transitory computer-readable medium of claim 15 , wherein the instructions are further executable by the one or more processors to:
exchange at least one message between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system after the secondary connection is established, wherein the at least one message is encrypted using the symmetric key.
17 . The non-transitory computer-readable medium of claim 11 , wherein the secondary connection between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system is established by performing a transport layer security handshake procedure between the second cluster of storage nodes in the data management system and the one or more host nodes associated with the client of the data management system.
18 . The non-transitory computer-readable medium of claim 11 , wherein the certificate chain obtained by the second cluster of storage nodes in the data management system comprises a list of certificates that include a public key certificate associated with the second cluster and the root certificate associated with the certificate authority.