Openwrt 开启外网访问并配置 SSL
记录一下 OpenWrt 开启外网访问并绑定 SSL 证书的操作
外网访问
关闭只允许内网访问的设置 (去掉勾选)
防火墙 ==> 端口转发 中添加端口转发,将外网 5500 应设置 OpenWrt 的 80 端口
通过域名 + 5500 端口即可访问
添加 SSL 证书
编辑 uHTTPd 的配置文件,打开路由器的 SSL 443 端口
代码语言:javascript
复制
$ vi /etc/config/uhttpd
在原有配置 list listen_http ‘0.0.0.0:80’下面加入以下两行
代码语言:javascript
复制
# 注意是https
list listen_https '0.0.0.0:443'
list listen_https '[::]:443'
输入以下命令安装 acme.sh
代码语言:javascript
复制
$ curl https://get.acme.sh | sh
可以看到此时已经添加了定时任务
此处使用 cloudflare 接口进行自动认证
获取 CF_Email,CF_Key 两个参数,并执行以下命令
代码语言:javascript
复制
export CF_Email="abcde@126.com"
export CF_Key="de6132435csofe45464650w4646464602"
输入以下命令,运行 acme.sh 生成证书,并将生成的证书放到 uHTTPd 的默认存储位置,最后自动重启 uHTTPd
代码语言:javascript
复制
$ /root/.acme.sh/acme.sh --issue --dns dns_cf -d sowevo.com -d *.sowevo.com --keypath /etc/uhttpd.key --fullchainpath /etc/uhttpd.crt --reloadcmd "/etc/init.d/uhttpd restart"
稍等一会命令执行完成 (不同的 dns 厂商时间会有不同), 证书就申请完毕
将路由器的 443 端口映射到外网
家宽的 443 端口竟然没有封,就先使着吧…
Sowevo 的博客