在OpenWrt上设置https的SSL证书
服务器
Published: 2023-02-23

在OpenWrt上设置https的SSL证书的方法。
实际上无法通过WebUI进行设置??

对于像Let’s Encrypt这样有效期较短的证书,可以将其脚本化并通过cron定期执行。

事前准备

  • 事先获取SSL证书
  • 在WebUI中启用https
    系统 -> 管理 -> HTTP(S) 访问 
    勾选 HTTPS 重新定向
    

将SSL证书和私钥转换为DER格式

openssl x509 -in server.crt -outform DER > uhttpd.crt
openssl x509 -in chain.crt -outform DER >> uhttpd.crt
openssl rsa -in server.key -outform DER > uhttpd.key

如果私钥不是RSA,而是椭圆曲线密码的私钥,请使用 openssl ec -in server.key -outform DER > uhttpd.key

将SSL证书和私钥复制到OpenWrt

scp uhttpd.crt uhttpd.key <OpenWrt主机>:/etc/

重启OpenWrt的Web服务器uhttpd

ssh <OpenWrt主机> /etc/init.d/uhttpd restart

现在,连接到 https://<OpenWrt主机>/ 时,您应该看到配置的SSL证书已生效。