8111 是什么
8111 是 JetBrains TeamCity 服务器的默认端口:构建流水线的总控台,负责编排构建、管理制品与代理节点。它掌握着全部构建凭证,包括源码仓库访问、镜像仓库推送与发布密钥,因此暴露面必须严格控制。历史上 TeamCity 出现过允许未授权接管的认证绕过漏洞,未及时升级的实例风险极高。
基本信息
| 服务 | TeamCity Server(默认 8111) |
|---|---|
| 协议 | TCP,HTTP,可配置 HTTPS |
| 用途 | 持续集成与交付编排、代理与制品管理 |
| 安全等级 | 仅研发内网或统一认证后 |
| 权限面 | 源码、镜像仓库与发布密钥 |
典型使用场景
- 构建编排:定义流水线、触发条件与构建步骤
- 代理管理:为不同环境分配构建代理
- 制品管理:保存构建产物供部署使用
- 版本核对:升级前确认版本与已知风险
- 权限控制:项目级权限与登录来源限制
- 凭证治理:轮换构建所需的仓库与发布凭据
版本与端口核对
版本与端口核对
curl -s http://ci01:8111/login.html | grep -o 'version[^,]*' | head -3 # 从登录页提取版本信息
ss -lntp | grep 8111 # 主机侧确认监听与进程
# 升级前先备份数据目录与配置,并核对插件兼容性暴露面与影响
| 暴露对象 | 可获取内容 | 加固方向 |
|---|---|---|
| 登录页 | 版本信息,便于匹配已知风险 | 限制来源并及时升级 |
| 项目与构建配置 | 仓库地址、构建参数与脚本 | 项目级权限最小化 |
| 构建凭证 | 镜像仓库与发布密钥 | 定期轮换,避免长期有效 |
CI 服务器是软件供应链的关键节点:拿到它等于能向生产推送代码或镜像,因此比普通内网系统更值得优先加固。
版本信息往往直接出现在登录页,可据此匹配已知风险;即便无法隐藏,也要保证版本处在受支持范围内。
构建代理常运行在与生产相近的网络里,代理节点被控制同样危险,代理的接入凭证也要纳入统一管理。
升级要按官方说明处理数据迁移与插件兼容,先把备份和回滚方案准备好,再动生产实例。