应用服务器管理口
JBoss EAP 与 WildFly 的 HTTP 管理接口默认端口:部署与回滚应用、配置数据源、查看运行状态、执行管理 CLI 都通过 9990(HTTPS 版为 9993)。这个管理口的权限等同应用服务器进程本身,能做的事远超普通应用后台。
基本信息
| 服务 | WildFly / JBoss EAP Management |
|---|---|
| 协议 | TCP/HTTP(HTTPS 常为 9993) |
| 默认端口 | 9990 |
| 常用工具 | jboss-cli.sh --connect |
| 暴露面 | 仅管理网段 |
典型使用场景
- 部署与回滚应用包
- 配置数据源与连接池参数
- 用管理 CLI 批量执行配置脚本
- 查看线程池与连接池运行数据
- 域模式下的域控制器与主机控制器管理
管理面核对
管理面核对
curl -sI http://app01:9990/console | head -3 # 控制台可达性
$JBOSS_HOME/bin/jboss-cli.sh --connect --controller=app01:9990
# CLI 内: :read-attribute(name=server-state) 查看实例状态
ss -lntp | grep -E '9990|9993'排障与核对
| 检查项 | 做法 | 异常表现 |
|---|---|---|
| 控制台 | curl -sI http://app:9990/console | 可匿名打开:管理鉴权配置缺失 |
| 监听地址 | ss -lntp | grep -E '9990|9993' | 监听 0.0.0.0:管理面暴露到业务网 |
| 管理账号 | 用户列表与角色分配 | 沿用弱口令:扫描器可直接尝试登录 |
| 运行状态 | CLI 查询 server-state | 显示 started 但业务不可用:查部署与数据源状态 |
老版本 JBoss 的管理控制台与 jmx-console 出过多个远程利用漏洞,公开利用代码长期存在。这类历史包袱意味着管理口绝不能放到业务网甚至公网,应用服务器版本与补丁也要纳入常规巡检。
管理口与业务口的边界
9990 能改变应用部署内容与运行时配置,相当于拿到应用服务器进程的能力;业务口只暴露应用逻辑。把两者放在同一网段、同一套访问策略下,会让一次业务侧渗透直接升级为服务器接管,网络分段时必须区别对待。
多数发行包默认把管理接口绑定在回环地址,需要显式修改才对外监听——这本是有意的保护。容器化部署时若为图方便把它绑到 0.0.0.0,就等于把默认保护关掉了,同时要配套来源限制与强口令。
管理口与业务口同网段开放:应用被攻破即等于服务器被「官方渠道」接管,攻击者能直接替换应用包。