您可以通过 Neutron 安全组强制实施 NSX Data Center for vSphere 安全策略。此功能还可用于插入第三方网络服务。

提供商安全组和标准安全组都可以使用 NSX Data Center for vSphere 安全策略。基于规则的提供商安全组和标准安全组也可以与基于安全策略的安全组结合使用。但是,与安全策略相关联的安全组也不能包含规则。

安全策略优先于所有安全组规则。如果在端口上强制实施多个安全策略,则强制实施策略的顺序由 NSX Data Center for vSphere 确定。您可以在 vSphere Client 中的安全 > 防火墙页面的网络和安全下更改顺序。

前提条件

NSX Data Center for vSphere 中创建所需的安全策略。请参见《NSX 管理指南》中的创建安全策略

过程

  1. viouser 用户身份登录到 OpenStack 管理服务器
  2. 如果您的部署未使用 custom.yml 文件,请将模板 custom.yml 文件复制到 /opt/vmware/vio/custom 目录。
    sudo mkdir -p /opt/vmware/vio/custom
    sudo cp /var/lib/vio/ansible/custom/custom.yml.sample /opt/vmware/vio/custom/custom.yml
  3. 在文本编辑器中打开 /opt/vmware/vio/custom/custom.yml 文件。
  4. 取消对 nsxv_use_nsx_policiesnsxv_default_policy_idnsxv_allow_tenant_rules_with_policy 参数的注释并对其进行配置。

    选项

    说明

    nsxv_use_nsx_policies

    输入 true

    nsxv_default_policy_id

    输入要与新项目的默认安全组相关联的 NSX Data Center for vSphere 安全策略的 ID。如果您不希望默认使用安全策略,则可以将此参数保持注释掉状态。

    要查找安全策略的 ID,请选择菜单 > 网络连接和安全性,然后单击服务编排器。打开安全策略选项卡,然后单击表左下角的显示列图标。选择对象 ID,然后单击确定。每个安全策略的 ID 都将显示在表中。

    nsxv_allow_tenant_rules_with_policy

    输入 true 以允许租户创建安全组和规则,或者输入 false 以阻止租户创建安全组或规则。

  5. 部署更新的配置。
    sudo viocli deployment configure

    部署此配置会短暂中断 OpenStack 服务。

  6. viouser 用户身份登录到控制器节点。
  7. 切换到 root 用户并加载云管理员凭据文件。
    sudo su -
    source ~/cloudadmin.rc
  8. 如果要将其他安全组与安全策略一起使用,则可以执行以下步骤:
    • 要将 NSX Data Center for vSphere 安全策略与新安全组相关联,请创建该安全组并使用所需的策略进行更新:

      neutron security-group-create security-group-name --tenant-id tenant-uuid
      neutron security-group-update --policy=policy-id security-group-uuid
    • 要将现有安全组迁移到基于安全策略的组,请运行以下命令:

      sudo -u neutron nsxadmin -r security-groups -o migrate-to-policy --property policy-id=policy-id --property security-group-id=security-group-uuid
      注:

      此命令会从指定的安全组中移除所有规则。请确保配置目标策略以便不会中断网络连接。

  9. 配置 Neutron 以使 NSX Data Center for vSphere 安全策略的优先级高于安全组。
    sudo -u neutron nsxadmin --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/vmware/nsxv.ini -r firewall-sections -o nsx-reorder