OpenOSINT 详细部署教程:AI 驱动的开源情报调查工具
OpenOSINT 详细部署教程:AI 驱动的开源情报调查工具
OpenOSINT 是一个集成 AI 能力的开源情报(OSINT)调查工具,它通过自然语言交互界面,整合了 20 种专业调查工具,能够自动进行信息收集、关联分析和报告生成。本教程将介绍其安装、配置和核心使用方法。
1. 项目概述与准备
1.1 核心能力
OpenOSINT 为安全研究人员和分析师提供:
- 20 个模块化工具:涵盖邮箱、用户名、域名、IP、电话、数据泄露、子域名、Shodan、VirusTotal、Censys、DNS 等调查维度。
- AI 智能代理:默认使用 Anthropic Claude,也支持本地 Ollama 或任何 OpenAI 兼容接口。AI 能根据调查目标自主选择和链式调用工具。
- 多种交互界面:提供交互式 REPL(Read-Eval-Print Loop)、命令行直接调用、Web 浏览器 UI 以及 MCP(Model Context Protocol)服务器。
- 结构化输出:自动生成 Markdown 和 PDF 报告,支持 JSON 输出。
1.2 系统要求
- 操作系统:Linux、macOS、Windows(通过 WSL)。
- Python 版本:Python 3.8 或更高版本。
- 外部依赖(部分工具需要,需在
PATH中):holehe,sherlock-project,sublist3r,phoneinfoga。如果缺失,对应的工具会返回错误提示,不影响其他工具使用。 - AI API 密钥(必须):至少需要配置一个 AI 后端。推荐使用 Anthropic API Key(默认),也可使用 OpenAI 兼容接口或本地 Ollama(无需密钥)。
- 网络:能访问互联网以使用各 API 和工具。
⚠️ 法律与授权警告:OpenOSINT 仅限合法授权使用! 用户必须确保其使用行为符合所在国家/地区的所有法律法规。作者不对任何滥用行为承担责任。使用前请务必阅读项目中的
DISCLAIMER.md。
2. 安装与基础配置
2.1 安装核心包
推荐从 PyPI 安装稳定版:
1 | pip install openosint |
从源码安装(开发版):
1 | git clone https://github.com/OpenOSINT/OpenOSINT.git |
安装可选依赖(根据需求):
| 命令 | 用途 |
|---|---|
pip install "openosint[web]" |
启用 Web UI 界面 |
pip install "openosint[openai]" |
启用 OpenAI 兼容后端 |
pip install "openosint[graph]" |
启用实体图谱模块(Python 3.10+) |
pip install ollama |
本地 Ollama 后端支持(还需安装 Ollama 运行时) |
pip install shodan reportlab censys |
分别安装 Shodan、PDF 报告、Censys 支持 |
2.2 安装外部工具(可选)
为了使用全部功能,建议安装以下工具并确保它们在系统的 PATH 环境变量中:
1 | pip install holehe sherlock-project sublist3r |
2.3 配置 API 密钥
OpenOSINT 通过项目根目录或用户目录下的 .env 文件读取密钥。创建该文件并填入必要信息:
1 | # 至少配置一个 AI 后端 |
如果没有配置相应密钥,调用对应工具时会提示错误,但其他功能正常。
3. 核心使用方法
3.1 方式一:交互式 REPL(推荐)
在终端中直接输入 openosint 进入 AI 代理模式。你可以用自然语言描述调查目标,AI 会自动决策并执行工具链。
1 | openosint |
在 REPL 中,你可以:
发起调查:直接输入邮箱、用户名、域名等,例如:
1
> investigate target@example.com
AI 会依次调用
search_email,search_breach, 并根据结果(如发现的用户名)自动进行search_username等后续操作。使用命令:
clear:重置对话记忆save:保存当前报告到reports/目录tools:列出所有可用工具及其状态config:查看当前配置history:浏览历史会话exit或Ctrl-D:退出
3.2 方式二:直接调用工具(无 AI)
如果你想直接运行某个特定工具而不经过 AI 代理,可以使用命令行:
1 | # 邮箱调查 |
3.3 方式三:启动 Web UI
Web 界面提供图形化的聊天和结果展示,支持流式输出、工具卡片,适合不熟悉命令行的用户。
1 | # 安装 Web 依赖后启动 |
在 Web UI 的设置中,你可以选择 AI 后端(Anthropic、Ollama、OpenAI 兼容),并配置相应的 API 密钥。
4. 高级配置与集成
4.1 配置本地 Ollama(完全离线)
如果你希望完全本地运行,无需 API 密钥,可以使用 Ollama。
安装并运行 Ollama:从 ollama.com 下载并运行,拉取一个模型,如
llama3.2。安装 Python 依赖:
pip install ollama启动 OpenOSINT 并指定使用 Ollama:
1
openosint --provider ollama --ollama-model llama3.2
Web UI 中也可以在设置里选择 “Ollama (local)”。
4.2 作为 MCP 服务器运行
OpenOSINT 可以作为 MCP 服务器,将其 20 个工具暴露给任何 MCP 兼容的 AI 客户端(如 Claude Desktop、Claude Code)。
在 Claude Code 中集成:
1
claude mcp add openosint python /绝对路径/到/OpenOSINT/openosint/mcp_server.py
在 Claude Desktop 中集成:编辑配置文件
~/Library/Application Support/Claude/claude_desktop_config.json,添加:1
2
3
4
5
6
7
8{
"mcpServers": {
"openosint": {
"command": "python",
"args": ["/绝对路径/到/OpenOSINT/openosint/mcp_server.py"]
}
}
}
配置后,在 Claude 中就可以直接通过自然语言调用 OpenOSINT 的所有工具进行调查。
5. 故障排查与注意事项
- 工具未找到:如果提示
holehe、sherlock等未找到,请确保已通过pip安装,并且其可执行文件在PATH中。可以尝试重新打开终端或使用python -m site --user-base找到用户安装路径并添加到PATH。 - API 密钥错误:仔细检查
.env文件中的密钥是否正确,并确保环境变量已加载(重启终端或source .env)。 - 网络或代理问题:部分工具需要访问外网 API。如果在中国大陆使用,可能需要配置网络代理。
- Web UI 无法启动:确保已安装
openosint[web]依赖,并且端口8080未被占用。可以使用openosint web --port 8081指定其他端口。 - 关于 Web UI 的安全变更 (v2.28+):重要!在最新版本中,为了安全考虑,当 Web UI 绑定到非
127.0.0.1地址时(即对外提供服务),系统不会使用你的.env文件中的 API 密钥,而是要求每个用户自行在 Web UI 中配置密钥。这是为了防止意外泄露高权限密钥。如你确信反向代理环境安全,可设置OPENOSINT_TRUSTED_PROXY=true环境变量来恢复原有行为,但务必确保在前端配置了适当的认证。
6. 总结:常用命令速览
| 场景 | 命令 |
|---|---|
| 启动 AI 交互式调查 | openosint |
| 启动 Web UI | openosint web |
| 直接查询邮箱 | openosint email 目标@邮箱.com |
| 直接查询用户名 | openosint username 目标用户名 |
| 查询域名 WHOIS | openosint whois example.com |
| 查询 IP 信息 | openosint ip 8.8.8.8 |
| 使用特定 AI 提供商 | openosint --provider ollama |
| 输出 JSON 格式 | 在命令后加 --json |
| 查看所有工具 | openosint tools |
| 查看历史会话 | openosint history |
OpenOSINT 是一个功能强大但需要谨慎使用的工具。请务必遵守法律法规,仅在授权范围内进行安全研究和调查。建议先从免费的 Prompt 入门套件开始,熟悉其工作流程和方法论。



