解决在 Debian 上使用 Unifi Controller 无法检查固件更新的问题

2019-05-31 作者 bubuyu

一直在 Debian 上使用 Unifi Controller 控制家中的 Unifi Wi-Fi 设备,打开了自动升级固件却从来没有提示过固件更新,手工点检查固件升级按钮也毫无反应。

之前以为是自动更新有延迟,就没有理睬,然后手工去更新设备,这次等了两周没更新,想看看是怎么回事,打开日志一看,原来有报错:

<webapi-109> WARN  fwupdate - unable to get update info for channel release:
javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
      at sun.security.ssl.Alerts.getSSLException(Alerts.java:208) ~[?:1.8.0_212]

搜了一下,原来是 Debian 的 OpenJDK 11 的 cacerts 文件有问题,可以通过以下方式解决:

$ sudo rm /etc/ssl/certs/java/cacerts
$ sudo update-ca-certificates -f
$ sudo systemctl restart unifi

再次登录 Unifi Controller,立刻各种更新都开始提示了…