LibreHardwareMonitor 远程监控完整指南:3 步开启 Web 界面,让手机也能看温度
2026/9/19 7:59:05 网站建设 项目流程

LibreHardwareMonitor 远程监控完整指南:3 步开启 Web 界面,让手机也能看温度

【免费下载链接】LibreHardwareMonitorLibre Hardware Monitor is free software that can monitor the temperature sensors, fan speeds, voltages, load and clock speeds of your computer.项目地址: https://gitcode.com/GitHub_Trending/li/LibreHardwareMonitor

凌晨机房那台服务器温度突然爬高,而你人还在几公里外的办公室——盯着本地屏幕显然没用,你需要的是在任何地方都能读到它的实时读数。LibreHardwareMonitor 自带一个开箱即用的 HTTP 服务,把温度、风扇、电压、负载和时钟数据通过 Web 界面与标准接口暴露出去,远程硬件监控不必装任何客户端,浏览器一打开地址就能看。

先跑起来:从克隆代码到打开第一页监控界面

想远程看数据,前提是先在本机把这套工具编译跑起来。代码得先落到本地,用下面这条命令即可:

git clone https://gitcode.com/GitHub_Trending/li/LibreHardwareMonitor

接着用 Visual Studio 打开解决方案,或直接用dotnet build编译主程序并运行。启动时会询问是否安装 PawnIO 驱动,它负责真正读取硬件传感器,点确定即可。

开启远程这一步之所以要手动勾,是因为默认情况下该服务是关闭的、不会自己跑起来:

  1. 打开菜单Remote Web Server
  2. 勾选Run,内置监听器随即在默认端口8085上工作;
  3. 回到本机浏览器输入http://localhost:8085,看到传感器树状列表,说明 Web 界面已可用。

如果菜单里看不到这一项,说明当前平台不支持 HttpListener,需要换到支持该接口的运行环境,具体见文末排障清单。

开放到局域网:让手机也能看温度

本机访问通过后,下一步是让同一网络下的手机、平板直接连进来。这一步的价值在于:你不用给移动设备装 App,手机浏览器本身就是客户端📱。

先弄清那台机器的局域网地址。LibreHardwareMonitor 的监听地址由ListenerIp决定,默认监听在所有网卡(等效0.0.0.0),此时同网段的任意设备都能连。你可以用菜单里的Interface / Port对话框查看当前生效的地址与端口,界面会实时拼出一条可直接点击的访问 URL,实现见 InterfacePortForm.cs。

然后按下面顺序做,每一步都为了排除一道可能拦路的关卡:

  1. 把手机连到与那台机器同一个 Wi-Fi / 局域网
  2. 在手机浏览器输入http://<机器IP>:8085(IP 从上面对话框或系统网络设置里取);
  3. 若打不开,优先怀疑端口不通——多数系统防火墙默认拒绝入站,需在防火墙里为8085(或你改后的端口)放行 TCP 入站。

放行之后,手机页面会自动按屏幕宽度重新排布,无需再做适配。

把门锁好:身份验证与端口自定义

局域网里裸奔的监控页谁都能看,所以真正对外暴露前,先给它上个锁。LibreHardwareMonitor 采用 HTTP Basic 认证:打开菜单里的Authentication对话框,勾选启用并填入用户名、密码即可。密码不会被明文存储,而是先做 SHA256 摘要再落盘(SetPassword内部调用ComputeSHA256)。

服务端开启后,请求方案会切换为 Basic:

_listener.AuthenticationSchemes = AuthEnabled ? AuthenticationSchemes.Basic : AuthenticationSchemes.Anonymous;

未通过校验的请求会直接收到401,拿不到任何数据。

至于地址与端口,两个属性各司其职:ListenerIp决定监听在哪块网卡(选具体 IP 能把服务限定在某个接口上、缩小暴露面),ListenerPort决定端口号,改完点确定即可持久化。完整实现集中在 HttpServer.cs。

把数据接出去:REST API 与 Prometheus

除了网页,你还经常需要把单个数值抓给脚本或大屏。接口都以查询串方式挂在http://<IP>:8085上,最常用的三个如下:

用途请求方式返回
读取某传感器当前值GET /Sensor?action=Get&id=/sensor/path{"result":"ok","value":42.0,...}
写控制值(风扇目标转速等)GET /Sensor?action=Set&id=/sensor/path&value=42.0{"result":"ok"}
重置该传感器的 Min/MaxGET /Sensor?action=ResetMinMax&id=/sensor/pathGet的返回

id是传感器的标识路径,可在data.json里查到每个节点的SensorId;而data.json本身会一次性吐出整棵硬件树的 JSON,带RawValue这类原始单位字段,更适合程序解析。

若你已经跑着 Prometheus,LibreHardwareMonitor 同样支持📈:访问/metrics即可拿到 OpenMetrics 文本,值会被换算成基础单位(温度 → 摄氏度、频率 → 赫兹、数据 → 字节)。查询参数还能控制行为——archivelength指定要回传的历史条数(上限 10),timestamps控制是否带时间戳,lastvalue决定是否返回最新值;响应头里会用X-archivelengthX-timestampsX-lastvalue回显当前生效的设置。

排障清单:最容易踩的几个坑

按出现频率从高到低,先对号入座再动手:

  • 页面转圈但打不开:多半是端口被别的程序占着。打开Interface / Port对话框把8085换成一个空闲端口,重新勾选 Run。
  • 本机 OK、手机连不上:十有八九是防火墙拦了入站,或手机与机器不在同一网段。先放行对应 TCP 端口,再确认两者 IP 段一致。
  • 换了网络就连不上:之前选的具体ListenerIp可能已失效。代码里会自动检测该 IP 是否仍存在,不存在时会回退成监听全部接口,所以重新确认一下地址最稳妥。
  • 菜单里没有 Remote Web Server:说明平台不支持 HttpListener,PlatformNotSupported为真时整块菜单会被隐藏,需换到支持的运行环境。

现在你就可以立刻做的 3 件事

  • 勾上Remote Web Server → Run,在浏览器验证localhost:8085已能看到数据;
  • 打开Authentication设好账号密码,避免被局域网内陌生人读取;
  • 记下局域网访问地址,把手机连上同一 Wi-Fi,顺手把/metrics接到你现有的监控栈里。

从"人不在机器旁"到"随时看一眼读数",中间只差这几步;等设备越攒越多,这套远程硬件监控会越用越顺手。

【免费下载链接】LibreHardwareMonitorLibre Hardware Monitor is free software that can monitor the temperature sensors, fan speeds, voltages, load and clock speeds of your computer.项目地址: https://gitcode.com/GitHub_Trending/li/LibreHardwareMonitor

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询