安装SSL支持组件
SSL的支持组件有luci-ssl 和luci-ssl-openssl,区别是luci-ssl的默认SSL库是mbedtls,mbedtls是个为嵌入式设备设计的轻量级可配置库,但是不带ARMv8加密扩展,该功能还没有正式发布https://github.com/ARMmbed/mbedtls/pull/1424
而OpenSSL集成了ARMv8加密扩展,在ARM64上的速度提升4到5倍,我这里安装luci-ssl-openssl
#注意后面参数,如果不加可能有依赖组件已经安装导致失败
opkg update
opkg install luci-ssl-openssl --force-overwrite
转换证书编码
OpenWRT所用的SSL组件——PolarSSL只支持DER(二进制)形式编码的证书,而不支持PEM(Base64),所以需要转换
openssl x509 -outform der -in your-cert.pem -out your-cert.crt
修改配置文件
vim /etc/config/uhttpd
#确保添加以下内容
list listen_https ‘0.0.0.0:443’ list listen_https ‘[::]:443’ option cert ‘your-cert.crt’ option key ‘your-key.pem’ option redirect_https ‘1’ #强制https访问
重启uhttpd
/etc/init.d/uhttpd restart
查看日志
logread #openwrt日志是存储在内存中的,关机就没了