您当前的位置:   首页 > 新闻中心
Apache Ranger集成SafeNet Luna HSM
发布时间:2019-12-02 14:09:27   阅读次数:

Apache Ranger集成SafeNet Luna HSM(图1)

对于与HSM相关的Ranger KMS的任何设置/执行,请检查“ java.security”文件以在提供商列表中包含“ LunaProvider”,以及将Luna的属性“ createExtractableKeys”设置为true在步骤1.12中提及。另外,我们需要为每个KMS群集分别分配一个分区

最新版本的SafeNet Luna HSM 客户端安装文件

您可在下方留言,向我们揽阁信息获取

手动安装Ranger KMS HSM

  1. 提取Ranger KMS tar

  2. 使用适当的属性值安装Ranger-kms

    1. 转到ranger-kms文件夹并编辑install.properties(为以下给定的属性输入适当的值)

    2. db_root_user=

      db_root_password=

      db_host=

      db_name=

      db_user=

      db_password=

      HSM_TYPE=LunaProvider

      HSM_ENABLED=

      HSM_PARTITION_NAME=

      HSM_PARTITION_PASSWORD=

      KMS_MASTER_KEY_PASSWD=

      POLICY_MGR_URL=

      REPOSITORY_NAME=

      XAAUDIT.DB.IS_ENABLED=

      XAAUDIT.DB.FLAVOUR=

      XAAUDIT.DB.HOSTNAME=

      XAAUDIT.DB.DATABASE_NAME=

      XAAUDIT.DB.USER_NAME=

      XAAUDIT.DB.PASSWORD=

  3. 编辑“ hdfs-site.xml”

    1. 执行以下步骤:

      1. 转到路径:/usr/hdp/<version>/hadoop/conf/

      2. vim hdfs-site.xml

      3. 对于属性“ dfs.encryption.key.provider.uri”,输入"kms:// http@<ranger_kms host name>:9292/kms"

      4. 保存并退出

  4. 编辑“ core-site.xml”:

    1. 执行以下步骤:

      1. 转到路径:/usr/hdp/<version>/hadoop/conf/

      2. vim core-site.xml

      3. 对于属性“ hadoop.security.key.provider.path”,输入"kms:// http@<ranger_kms host name>:9292/kms"

      4. 保存并退出

  5. 重新启动Namenode:

  6. su -­l hdfs -­c "/usr/hdp/<version>/hadoop/sbin/hadoop­-daemon.sh stop namenode"

    su ­-l hdfs ­-c "/usr/hdp/<version>/hadoop/sbin/hadoop-­daemon.sh start namenode"

  7. 通过以下命令运行安装程序:./setup.sh

  8. 通过以下命令启动KMS服务器:ranger-kms start


安装Ranger KMS HSM(Ambari)

两种方法都是可能的


方法1 :(使用纯文本密码进行配置)

  1. 添加Ranger KMS服务

  2. 配置时,在“ custom dbks-site”accordion中添加与HSM相关的属性。

    1. ranger.ks.hsm.enabled=true

    2. ranger.ks.hsm.partition.name=<Partition Name>

    3. ranger.ks.hsm.partition.password=<Partition Password>

    4. ranger.ks.hsm.type=LunaProvider

    Apache Ranger集成SafeNet Luna HSM(图2)

  3. 单击下一步,然后按照说明安装Ranger KMS。


方法2 :(不使用纯文本密码进行配置,并使用jceks)

  1. 添加Ranger KMS服务

  2. 配置时,在“ custom dbks-site”accordion中添加与HSM相关的属性。

    1. ranger.ks.hsm.enabled = true

    2. ranger.ks.hsm.partition.name = <Partition Name>

    3. ranger.ks.hsm.partition.password = _

    4. ranger.ks.hsm.partition.password.alias = ranger.kms.hsm.partition.password

    5. ranger.ks.hsm.type = LunaProvider

    Apache Ranger集成SafeNet Luna HSM(图3)

  3. 单击下一步,然后按照说明安装Ranger KMS。(请注意,Ranger KMS无法启动,它将无法启动)

  4. 在安装了Ranger KMS的群集上执行以下命令:

  5. python /usr/hdp/current/ranger-kms/ranger_credential_helper.py -l "/usr/hdp/current/ranger-kms/cred/lib/*" -f /etc/ranger/kms/rangerkms.jceks -k ranger.kms.hsm.partition.password -v <Partition_Password> -c 1

  6. 在Ambari重新启动KMS


