google/turbinia

GitHub: google/turbinia

一个分布式数字取证框架,通过自动化编排和并行处理规模化运行各类取证工具。

Stars: 785 | Forks: 167

# Turbinia ![Unit tests](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/60026c9356174933.svg) ![e2e tests](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/290fbc59e9174940.svg) ## 概述 **注意:Turbinia 将不再开发新功能,目前处于维护模式。建议用户关注 [OpenRelik](https://openrelik.org/)。** Turbinia 是一个开源框架,用于部署、管理和运行分布式取证工作负载。它旨在自动化运行常见的取证处理工具(即 Plaso、TSK、strings 等),以帮助在云端处理证据,扩展大量证据的处理规模,并通过尽可能并行化处理来缩短响应时间。 ## 工作原理 Turbinia 由客户端、服务器和工作线程的不同组件组成。这些组件可以在云端、本地机器上运行,或者作为两者的混合体运行。Turbinia 客户端向 Turbinia 服务器发出处理证据的请求。Turbinia 服务器根据传入的用户请求创建逻辑作业,这些作业创建并调度由工作线程运行的取证处理任务。在可能的情况下,待处理的证据会被作业拆分,并创建许多任务以并行处理证据。一个或多个工作线程持续运行以处理来自服务器的任务。由任务创建或发现的任何新证据将被反馈到 Turbinia 以进行进一步处理。 目前,客户端到服务器的通信是通过 [Kombu](https://github.com/celery/kombu) 消息传递完成的。工作线程实现使用 [Celery](http://www.celeryproject.org/) 进行任务调度。 Turbinia 的主要文档可以在[这里找到](https://turbinia.readthedocs.io/)。您还可以了解更多关于架构以及[这里的工作原理](https://turbinia.readthedocs.io/en/latest/user/how-it-works.html)。 ## 状态 Turbinia 目前处于 Alpha 发布阶段。 ## 安装 这里有一份[安装指南](https://turbinia.readthedocs.io/en/latest/user/install.html)。 ## 使用说明 初始安装和配置完成后,运行程序的基本步骤如下: * 使用 `turbiniactl server` 命令启动 Turbinia 服务器组件 * 如果使用 Celery,使用 `turbiniactl api_server` 命令启动 Turbinia API 服务器组件 * 使用 `turbiniactl celeryworker` 启动一个或多个 Turbinia 工作线程 * 通过 `pip install turbinia-client` 安装 `turbinia-client` * 使用 `turbinia-client submit ${evidencetype}` 从 turbinia 客户端发送待处理证据 * 使用 `turbinia-client status` 检查正在运行的任务状态 turbinia-client 可用于通过 API 服务器组件与 Turbinia 交互,以下是其基本用法: ``` $ turbinia-client -h Usage: turbinia-client [OPTIONS] COMMAND [ARGS]... Turbinia API command-line tool (turbinia-client). *** *** * * *** ****** * * ** * * ** ,* ******* * ******** * * * * * * %%%%%% %%%%%% %%%%%%%%%%%%%%% %%%%%% %%%%%%%%%%%%%%%%%%%%% %%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ** ******* %% %% *************** %% (%%%%%%%%%%%%%%%%%%% ***** ** %%%%% %%%%%%%%%%%%%%% %%%%%%%%%% %% ** *** %%% %% %% %%% %%%%, %%% %%% %%% %%%%% %%% %%% %% %%% %%% %%% (%% %%% %%% %%% %%% %% %%/ %% %%% %%% %%% %%%%%%%% %%% %%% %%% %%% %%% %%% %% %%% %%% %%% %%% %%% %%% %%%%% %%% %%%%% %% %%% %% %%% %%%%% This command-line tool interacts with Turbinia's API server. You can specify the API server location in ~/.turbinia_api_config.json Options: -c, --config_instance TEXT A Turbinia instance configuration name. [default: (dynamic)] -p, --config_path TEXT Path to the .turbinia_api_config.json file.. [default: (dynamic)] -h, --help Show this message and exit. Commands: config Get Turbinia configuration. evidence Get or upload Turbinia evidence. jobs Get a list of enabled Turbinia jobs. result Get Turbinia request or task results. status Get Turbinia request or task status. submit Submit new requests to the Turbinia API server. ``` 请查看 `turbinia-client` 文档[页面](https://turbinia.readthedocs.io/en/latest/user/turbinia-client.html#turbinia-api-cli-tool-turbinia-client)以获取详细的用户指南。 您还可以使用 API 库直接通过 Python 与 Turbinia 交互。我们在[这里](https://github.com/google/turbinia/tree/master/turbinia/api/client)提供了一些示例。 ## 其他文档 * [主要文档](https://turbinia.readthedocs.io) * [安装](https://turbinia.readthedocs.io/en/latest/user/install.html) * [工作原理](https://turbinia.readthedocs.io/en/latest/user/how-it-works.html) * [操作详情](https://turbinia.readthedocs.io/en/latest/user/operational-details.html) * [Turbinia 客户端 CLI 工具](https://turbinia.readthedocs.io/en/latest/user/turbinia-client.html#turbinia-api-cli-tool-turbinia-client) * [Turbinia API 服务器](https://turbinia.readthedocs.io/en/latest/user/api-server.html) * [Turbinia Python API 库](https://github.com/google/turbinia/tree/master/turbinia/api/client) * [为 Turbinia 做贡献](https://turbinia.readthedocs.io/en/latest/developer/contributing.html) * [开发新任务](https://turbinia.readthedocs.io/en/latest/developer/developing-new-tasks.html) * [常见问题](https://turbinia.readthedocs.io/en/latest/user/faq.html) * [调试和常见错误](https://turbinia.readthedocs.io/en/latest/user/debugging.html) * [使用 Docker 执行作业](https://turbinia.readthedocs.io/en/latest/user/using-docker.html) ##### 必要的声明 这不是一个官方的 Google 产品(无论是实验性的还是其他的),它只是恰好归 Google 所有的代码。
标签:Active Directory, Celery, Docker, Google, Kombu, Nuclei, PB级数据处理, Plaso, Python, TSK, 云端取证, 云计算, 任务调度, 分布式系统, 取证工具, 可扩展性, 响应大小分析, 域渗透, 安全运维, 安全防御评估, 并行处理, 开源框架, 持续集成, 搜索引擎查询, 数字取证, 无后门, 电子数据取证, 网络安全, 自动化取证, 自动化脚本, 规则引擎, 证据处理, 请求拦截, 运维自动化, 逆向工具, 隐私保护