三分钟完成一次号码查缉:PhoneInfoga从安装到首次扫描
【免费下载链接】phoneinfogaInformation gathering framework for phone numbers项目地址: https://gitcode.com/GitHub_Trending/ph/phoneinfoga
逐个网站手动核查一个可疑手机号既慢又不全。PhoneInfoga 是一个号码查缉工具,一条命令即可解析国家、运营商、线路类型,还能批量生成社交媒体与诈骗举报的检索链接。下文按"跑起来→看懂原理→用出花样"三步走。
3分钟跑起来:完成第一次号码查缉
没有 Go 环境也不用配置依赖,用 Homebrew 装二进制是最快的路径:
brew install phoneinfoga然后输入任意带国家码的国际格式号码:
phoneinfoga scan -n "+1 (555) 444-1212"预期输出:local 扫描器给出的本地格式、E.164 格式与国家码,外加 googlesearch 扫描器生成的一批 Google Dork 检索链接(覆盖社交媒体、诈骗举报、一次性号码站,零配置即可用);需要 API 密钥的扫描器在密钥未设置时会被自动跳过,不会报错。
挑对扫描器:5 个内置能力与配置门槛
不同扫描器的配置门槛差异不小,先对照下表选路,避免白申请密钥。详细说明见 docs/getting-started/scanners.md:
| 模块/能力 | 解决什么问题 | 配置门槛 |
|---|---|---|
| local | 标准化格式(E.164 等),识别国家码与运营商 | 无需配置 |
| numverify | 验证号码有效性、运营商、线路类型(移动/固话) | 需 NUMVERIFY_API_KEY |
| googlesearch | 生成社交媒体、诈骗举报、一次性号码平台的 Dork 链接 | 无需配置 |
| googlecse | 以编程方式拉取真实搜索结果(免费额度每日 100 次查询) | 需 GOOGLECSE_CX 与 GOOGLE_API_KEY |
| ovh | 判断是否为 OVH Telecom 的 VoIP 号码并给出对应城市 | 无需配置 |
未配置的扫描器默认不运行,所以哪怕你什么都没配,命令也能跑通。
原理拆解:号码查缉背后的并行扫描调度
整个扫描的调度集中在 lib/remote/ 的 Library 结构体里,remote.go 中扫描调度逻辑的关键部分(日志与 panic 恢复等细节略去):
for _, s := range r.scanners { wg.Add(1) go func(s Scanner) { defer wg.Done() if err := s.DryRun(*n, opts); err != nil { return } data, err := s.Run(*n, opts) if err != nil { r.addError(s.Name(), err) return } if data != nil { r.addResult(s.Name(), data) } }(s) }- 前置过滤:scan 命令先把
-D参数指定的扫描器交给 filter.Engine,注册时按名字跳过(实现在 lib/filter/filter.go)。 - DryRun 预检:每个扫描器运行前先检查自己能不能跑,缺密钥或不适用就静默跳过,不打断整轮扫描。
- 并发执行与结果聚合:其余扫描器各占一个 goroutine,成功数据进 results 映射、失败进 errors 映射,均由 RWMutex 保护,wg.Wait() 后一并交回调用方输出。
进阶玩法:启动 Web 界面与扩展插件
不想盯终端的话,一行命令即可把 Web 服务跑起来:phoneinfoga serve -p 8080(默认端口 5000),浏览器打开 http://localhost:8080 就能输入号码、按类别勾选扫描器,结果分栏展示:
再加--no-client参数则只暴露 REST API,方便业务系统直接调用。有 Go 基础的话还可以写自己的扫描器:实现 Scanner 接口后用--plugin ./custom_scanner.so加载,examples/plugin/ 提供了可直接改写的模板,其中 DryRun 与 Run 两个方法的职责注释得很清楚。
场景建议:个人与企业怎么用
- 适合个人:只想快速排查某号码的公开足迹时,默认的 local + googlesearch 零配置组合就够用,把生成的链接在浏览器里逐个打开即可。
- 建议企业:用官方 Docker 镜像部署并以
--no-client模式对外提供 REST API 集成;如需核实运营商与线路类型,为 numverify 申请免费密钥写入.env文件。 - 另外注意:README 的 Anti-features 一节明确写了它不提供号码或机主的实时定位,把它当作信息收集框架而非追踪工具使用。
找对入口:延伸资源与部署提示
- docs/getting-started/install.md:二进制、Homebrew、Docker 等全部安装方式
- examples/plugin/:Go 插件开发模板
- support/docker/:docker-compose 与 traefik 编排文件
生产环境建议用官方 Docker 镜像部署:服务本身无状态、不需要持久化存储,可以直接横向扩容放在负载均衡后面。
【免费下载链接】phoneinfogaInformation gathering framework for phone numbers项目地址: https://gitcode.com/GitHub_Trending/ph/phoneinfoga
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考