配置HSM HA

对于此部分,您至少需要两台具有PED认证的Luna SA设备,或两台具有密码认证的设备。

  1. 设置HA设备

    1. 按照步骤1(客户端软件安装)中所述在两个HA单元上执行网络设置。

    2. 确保hsm showPolicies中的“允许克隆”和“允许网络复制”策略为“开”

    3. 在您的Luna SA设备上初始化HSM。它们必须具有相同的克隆域–也就是说,如果它们经过PED认证,则必须共享相同的红色域PED密钥;如果经过密码认证,则它们必须共享相同的域字符串。

    4. 在每个Luna SA上创建一个分区。它们不必具有相同的标签,但必须具有相同的密码。

    5. 记下在每个Luna SA上创建的每个分区的序列号(使用分区显示)。

  2. 向Luna SA HA注册客户

    1. 继续执行步骤2中所述的常规客户端设置。(在客户端和设备之间创建网络信任链接)。

    2. 在两个Luna SA上注册您的客户端计算机

    3. 使用./vtl verify命令进行验证。它应该显示在客户端注册的分区号

  3. 创建HA组

  4. 注意:请按照相应的步骤,根据您的客户端版本形成HSM HA。

    1. 版本6

    2. HSM 版本6的客户端软件:

      1. 在(至少)两个Luna设备上创建分区,并在这些分区和客户端之间设置NTLS之后,使用LunaCM在客户端上配置HA

        1. 转到目录:/ usr / safenet / lunaclient / bin /

        2. 选择Lunacm:./lunacm

      2. 要在hagroup中添加成员,我们需要在客户端上创建一个新组

        • haGroup creategroup -serialNumber <serial number> -l <label> -p <password>

        • 例如:lunacm:> haGroup creategroup -serialNumber 1047740028310 -l HAHSM3 -p S @ fenet123

      3. 使用hagroup addmember命令将新成员添加到hagroup客户端中,这需要:

        1. 组的标签(不要仅将组称为“ HA”)。

        2. 第一个分区的序列号或第一个分区的插槽号。

        3. 分区的密码。

        4. Lunacm还会为组本身生成并分配序列号

        5. hagroup addMember -group <groupname> -serialNumber <serial number>- password<password> 

          • 例如lunacm:> hagroup addMember -group rkmsgroup -serialNumber 1047749341551 -password S@fenet123

      4. 使用hagroup addmember命令将另一个成员添加到HA组。

        • hagroup addMember -group <serial number> -serialNumber <serial number>- password<password> 

        • 例如lunacm:> hagroup addMember -serialNumber 1047740028310 -g rkmslgroup -password S@fenet123

      5. 使用“ hagroup listGroups”命令检查组中的组成员。

        • 例如lunacm:> hagroup listGroups

      6. 启用HAOnly:

        • 例如lunacm:> hagroup HAOnly -enable

      7. 启用HAgroup成员的同步

        •  hagroup synchronize -group <groupname> -password <password> -enable

        • 例如lunacm:> hagroup synchronize -group rkmslgroup -password S@fenet123 -enable

    3. 版本5

    4. HSM 版本5的客户端软件:

      1. 在(至少)两个Luna设备上创建分区,并在这些分区和客户端之间设置NTLS之后,使用LunaCM在客户端上配置HA。

        • 转到目录:/usr/safenet/lunaclient/bin/

      2. 要在haadmin中添加成员,我们需要在客户端上创建一个新组。

        • ./vtl haAdmin newGroup -serialNum <HA Group Number>-label<Groupname> -password <password>

        • 例如   ./vtl haAdmin newGroup -serialNum 156453092 -label myHAgroup -password S@fenet123

      3. 将成员添加到您的haadmin中。

        • ./vtl haAdmin addMember -group <HA Group Number> -serialNum <serial_number> -password <password>

        • 例如   ./vtl haAdmin addMember -group 1156453092 -serialNum 156451030 -password S@fenet123

      4. 启用HAadmin成员同步。

        • ./vtl haAdmin synchronize -group <HA Group Number> -password <password>

        • 例如   ./vtl haAdmin synchronize -enable -group 1156453092 -password S@fenet123

      5. 启用HAOnly。

        • ./vtl haAdmin HAOnly -enable

      6. 同步后检查haadmin状态。

        • ./vtl haAdmin show

        • 注意:同步后,请验证kms主密钥已复制到hsm ha组中注册的两个分区中。将主密钥复制到另一个分区需要时间。


