

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 安全注意事项
<a name="discover-tool-security"></a>

## 保护发现工具 VM 的安全
<a name="securing-collector-vm"></a>

**发现工具 VM 安全性至关重要**，因为发现工具会将所有凭据、日志和客户数据存储在发现工具 VM 上。

默认情况下，发现工具 VM 已禁用 ssh 访问权限，只能从客户端访问`vCenter UI -> "Launch Web Console"`。

发现工具 VM 带有用户 “发现” 的默认登录密码 “密码”。
+ 我们建议您在部署后立即更新此密码。
+ 如果您想在使用 v `Launch Web Console` Center 登录`enablessh`后使用命令启用 ssh，我们**要求**您更新密码。请注意，每次调用此命令时，都需要将其重置。

## 保护凭证
<a name="securing-credentials"></a>

**凭据管理的一般最佳实践**
+ 安全地存储凭证
+ 定期轮换所有证书
+ 使用密码管理器或安全保管库
+ 监控凭证使用情况
+ 遵循最低权限原则，只授予所需的最低必要权限

**SNMP v2 凭证**
+ 使用复杂的非默认社区字符串
+ 避免使用诸如 “公共” 或 “私有” 之类的常见字符串
+ 像对待密码一样对待社区字符串

**SNMP v3 凭证**
+ 同时启用身份验证和隐私
+ 使用强身份验证协议（SHA优先于MD5）
+ 使用强加密协议（AES 优先于 DES）
+ 使用复杂的密码进行身份验证和隐私
+ 使用唯一的用户名（避免使用常用名）

**WinRM 凭证**
+ 避免禁用 WinRM 证书检查。
+ 我们建议您创建一个所需权限最少的专用服务帐户。
+ 除非需要 SQL Server 集合，否则请避免使用域管理员或本地管理员帐户。SQL Server 集合需要本地管理员访问权限，因为它会查询多个 WMI 命名空间并使用提升的命令。对于未发现 SQL Server 的操作系统指标，拥有远程管理用户、性能监控用户和 WMI 读取权限的非管理员帐户就`root\cimv2`足够了。有关每个模块[发现工具所需的权限](discovery-tool-permissions.md)的详细信息，请参阅。

**Hyper-V 凭证**
+ 使用具有最低 Hyper-V 管理权限的专用服务帐户。
+ 避免使用域管理员帐户。
+ Hyper-V 凭据支持 NTLM（仅限 HTTPS）和 Kerberos 身份验证。
+ 该发现工具存储使用 SQLCipher 进行静态加密的凭据。

**甲骨文凭证**
+ 使用仅具有 SELECT\_CATALOG\_ROLE 的专用只读服务帐户。请勿使用 DBA、SYSDBA 或 SYSOPER 权限。
+ 发现工具仅执行读取操作，从不向 Oracle 数据库写入数据。
+ 发现工具无法访问诊断包或调整包视图，因此不需要其他 Oracle 许可。
+ 定期轮换 Oracle 服务帐户密码并在发现工具中更新凭据。

## 凭证存储
<a name="credential-storage-security"></a>

发现工具使用数据库加密密钥对存储的静态凭证进行加密。在装有 systemd 250 或更高版本的系统上，此密钥使用 systemd-creds 进行加密。在较旧的系统上，密钥存储为受权限保护的文件。在这两种情况下，对发现工具主机具有根访问权限的攻击者都可以访问加密密钥并解密存储的凭据。限制对发现工具主机的访问权限，并将其视为环境中的特权系统。

## 谨慎使用 Auto-Connect 功能
<a name="auto-connect-caution"></a>

在*OS-level 收集*过程中，发现工具使用两种机制向服务器分配凭据：自动连接和手动。 OS-level 集合包括网络、SQL Server、Oracle 数据库和操作系统指标模块。这些模块连接到来自所有来源的单个服务器，包括 VMware 虚拟机、 Hyper-V 虚拟机和导入的服务器。

