配置群集之间的连接安全

在群集之间复制数据时,Vertica 可以加密数据和计划元数据。

如果您配置节点间加密,则数据会进行加密(请参阅节点间 TLS)。

对于元数据,默认情况下,Vertica 首先尝试 TLS,然后回退到明文。您可以将 Vertica 配置为需要 TLS 并在无法建立连接时失败。您还可以让 Vertica 在连接之前验证证书和主机名。

在群集之间启用 TLS

要在群集之间使用 TLS,首先必须在节点之间配置 TLS:

  1. 设置 EncryptSpreadComms 参数。

  2. 配置 data_channel TLS CONFIGURATION。

  3. 设置 ImportExportTLSMode 参数。

要在连接到另一个群集时指定严格性级别,请设置 ImportExportTLSMode 配置参数。此参数适用于导入和导出数据。可能的值为:

  • PREFER:尝试 TLS,但如果 TLS 失败,则回退到明文。

  • REQUIRE:如果服务器不支持 TLS,则使用 TLS 并失败。

  • VERIFY_CA:需要 TLS(与 REQUIRE 一样),并使用“服务器”TLS CONFIGURATION 的 CA 证书(在本例中为“ca_cert”和“ica_cert”)指定的 CA 来验证其他服务器的证书:

    => SELECT name, certificate, ca_certificates, mode FROM tls_configurations WHERE name = 'server';
      name  |   certificate    |   ca_certificates   |   mode
    --------+------------------+---------------------+-----------
     server | server_cert      | ca_cert,ica_cert    | VERIFY_CA
    (1 row)
    
  • VERIFY_FULL:需要 TLS 并验证证书(与 VERIFY_CA 一样),并验证服务器证书的主机名。

  • REQUIRE_FORCEVERIFY_CA_FORCEVERIFY_FULL_FORCE:分别与 REQUIREVERIFY_CAVERIFY_FULL 行为相同,并且不能被 CONNECT TO VERTICA 覆盖。

ImportExportTLSMode 是一个全局参数,适用于您使用 CONNECT TO VERTICA 建立的所有导入和导出连接。您可以为单个连接覆盖该参数。

有关这些和其他配置参数的详细信息,请参阅安全性参数