1100 字
3 分钟
DELL 服务器风扇控制器 WebUI
2026-05-30

DELL 服务器风扇控制器 WebUI#

楼主前天晚上睡觉的时候,嫌风扇太吵就想起床把风扇转速调小一点,楼主就打开了 Mac 远程进了 Windows ,直接上网搜了 DELL 风扇控制,下载安装一气呵成然后就提示需要安装.NET Framework 4.5 或更高版本(楼主的 PC 上是有这个工具的,懒得再打开了就直接睡了),第 2 天起床突然有个想法,我可以做个 WebUI 啊,然后就有了这个项目。

下载连接:dell-fans-webui.tar.gz(约 16 KB)。

项目介绍#

这个项目的前身是 zzccchen/DellEmcFansController 一个 C# 编写的 Windows GUI 工具,版本迭代经历了三位作者:

cw1997 (v1.0.0) → jiafeng5513 (v1.0.1) → zzccchen (v1.0.2)

v1.0.2 新增了独立风扇控制(可以对不同风扇分别设转速),在 GitHub 上获得了 70+ Star。

但它有几个限制:必须在 Windows 桌面才能操作。于是就有了 Web 版重写——保留核心 IPMI 控制逻辑,用 Python Flask + Docker 重新实现,把操控入口从 Windows 桌面搬到了浏览器。


我做了什么?#

简单来说:打开浏览器就能控制 Dell 服务器的风扇。

主要功能一览:

功能说明
🔄 手动 / 自动模式切换一键从 iDRAC 接管风扇控制权,或交还给 iDRAC
🎚 转速滑块调节0% ~ 100%,步进 5%,也有快捷按钮(10/20/30/50/100%)
🌡 实时温度监控实时监控
📊 风扇 RPM 显示显示各风扇当前转速
🔐 登录鉴权首次启动自设密码
🎨 明亮 / 暗黑 / 跟随系统明暗切换
⚙ 在线修改 iDRAC 连接无需进容器改配置,设置页直接换地址/账号/密码并即时生效
📱 响应式布局手机 / 平板 / 桌面浏览器都能用
🐳 Docker 一键部署容器化管理

怎么用?#

前置条件#

  1. 一台能跑 Docker 的 Linux 主机(比如 Debian / Ubuntu),与服务器 iDRAC 在同一网络可达
  2. 被控服务器的 iDRAC 已开启 「启用 IPMI over LAN」(设置路径:iDRAC 设置 → 连接 → 网络 → IPMI 设置

三步部署#

# 1. 进入 webapp 目录
cd webapp
# 2. 构建并启动
docker compose up -d --build
# 3. 浏览器打开 http://<你的主机 IP>:9090

然后:

  • 首次进入会跳转到密码设置页,设一个登录口令(至少 6 位)才可以进入控制台。
  • 进入后点右上角 ⚙ 齿轮,在 iDRAC 连接设置页里直接填服务器地址、用户名、密码,还支持先「测试连接」验证再保存,改动即时生效,不用重启容器。

日常操作#

  • 控速:先点”手动控制”接管风扇,再拖动滑块设转速(20%~30% 通常是一个安静又安全的区间),点”应用转速”
  • 恢复:点”自动控制”交回 iDRAC,风扇回归系统温控策略
  • 改连接:点右上角 ⚙ 齿轮进入设置页,改 iDRAC 地址/账号/密码,支持”测试连接”先验证再保存
  • 监控:页面每 5 秒自动刷新温度和风扇数据,连接灯绿表示通信正常

架构一览#

浏览器 ──HTTP:9090──> [Docker 容器 dell-fans-web]
gunicorn (2 worker, --preload)
Flask (app.py)
调用 ipmitool (子进程)
IPMI/lanplus :623 ──> [服务器 iDRAC]
风扇 / 温度传感器

核心技术栈:

技术选型
Web 框架Python Flask 3.0
WSGI 服务器gunicorn 22.0(--preload 避免多 worker 密钥不一致)
底层通信ipmitool(Dell raw 命令)
密码存储werkzeug 哈希(auth.json 持久化在 Docker 卷里)
容器化Docker + docker-compose

用到的 Dell IPMI raw 命令#

# 切换手动控速
ipmitool raw 0x30 0x30 0x01 0x00
# 切回自动控速
ipmitool raw 0x30 0x30 0x01 0x01
# 设定转速 N%(例:30% → 0x1e)
ipmitool raw 0x30 0x30 0x02 0xff 0x1e
# 读取温度
ipmitool sdr type temperature
# 读取风扇
ipmitool sdr type fan

⚠️ 安全提醒#

  1. 手动锁定转速后,风扇不会随温度自动加速——高负载时 CPU 可能过热。建议把日常转速设在 20%~35%,并留意温度曲线;跑重负载前切回”自动控制”。
  2. 请只在内网使用,不要将 9090 端口暴露到公网。当前版本有 WebUI 登录认证,但仍建议配合反向代理 + HTTPS 使用。
  3. 该 Dell raw 命令在 R620 / R630 / R640 / R720 / R730 / R740 等 12/13/14 代机型上验证可用。极旧或极新机型若命令不生效,切回自动模式即可,不会损坏硬件。

相关链接#


最后更新:2026-05-30

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

DELL 服务器风扇控制器 WebUI
https://blog.patlabor.cn/posts/dell-服务器风扇控制器-webui/
作者
綺麗
发布于
2026-05-30
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时