树莓派wan口无法获取 (树莓派如何更新证书)

树莓派安装HomeAssistant智能化家庭服务器用的不是80端口,但是在家庭服务器上申请证书需要80端口可以被证书服务器访问。

解决方案无外乎:1)Let's Encrypt在阿里云服务器上直接申请然后*载下**到本地服务器上使用;2)Let's Encrypt在本地服务器利用dns验证,没有80端口也是可行的;3)直接在用阿里云上申请免费1年的证书(目前阿里云免费证书超过1年重新申请也是免费的)。

Let's Encrypt证书比阿里云上免费证书好在哪里?我不知道,或许虽然三个月就要申请一次,但是一直都是免费的历史比较长吧?

每隔三个月要去申请一次Let's Encrypt证书还是有点麻烦,特别是树莓派HA服务器放在家里,在没有80端口的情况下不能直接通过http验证申请证书更麻烦。

有个出自微软GitHub的小工具比较好用acme.sh,使用起来比较简单,这里总结一下在树莓派上为HomeAssistant申请Let's Encrypt证书的安装过程和使用方法。

只介绍acme.sh最好用的dns验证方案,不过使用前提醒会用到阿里云的AccessKey ID以及AccessKey Secret,这两项最好申请测试用子账号比较安全!阿里云也有提示特别要小心微软GitHub有关需要API密钥的东东。

无显示屏无网线怎么查树莓派的ip,未开放80端口能上网吗

安全第一,不要用这种权限很高的API密钥

acme.sh安装和使用都很简单,安装就一条命令。

curl  https://get.acme.sh | sh

安装的位置在隐藏目.acme.sh录下

~/.acme.sh/

root用户下建立alias

alias acme.sh=/home/ubuntu/.acme.sh/acme.sh

使用也很简单,如下: https://usercenter.console.aliyun.com/#/manage/ak

无显示屏无网线怎么查树莓派的ip,未开放80端口能上网吗

用测试账号的accesskey

export Ali_Key="LTAI2gaqZj"

export Ali_Secret="xfagJW2"

acme.sh --issue --dns dns_ali -d www.xxx.com(你的域名)

等待一小会提示 Cert success. 证书申请认证下发就完成了。后续工作就证书的更新是自动的,就无需操心了。作者介绍“目前证书在 60 天以后会自动更新, 你无需任何操作. 今后有可能会缩短这个时间, 不过都是自动的, 你不用关心.

在树莓派HA关于证书的工作就是只剩一项了,复制下面的内容粘贴到树莓派然后回车就好了!需要su权限下使用以下命令,因为HomeAssistant的目录需要root权限才能往里面拷贝东东。

acme.sh --install-cert -d www.stemcell.pub \

--key-file /home/homeassistant/.homeassistant/ssl/key.pem \

--cert-file /home/homeassistant/.homeassistant/ssl/cert.pem \

--fullchain-file /home/homeassistant/.homeassistant/ssl/fullchain.pem

以上*载下**的证书必须使用--install-cert来进行安装!这也是后续维护证书更新的唯一的工作!

以下备注,只要Let's Encrypt可以正常更新就不会选择自动升级acme.sh

升级 acme.sh 到最新版 :

acme.sh --upgrade

如果你不想手动升级, 可以开启自动升级:

acme.sh  --upgrade  --auto-upgrade

之后, acme.sh 就会自动保持更新了.

你也可以随时关闭自动更新:

acme.sh --upgrade  --auto-upgrade  0

无显示屏无网线怎么查树莓派的ip,未开放80端口能上网吗