You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/ROOT/pages/backup-restore/online-backup.adoc
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -308,7 +308,9 @@ When using the `neo4j-admin database backup` command, you can configure the back
308
308
For more information on how to configure SSL in Neo4j, see xref:security/ssl-framework.adoc[SSL framework].
309
309
310
310
Configuration for the backup server should be added to the _neo4j.conf_ file and configuration for backup client to the _neo4j-admin.conf_ file.
311
-
SSL settings should be set identically between both to ensure compatibility.
311
+
The easiest way to ensure compatibility is to use the same SSL policy configuration for both the server and the client.
312
+
However, this approach is not recommended for production environments, where it is better to use Certificate Authorities (CAs) to sign the certificates used by both the server and the client.
313
+
For details, see xref:security/ssl-framework.adoc[SSL framework].
312
314
313
315
The default backup port is 6362, configured with key `server.backup.listen_address`.
314
316
The SSL configuration policy has the key of `dbms.ssl.policy.backup`.
If the certificate is a different path outside of NEO4J_HOME, then set the absolute path for the certificates directory.
794
+
If the certificate is located outside of `NEO4J_HOME`, then set the absolute path for the certificates directory.
790
795
====
791
796
792
797
. Set the cluster client authentication to `REQUIRE` to enable the mutual authentication, which means that both ends of a channel have to authenticate:
@@ -836,12 +841,25 @@ In a cluster topology, it is possible to take a backup from any server, and each
836
841
* `server.cluster.listen_address` (port `6000`)
837
842
838
843
If the <<ssl-cluster-config, intra-cluster encryption>> is enabled and the backup communication uses port `6000`, then the communication channels are already encrypted.
839
-
The following steps assume that your backup is set up on a different port.
844
+
845
+
However, if your backup communication uses a different port, you need to enable SSL for it by creating a separate SSL policy.
846
+
847
+
When setting up SSL for backup communication, you can choose between two options for certificates:
848
+
849
+
* self-signed certificates -- This is typically the case where the system is fully internal (not internet-facing), you control both ends of the connection, and the distribution of certificates can be automated and secured.
850
+
* certificates signed by a certificate authority (CA) -- This is typically the case where at least one end of the connection is internet-facing, and you want to use certificates signed by a trusted CA to avoid security flaws associated with self-signed certificates.
851
+
852
+
There are three possible approaches to set up SSL for backup communication:
853
+
854
+
* Use the same self-signed certificates in the _trusted_dir_ on both the backup server and client.
855
+
* Mirror the self-signed certificates if you want mutual TLS.
856
+
This means, the server has the client's certificates in its _trusted_dir_, and the client has the server's certificates in its _trusted_dir_.
857
+
* Use a certificate authority (CA) to signs both the client's and server's certificates.
858
+
In this case, the _trusted_dir_ must contain only the CA or intermediate certificates.
840
859
841
860
==== Set up SSL certificates for backup
842
861
843
862
Create the folder structure and place the key and certificate files under it.
844
-
Then, configure the SSL backup policies in the _neo4j.conf_ file.
845
863
846
864
. Create a directory _backup_ under _<NEO4J_HOME>/certificates_ folder:
847
865
+
@@ -940,6 +958,7 @@ The owner/group should be configured to the user/group that will be running the
940
958
Default user/group is neo4j/neo4j.
941
959
====
942
960
961
+
[ssl-backup-server-config]
943
962
==== Set the backup SSL configuration in the _neo4j.conf_ file.
If the certificate is a different path outside of NEO4J_HOME, then set the absolute path for the certificates directory.
981
+
If the certificate is located outside of `NEO4J_HOME`, then set the absolute path for the certificates directory.
963
982
====
964
983
965
984
. Set the backup client authentication to `REQUIRE` to enable the mutual authentication, which means that both ends of a channel have to authenticate:
@@ -969,25 +988,23 @@ If the certificate is a different path outside of NEO4J_HOME, then set the absol
969
988
dbms.ssl.policy.backup.client_auth=REQUIRE
970
989
----
971
990
991
+
[NOTE]
992
+
====
993
+
Neo4j does not validate the `setting-suffix` and if it is misspelled or incorrect, it will be ignored.
994
+
See <<ssl-configuration, Configuration>> for more details.
995
+
====
996
+
997
+
[ssl-backup-client-config]
972
998
=== Configure the backup client for SSL
973
999
974
1000
When using `neo4j-admin backup` command, the backup client needs to be configured to use SSL as well.
975
1001
Regardless of which backup port you are targeting (see <<ssl-backup-config>>), the backup client uses the SSL policy specified in `dbms.ssl.policy.backup.*`, given the same SSL policy name matches between server and client.
976
1002
977
-
[NOTE]
978
-
====
979
-
If the backup client is on a different machine from the Neo4j server, you must install sympathetic SSL certificates and keys on the backup client machine as well, so that the backup client can authenticate the server and vice versa.
980
-
If you want mutual TLS with self-signed certificates, the server must have the client's certificate in its _trusted_dir_, and the client must have the server's certificate in its _trusted_dir_.
981
-
If you use a certificate authority (CA) to signs both the client's and server's certificates, the _trusted_dir_ must contain only the CA or intermediate certificates.
982
-
983
-
Furthermore, Neo4j does not validate the certificates.
984
-
It is your responsibility to ensure that the certificates are valid.
985
-
See <<ssl-certificates>> for details.
986
-
====
1003
+
If the backup client is on a different machine from the backup server, you must install SSL certificates and keys on the backup client machine as well, so that the backup client can authenticate the server and vice versa.
987
1004
988
-
Configure the SSL backup policies in the _neo4j-admin.conf_ file on the backup client machine.
1005
+
The following steps assume that you have already set up the SSL certificates and keys on the backup server machine and you are using the self-signed certificates.
989
1006
990
-
For example, if you have set up the backup SSL policy described in section <<ssl-backup-config>>, then you need to set the following in the _neo4j-admin.conf_ file:
1007
+
For example, if you have set up the backup SSL policy described in section <<ssl-backup-config>>, then you need to set the following in the _neo4j-admin.conf_ file on the backup client machine:
0 commit comments