Openwrt 开启外网访问并配置 SSL
记录一下 OpenWrt 开启外网访问并绑定 SSL 证书的操作
外网访问
- 关闭只允许内网访问的设置 (去掉勾选)
- 防火墙 ==> 端口转发 中添加端口转发,将外网 5500 应设置 OpenWrt 的 80 端口
通过域名 + 5500 端口即可访问
添加 SSL 证书
编辑 uHTTPd 的配置文件,打开路由器的 SSL 443 端口
$ vi /etc/config/uhttpd
在原有配置 list listen_http ‘0.0.0.0:80’下面加入以下两行
# 注意是https list listen_https '0.0.0.0:443' list listen_https '[::]:443'
输入以下命令安装 acme.sh
$ curl https://get.acme.sh | sh
可以看到此时已经添加了定时任务
此处使用 cloudflare 接口进行自动认证
获取 CF_Email,CF_Key 两个参数,并执行以下命令
export CF_Email="abcde@126.com" export CF_Key="de6132435csofe45464650w4646464602"
输入以下命令,运行 acme.sh 生成证书,并将生成的证书放到 uHTTPd 的默认存储位置,最后自动重启 uHTTPd
$ /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 的博客