首页/网络/常用端口速查/9051 Tor ControlPort 控制口

9051 Tor ControlPort 控制口

Tor 守护进程的控制端口:torrc 中 ControlPort 9051(默认关闭),用于切换链路、查询状态,必须配认证。

常用端口速查网络更新于 2026-10-13

Tor 的控制端口

Tor 守护进程的控制端口:只有在 torrc 中显式配置 ControlPort 9051 才会监听(默认不开启),用于程序化控制 Tor——查询网络状态、订阅事件、发出换链路信号。它与 SOCKS 代理口 9050 用途完全不同:9050 转发流量,9051 管理 Tor 进程本身。

基本信息

服务Tor daemon(ControlPort)
协议TCP(Tor 控制协议,文本命令)
默认端口9051(SOCKS 代理为 9050)
认证方式CookieAuthentication 或密码
暴露面仅本机回环地址

典型使用场景

  • 自动化脚本在出口被封禁时发 NEWNYM 更换链路
  • 用 GETINFO 查询 Tor 版本、链路节点与流量计数
  • 应用把 Tor 当本地代理时的控制面集成
  • 用 SETEVENTS 订阅建链事件,观察链路构建过程
  • 安全核查:确认本机 Tor 只监听回环地址

配置与手工验证

配置与手工验证
# torrc 片段:
# ControlPort 9051
# CookieAuthentication 1
printf 'AUTHENTICATE\r\nGETINFO version\r\nQUIT\r\n' | nc 127.0.0.1 9051
ss -lntp | grep -E '9050|9051'      # 确认只在回环监听

排障与核对

检查项做法异常表现
监听地址ss -lntp | grep 9051监听在 0.0.0.0:控制口已暴露到网络
认证状态不带认证直接发命令命令被执行说明认证没开;返回需认证才是正常
Cookie 文件CookieAuthentication 与文件权限权限过宽:同机任意用户都能接管控制口
换链路发 NEWNYM 后查出口地址无变化:目标站点仍按旧身份识别
ControlPort 与 SocksPort 常被混淆:9050 是浏览器和应用使用的代理入口,9051 是运维与脚本使用的管理入口。控制口不转发流量,但能对 Tor 的行为做实质干预,因此只监听回环并开启认证是底线配置。

控制口能做什么

通过 GETINFO 可以读到 Tor 版本、当前链路节点与流量计数;SIGNAL NEWNYM 要求 Tor 尽快更换出口节点;SETEVENTS 还能订阅建链、告警等事件流。这些能力对自动化很有价值,同时也意味着控制口一旦被他人接管,Tor 的全部行为都可被观察与干预。

Cookie 认证是官方推荐方式:Tor 启动时生成随机 Cookie 文件,客户端读取后完成认证,文件权限通常限制给 Tor 运行用户或特定组;改用密码认证时口令会落在配置文件里,对文件权限的要求更高。
为了脚本方便关掉认证:本机任意进程都能接管 Tor,查询使用痕迹、强制换链路,甚至影响你的流量走向。

易错点

  • 把监听地址写成 0.0.0.0:控制口直接对网络开放,同网段主机即可接管
  • 关闭 CookieAuthentication 改用简单口令:口令落盘且配置文件常被随手复制
  • 把 9051 当成 SOCKS 代理填进应用:连不上,还会误判成 Tor 未运行
  • Cookie 文件权限过宽:低权限用户读到文件即等于拿到控制权

数据来源与参考

  • Tor Project 文档(ControlPort 9051)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