**手动**：可以将服务器与特定凭据手动关联。在这种情况下，无论成功还是失败，发现工具都只使用该凭证。您必须手动监控该服务器的收集状态并进行调整。

**Auto-connect**：如果没有与服务器手动关联的凭据，则发现工具将使用该服务器的自动连接机制。这意味着：
+ 在每轮收集开始时，发现工具都会获得该服务器可用的凭据列表（基于操作系统类型），并配置为 “可自动连接”。
+ 然后，发现工具在循环中针对服务器测试所有凭据。
  + 如果找到了有效的凭证，则服务器的收集回合将成功。发现工具会记住它，下次会先试一试。
  + 如果找不到有效的凭据，则服务器的收集回合已失败。
    + 网络模块：服务器使用退避计划，在每次失败后的 3 分钟、30 分钟、2 小时和 6 小时内开始下一轮收集（类似于指数退缩）。
    + SQL Server 集合：发现工具不会重试。它每天对每台服务器进行一次尝试。

**Impacts/Risks**:

只有在确定系统风险已得到缓解时，才使用自动连接：

**风险 1**：如果在多个错误的凭据上配置了自动连接，则在配置了锁定策略的生产环境中自动尝试使用自动连接可能会触发账户封锁。例如，数据中心可以将其虚拟机设置为在 3 次 SSH 登录尝试失败后锁定。在这种情况下，如果为 3 个错误的 SSH 凭据配置了自动连接，则会发生合法的账户封锁。如果多个系统发生封锁，则关键业务流程可能会受到影响，从而可能导致依赖系统出现级联故障。此外，安全运营中心可能会遇到来自大规模身份验证失败事件的警报风暴，从而造成误报安全事件，从而消耗资源并可能掩盖真正的攻击。

**风险 2**：有权访问发现工具（知道发现工具密码）的操作者可以通过配置大量测试凭据并使用自动连接来查找成功的凭据，从而在所有服务器上使用暴力破解操作系统凭据。

**缓解措施**：

请遵循以下准则：
+ 确保发现工具密码得到妥善保护，并且只有经过授权的参与者才能知道
+ 如果有封锁策略，请确保为环境输入正确的凭证。即使没有账户锁定策略，我们也建议仅配置已知的有效凭证，以确保将单个虚拟机的操作负载降至最低。
+ “Auto-connect” 是一项可选功能。如果环境担心账户锁定，请不要选择它并使用手动分配凭证。

## CSV 导入安全性
<a name="bare-metal-csv-security"></a>

使用 CSV 文件导入服务器时，请考虑以下安全隐患：
+ CSV 文件可能包含内部服务器的主机名或 IP 地址。将其视为敏感数据。
+ `os_credential_name`和`oracle_credential_name`列通过友好名称引用预配置的凭据。CSV 不包含机密。
+ All-or-nothing 验证：如果 CSV 中的任何一行无效，则整个上传都将被拒绝。这样可以防止可能造成混乱状态的部分导入。
+ 导入的服务器会立即显示在清单中，并且符合收集条件。在导入之前，请确保操作系统和 Oracle 凭据的范围正确。

## 撤消访问权限注意事项
<a name="revoking-access-security"></a>

撤消访问权限时，删除的范围仅限于特定的来源：
+ 撤消 vCenter 访问权限只会删除 vCenter 数据。它不会影响 Hyper-V 或导入的服务器数据。
+ 撤消 Hyper-V 访问权限只会删除 Hyper-V 数据。它不会影响 VMware 或导入的服务器数据。
+ 删除导入的服务器会将其从清单中删除，但会保留下游集合数据（网络、数据库、操作系统指标）。
+ 要移除所有特定来源的库存数据，您必须单独撤销或删除每个来源。即使撤消了所有来源，下游收集数据（网络、数据库、操作系统指标）仍会保留。