安装Ranger KMS HSM HA

配置HSM HA之后,要在HSM HA模式下运行Ranger KMS,我们只需要在install.properties的“ HSM_PARTITION_NAME”属性中指定上面创建的虚拟组名称,然后设置并启动Ranger KMS。


注意:如“安装Ranger KMS HSM”中所述,Ranger KMS的“ install.properties”中HSM的所有其他配置将保持不变。


迁移

从HSM到Ranger DB

  1. 如果正在运行,请停止Ranger KMS服务器。

  2. 转到Ranger KMS目录。例如:/usr/hdp/<version>/ranger-kms

    注意:数据库详细信息应该是KMS需要迁移到的正确数据库文件(在Ranger KMS的xml配置文件中)。

  3. 运行:./HSMMK2DB.sh <provider> <HSM_PARTITION_NAME>

    例如:./HSMMK2DB.sh LunaProvider par19

  4. 输入分区密码。

  5. 迁移完成后,如果要根据新配置(启用或禁用HSM)运行Ranger KMS,请根据需要更新Ranger KMS属性。

  6. 启动Ranger KMS。

    注意:迁移后,当Ranger KMS启动且在禁用HSM的情况下运行良好时,如果不需要,则从HSM清除分区中的主密钥对象,因为主密钥已被迁移到数据库。


Ranger DB到HSM

  1. 如果正在运行,请停止Ranger KMS服务器。

  2. 转到Ranger KMS目录。例如:/usr/hdp/<version>/ranger-kms

    注意: 

    • -> Ranger KMS需要迁移的数据库详细信息应该是正确的。(在Ranger KMS的xml配置文件中)

    • -> HSM详细信息应该是我们要迁移到的KMS HSM。

  3. 运行:./DBMK2HSM.sh <provider> <HSM_PARTITION_NAME>

    例如:./DBMK2HSM.sh LunaProvider par19

  4. 输入分区密码。

  5. 迁移完成后,如果要根据新配置(启用或禁用HSM)运行Ranger KMS,请根据需要更新Ranger KMS属性。

  6. 启动Ranger KMS

    注意:在迁移后,如果启用HSM且Ranger KMS启动并运行良好,则由于不需要将主密钥行从数据库表“ ranger_masterkey”中删除,因为主密钥已被迁移到HSM。


从HSM分区中清除对象

  1. SSH到HSM设备服务器

    例如:ssh admin@elab6.safenet-inc.com

    <出现提示时输入HSM Appliance服务器的密码>

  2. 检查您要清除的分区对象,命令是

    Partition showContents -par <partition_name>

    例如:partition showContents -par par14

    <提示时输入分区密码>

    注意:请确保在步骤3之后从列表中列出的所有对象上面的命令将被销毁。

  3. 使用以下命令从HMS分区中清除对象

    Partition clear -par <partition_name>

    <在出现提示时输入分区密码>

    <在出现提示时进行输入>

    例如:partition clear -par par14



揽阁信息可提供的部分安全产品和解决方案信息

联系揽阁信息,您可以获取到更多满足全球合规性要求的信息安全产品资料,以及相关的整体解决方案的相关资料。如:


您还可以得到揽阁信息所提供的优质服务。

揽阁信息 · 值得您信赖的信息安全顾问!


相关阅读

购买咨询电话
021-54410609