使用免费顶级域名和证书给nas增加https,搭建自己的Bitwarden家用服务
Bitwarden是一个强大的密码管理工具,支持全平台使用,同时是开源的,可以自己搭建服务,为了保证传输安全它要求我们的服务域名必须是https。https想必大家都不陌生,它可以保障我们传输内容的安全性,在证书不被泄漏的前提下,传输内容不会被中间人劫持。
如果有白群晖这样的nas提供了证书和域名,部署起来还是很方便的,但对于追求性价比的垃圾佬来说,必然要白嫖才能开心,所以这次给大家讲一下如何通过免费的域名部署https服务。
准备一台支持ddns的路由器,这里我使用的是tplink的ddns,一台linux主机,我使用的是ubuntu。当然还需要有公网ip。
然后去freenom上注册域名,freenom是全球唯一一家提供免费顶级域名的服务商,一次最多可以申请1年,到期前可以续期。具体的注册过程(需要科学上网)网上有很多教程了,这里就不列了。
申请好域名之后,我们通过CNAME关联自己的ddns域名,进入到freenom的dns管理页面,增加一条type为CNAME的dns记录,name是我们自己想要的三级域名,target是我们的ddns域名。设置好了后过一会ping下看是否生效。
再来申请https证书,我使用的是certbot来申请letsencrypt的免费赠书。因为宽带不支持80端口,所以没办法使用自动验证,只能通过手动dns验证,运行命令:certbot certonly -d 域名.tk -d "*.域名.tk" --manual --preferred-challenges dns,注意域名这里,如果要申请泛域名证书需要两个都写。运行后会出现一串代码,需要给dns增加txt记录,进入到freenom的dns管理页面,增加一条记录,name为:_ACME-CHALLENGE,type为:txt,target为运行命令后出现的代码。保存后过一会就会生效,可以是用这个工具来验证下:https://toolbox.googleapps.com/apps/dig/#TXT/_acme-challenge.域名.tk。确定生效后按回车继续,就会生成证书了。
生成的证书默认存放在/etc/letsencrypt/下,live下的证书就是当前有效的证书,可以直接用了。证书的有效期是3个月,续期运行certbot renew就可以了。如果嫌麻烦可以写个crontab,定时运行一下。
最后就可以使用证书来搭建服务了,Bitwarden服务端我用的是rust版本的Vaultwarden,docker部署命令:
docker run -d --name bitwarden
-e ROCKET_TLS='{certs="/ssl/live/域名.tk/fullchain.pem",key="/ssl/live/域名.tk/privkey.pem"}'
-v /etc/letsencrypt/:/ssl/
-v /bw-data/:/data/
-p 外网端口:80
vaultwarden/server:latest
再通过域名访问就可以了
当然也可以用nginx来做反向代理
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~







Capollo
校验提示文案
过来的雷
校验提示文案
Adore1105
校验提示文案
老男孩折腾记
校验提示文案
摩羯mj
校验提示文案
哈更达斯
校验提示文案
追虞
校验提示文案
什么殖得买
校验提示文案
eBusinesser
校验提示文案
一把糖果塞满你的嘴
校验提示文案
guniang371
校验提示文案
D777
校验提示文案
西瓜30000
校验提示文案
老男孩折腾记
校验提示文案
过来的雷
校验提示文案
Adore1105
校验提示文案
西瓜30000
校验提示文案
D777
校验提示文案
guniang371
校验提示文案
一把糖果塞满你的嘴
校验提示文案
eBusinesser
校验提示文案
Capollo
校验提示文案
什么殖得买
校验提示文案
追虞
校验提示文案
哈更达斯
校验提示文案
摩羯mj
校验提示文案