OpenWrt下如何让wget支持HTTPS下载

在 OpenWrt 中使用 wget 下载 HTTPS 地址时,如果系统缺少 SSL/TLS 相关组件,可能会出现无法下载的问题。典型报错如下:

wget: SSL support not available, please install one of the libustream-.*[ssl|tls] packages as well as the ca-bundle and ca-certificates packages.

这条提示说明:当前系统中的 wget 没有可用的 SSL/TLS 支持库,或者缺少用于校验证书的 CA 证书包,因此无法正常访问 https:// 开头的下载地址。

解决方法

先更新 OpenWrt 软件包索引:

opkg update

然后安装 SSL/TLS 支持库:

opkg install libustream-openssl

最后安装 CA 证书包:

opkg install ca-certificates

一次性安装命令

也可以合并为一组命令执行:

opkg update
opkg install libustream-openssl ca-certificates

如果你的 OpenWrt 固件使用的是 mbedTLS 相关组件,也可以根据软件源中的包名选择安装 libustream-mbedtls。多数情况下,安装 libustream-openssllibustream-mbedtls 其中一个即可。

为什么需要这些依赖

OpenWrt 为了节省存储空间,默认固件通常只包含最小化的软件组件。wget 本身负责下载文件,但访问 HTTPS 资源时,还需要额外的 SSL/TLS 库来完成加密连接。

常见依赖作用如下:

  • libustream-openssl:为 OpenWrt 网络工具提供基于 OpenSSL 的 TLS 支持
  • libustream-mbedtls:提供基于 mbedTLS 的 TLS 支持,可作为替代选择
  • ca-certificates:提供常用根证书,用于校验 HTTPS 站点证书

如果只安装 TLS 库而没有安装 CA 证书,部分 HTTPS 网站可能仍然无法通过证书校验;如果只安装 CA 证书而没有 TLS 支持库,wget 依然无法建立 HTTPS 连接。

验证是否修复成功

检查相关包是否已安装:

opkg list-installed | grep -E 'libustream|ca-certificates'

正常情况下,可以看到类似下面的结果:

ca-certificates - ...
libustream-openssl - ...

常见注意事项

如果执行 opkg update 失败,需要先确认路由器网络、DNS 和软件源配置是否正常。

如果设备存储空间较小,安装软件包前可以先查看剩余空间:

df -h

如果软件源中没有 libustream-openssl,可以尝试搜索可用的 libustream 包:

opkg list | grep libustream

然后根据实际结果安装对应的 SSL/TLS 支持包。

未经允许不得转载:编源视界 » OpenWrt下如何让wget支持HTTPS下载