> For the complete documentation index, see [llms.txt](https://docs.dispel.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.dispel.com/documentation/documentation-zh/ji-cheng-yu-guan-li/integrations/asset-discovery/tenable.md).

# Tenable OT Security

通过本地设备上的 REST API 连接 Tenable OT Security，将已发现的 OT 资产拉入 Dispel 作为设备——连同其已知漏洞——映射到一个 Wicket，并刷新

## 概述

Tenable 集成可让 Dispel 拉取 Tenable 在你的网络中发现的 OT 资产，并将它们作为 Dispel 设备导入，同时带上 Tenable 发现的已知漏洞。你只需连接一次你的 Tenable 设备，将其映射到一个 Dispel 设施和 Wicket，Dispel 就会导入匹配的设备，并通过定期同步保持其更新。

Tenable 是一种本地部署的资产发现集成。具体来说，Dispel 通过其 REST API 与 Tenable OT Security（原 Tenable.ot）集成。

由于 Tenable 设备只包含一个扁平的资产清单，没有原生的站点或位置概念，Dispel 会将其视为一个站点，并将其映射到单个 Wicket——无需逐个处理站点列表。

#### Dispel 导入的内容

* 发现的 OT 资产（名称、IP 地址、MAC 地址、制造商/型号、操作系统、固件版本、序列号、设备类型），作为 Dispel 设备。
* 每个资产的已知漏洞，来自 Tenable 的插件发现，在可用时包含 CVE 和 CVSS 严重性。信息级严重性插件（例如“Open Port”）会被过滤掉，因此统计结果与 Tenable 自己的 OT 仪表板一致。
* 设备上显示的额外设备情报：生命周期终止状态、SNMP 详细信息，以及——对于机箱式控制器——显示哪些模块共享机架的背板视图。

{% hint style="info" %}
**在哪里找到它。** 以组织管理员身份登录并打开 **设置 → 集成**。Tenable 位于 **资产发现 / 网络可见性** 部分。点击 **连接** 在 Tenable 卡片上开始。
{% endhint %}

## 开始之前

你需要从 Tenable 控制台获取以下内容：

* 一个 API 密钥——在以下位置生成： **本地设置 → 用户管理 → API 密钥**。Tenable 会提供两个值： **Key ID** （一个短标识符）以及 **API 密钥** 其密钥本身。
* 该 **设备 URL** 你的 Tenable 设备的——例如 `https://tenable-ot.example.com`.
* 如果你的设备使用自签名 TLS 证书，请准备在设置过程中启用自签名选项。

{% hint style="warning" %}
**将 Dispel 的 IP 加入允许列表。** 打开连接表单时，Dispel 会显示一个 **白名单 IP** 值。请将此地址添加到你的网络防火墙允许列表中，以便 Dispel 能访问本地设备。
{% endhint %}

## 连接 Tenable

1. 转到 **设置 → 集成** 并点击 **连接** Tenable 卡片。
2. 可选地设置一个 **显示名称** 以将此集成与其他集成区分开来（你可以连接多个设备）。
3. 填写连接字段：

| 字段          | 类型 | 说明                                                        |
| ----------- | -- | --------------------------------------------------------- |
| **设备 URL**  | 配置 | 你的 Tenable 设备的基础 URL，例如 `https://tenable-ot.example.com`. |
| **允许自签名证书** | 配置 | 如果你的设备使用自签名 TLS 证书，请打开此项。                                 |
| **Key ID**  | 凭据 | Tenable 中显示在你的 API 密钥旁边的标识符。它用于识别该密钥——不用于身份验证。            |
| **API 密钥**  | 凭据 | API 密钥的密钥部分。会加密存储，且之后不会再次显示。                              |

4. 点击 **测试连接** 以确认 Dispel 能够对该设备进行身份验证。请在保存前修复任何报告的错误。
5. 点击 **保存**。Dispel 会保存此集成并立即运行初始同步。

{% hint style="info" %}
**Key ID 与 API 密钥。** Dispel 仅使用 API 密钥的密钥部分进行身份验证。Key ID 仅用于参考存储——这样在需要轮换时你就能知道正在使用哪个密钥。
{% endhint %}

{% hint style="info" %}
**你的凭据已加密。** API 密钥在静态存储时会加密，保存后不会再次显示。稍后编辑时，保持凭据字段为空即可保留已存储的值。
{% endhint %}

## 将设备映射到 Wicket

初始同步完成后，打开该集成以找到 **站点映射** 部分。Tenable 会显示为代表你设备的单个站点。

> 将每个供应商站点映射到一个 Dispel 设施和 Wicket。来自已映射站点的设备将同步到 Dispel 中。

1. 选择一个 **设施**.
2. 选择一个 **Wicket**。如果该设施只有一个 Wicket，Dispel 会为你自动选择。
3. 点击 **保存映射并导入**.

Dispel 会将该设备的资产导入到已映射的 Wicket 中——你会看到进度从等待到获取、再到同步、直至完成——然后报告已导入多少设备。导入的设备会与任何你手动添加的设备一起出现在已映射的 Wicket 中，并附带其漏洞信息。

## 保持库存最新

* Dispel 会按固定计划自动重新同步，因此新发现的资产、变更的详细信息以及更新的漏洞都会自动获取，无需你执行任何操作。
* 若要立即拉取最新库存，请打开该集成并选择 **刷新**.
* 若要更改连接详情或轮换凭据，请编辑该集成并使用 **保存并同步**。将凭据字段留空即可保留当前 API 密钥。

漏洞发现会在每次同步时刷新，而 Tenable 不再报告的发现会自动消失。

## 连接状态

每个集成都会显示状态，让你始终知道其进展：

| 状态        | 含义                   |
| --------- | -------------------- |
| **未初始化**  | 已保存，但第一次同步尚未运行。      |
| **初始化中**  | 正在运行第一次同步。           |
| **就绪**    | 已连接并同步；映射已应用。        |
| **需要刷新**  | 有新的供应商数据可用；请运行刷新以拉取。 |
| **刷新中**   | 正在同步。                |
| **待处理更改** | 映射更改已保存，但尚未应用。       |
| **应用中**   | 正在按你保存的映射导入设备。       |
| **失败**    | 上一次操作失败——请查看错误指引。    |

另一个 **健康状态徽标** （已连接、已降级、不可达）反映 Dispel 当前是否能够访问 Tenable 设备。

## 故障排除

如果同步或测试连接失败，Dispel 会对错误进行分类并建议修复方法：

| 错误         | 通常意味着什么以及如何修复                                                                                      |
| ---------- | -------------------------------------------------------------------------------------------------- |
| **身份验证失败** | API 密钥被拒绝。请确认该密钥在 Tenable 中仍处于活动状态（**本地设置 → 用户管理 → API 密钥**）并且你粘贴的是 **API 密钥** 密钥——而不是 **Key ID**. |
| **端点不可达**  | Dispel 无法访问该设备。请检查设备 URL，并确认已在防火墙中将 Dispel 的 IP 加入允许列表。                                            |
| **证书错误**   | 该设备提供了不受信任的 TLS 证书。如果它使用自签名证书，请启用 **允许自签名证书** 在连接设置中。                                              |
| **连接超时**   | 该设备响应时间过长——通常是 Dispel 与你的网络之间的网络延迟或防火墙规则导致。                                                        |
| **配置错误**   | URL 看起来不正确，或者该地址无法访问 API。请重新检查设备 URL。                                                              |

## 常见问题

<details>

<summary>这连接到哪个 Tenable 产品？</summary>

Tenable OT Security（原 Tenable.ot）——用于发现和评估 OT 资产的本地设备。这不是 Tenable Vulnerability Management（Tenable.io）云服务。

</details>

<details>

<summary>Key ID 和 API Key 有什么区别？</summary>

当你生成 API 密钥时，Tenable 会提供两个值：Key ID（一个短标识符）和 API 密钥密钥部分。Dispel 仅使用该密钥进行身份验证；Key ID 仅作为参考存储，以便在轮换时知道正在使用哪个密钥。

</details>

<details>

<summary>为什么漏洞计数与 Tenable 的原始插件计数不一致？</summary>

Dispel 会过滤掉信息级严重性插件（例如“Open Port”），使数字与 Tenable 自己的 OT 仪表板上显示的漏洞计数一致，而不是包含纯信息性结果的更大总数。

</details>

<details>

<summary>我可以连接多个 Tenable 设备吗？</summary>

可以。Tenable 支持多个集成，因此你可以并排连接多个设备。为每个设备设置一个不同的 **显示名称** 以便区分它们。

</details>

<details>

<summary>连接 Tenable 会对我的设备做任何更改吗？</summary>

不会。Dispel 只读取 Tenable 的 API。它绝不会在 Tenable 端创建、修改或删除数据。

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.dispel.com/documentation/documentation-zh/ji-cheng-yu-guan-li/integrations/asset-discovery/tenable.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
