在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证书已生效。