前言
哈喽,大家好,欢迎来到我的频道,本期我们将继续折腾我们的服务器——搭建一个开源的密码管理平台Bitwarden,搭建自己的私人密码库,实现账号密码更安全。
介绍Bitwarden
Bitwarden是一款自由且开源的密码管理服务,用户可在加密的保管库中存储敏感信息(例如网站登入凭据(简单说就是账号密码))。他还支持多种设备,从桌面端到移动端再到浏览器端,一个不拉,全都有,甚至连命令行和网页端都有!
视频教程
按照惯例,先放视频教程
老版本使用aapanel 宝塔面板搭建
图文教程(2024年1月28日更新)
服务器推荐
首先第一步,那就是买服务器了,这里我推荐买搬瓦工的服务器,直接一步到位。当然了,如果你是爱好,那么和我一起买腾讯云或者阿里云的99/年。而且现在《幻兽帕鲁》这么火,还可以买一台和我们的小伙伴们一起玩~~ 腾讯云 阿里云优惠链接 幻兽帕鲁游戏服务器
搬瓦工购买教程
【服务器选购指南】Bandwagonhost(搬瓦工)贵!但这是我的缺点。
阿里云购买教程
腾讯云购买教程
环境配置
连接服务器
安装docker
国内服务器一键脚本
curl -sSL https://get.daocloud.io/docker | sh
docker -v #查看 docker 版本
systemctl enable docker # 设置开机自动启动
国外服务器一键脚本
wget -qO- get.docker.com | bash
docker -v #查看 docker 版本
systemctl enable docker # 设置开机自动启动
安装docker-compose
国内服务器一键脚本
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.1.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version #查看 docker-compose 版本
国外服务器一键脚本
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version #查看 docker-compose 版本
修改 Docker 配置(参考烧饼博客)
以下配置会增加一段自定义内网 IPv6 地址,开启容器的 IPv6 功能,以及限制日志文件大小,防止 Docker 日志塞满硬盘 (泪的教训):
cat > /etc/docker/daemon.json << EOF
{
"log-driver": "json-file",
"log-opts": {
"max-size": "20m",
"max-file": "3"
},
"ipv6": true,
"fixed-cidr-v6": "fd00:dead:beef:c0::/80",
"experimental":true,
"ip6tables":true
}
EOF
然后重启 Docker 服务:
systemctl restart docker
好了,我们已经安装好了 Docker 和 Docker Compose了。
docker-compose安装Bitwarden
首先我们需要获得管理员权限
sudo -i
然后输入你的服务器密码。注意!他是隐式输入,不会显示你输入的任何字符,请不用担心,输入完毕回车就好了。
然后我们创建一个
mkdir -p /dc/bitwarden
cd /dc/bitwarden
vim docker-compose.yml
然后按 i
version: '3.3'
services:
vaultwarden:
container_name: vaultwarden
image: vaultwarden/server:latest
restart: unless-stopped
volumes:
- ./data/:/data/
ports:
- 8080:80
environment:
- DOMAIN=https://subdomain.yourdomain.com # 这是您希望与您的Vaultwarden实例关联的域名。
- LOGIN_RATELIMIT_MAX_BURST=10 # 允许在一阵登录/两步验证尝试中的最大请求次数。
- LOGIN_RATELIMIT_SECONDS=60 # 这是来自同一IP的登录请求之间的平均秒数,在Vaultwarden限制登录次数之前。
- ADMIN_RATELIMIT_MAX_BURST=10 # 这与LOGIN_RATELIMIT_MAX_BURST相同,只争对admin面板。
- ADMIN_RATELIMIT_SECONDS=60 # 这与LOGIN_RATELIMIT_SECONDS相同
- ADMIN_SESSION_LIFETIME=20 # 会话持续时间
- ADMIN_TOKEN=YourReallyStrongAdminTokenHere # 此值是Vaultwarden管理员面板的令牌(一种密码)。为了安全起见,这应该是一个长的随机字符串。如果未设置此值,则管理员面板将被禁用。建议openssl rand -base64 48 生成ADMIN_TOKEN确保安全
- SENDS_ALLOWED=true # 此设置决定是否允许用户创建Bitwarden发送 - 一种凭证共享形式。
- EMERGENCY_ACCESS_ALLOWED=true # 此设置控制用户是否可以启用紧急访问其账户的权限。例如,这样做可以在用户去世后,配偶可以访问密码库以获取账户凭证。可能的值:true / false。
- WEB_VAULT_ENABLED=true # 此设置决定了web网页端是否可访问。一旦您配置了您的账户和客户端,停止您的容器,然后将此值切换为false并重启Vaultwarden,可以用来防止未授权访问。可能的值:true/false。
- SIGNUPS_ALLOWED=true # 此设置控制新用户是否可以在没有邀请的情况下注册账户。可能的值:true / false。
额,这里面这么多,都需要一个一个配置么?当然不需要,作为普通人,我们只需要设置以下选项
DOMAIN
后面设置为你的域名,例如 https://mima.baidu.com
ADMIN_TOKEN
这里可以在服务器终端里输入openssl rand -base64 48
使用它生成ADMIN_TOKEN确保安全,保护您的数据。
SIGNUPS_ALLOWED
true 表示允许网站注册/ false表示不能注册。应该先写true,等你注册完后填写为false,这样别人就无法注册了。
修改好后,按一下esc
,然后输入:wq
要 英文的冒号! 英文的冒号! **英文的冒号!**重要的事情说三遍!!!
开放安全组
如果你是阿里云腾讯云等国内服务器厂商,需要打开安全组,参考 《阿里云教程》 《 腾讯云教程》的后半部分。
那如果你是国外的服务器商,那基本上是没有的。
好了。现在你可以输入你的ip+端口号访问了。咱们之前不是配置了域名么?如果你有域名的话,就需要设置一下反代,设置完成后,就可以直接输入域名就可以访问了。
反向代理
反向代理的前提是你得有一个域名,并成功解析到当前服务器的ip上。《域名购买、解析指南》
NginxProxyManager
我还是比较推荐这个软件来做咱们的软件管理的,方便快捷占用小,而且门槛极低,操作简单,不需要掌握复杂的 Nginx 知识,只需要几步就能轻松配置反向代理和 SSL 证书的部署。
安装指南——NginxProxyManager安装使用及问题
点击 Add Proxy Host
域名:这里不需要填写https://
IP那个就是写我这个,或者你写你docker的ip,ip addr show docker0
,如果你是在别的设备上搭建的,直接写你的服务器ip。
端口号:如果你是按照我文章来的,就是8080,其他的,你写什么就是什么。
打开SSL就按照我这个填写就好了。
老版本归档
二:设置域名绑定
由于Bitwarden需要,你还是绑定一个域名吧,域名可以在阿里云域名购买,腾讯云域名购买购买。也可以在国外服务商godaddy等平台购买。
三:安装宝塔面板国际版
为了方便大家安装,此次我们选择aa-panel面板来安装(宝塔面板国际版,好处就是不用登陆绑定手机号)。(我这里安装特别慢,45min,不想等待而且懒得看英语可以选择安装宝塔面板)
我们用finalshell连接到服务器
最好也是sudo -i 用管理员权限
centos用这个
yum install -y wget && wget -O install.sh http://www.aapanel.com/script/install_6.0_en.sh && bash install.sh aapanel
Ubuntu/Deepin用这个
wget -O install.sh http://www.aapanel.com/script/install-ubuntu_6.0_en.sh && sudo bash install.sh aapanel
Debian用这个
wget -O install.sh http://www.aapanel.com/script/install-ubuntu_6.0_en.sh && bash install.sh aapanel
一路y/yes过去
我这里安装特别慢,45min,接下来就可以看到
接下来输入你的内外网地址,输入账号密码即可
如果提示这个界面,那就左边的,点绿色的,一键安装即可。
三:安装docker
既然咱们为了简便操作安装了宝塔面板,那咱们就直接一步解决。
点击docker
提示没有docker,需要安装。点击即可安装
安装完成后,点击website再点击add site
再然后,按照图片的提示输入域名,选择打开ssl打开强制https(不然等下无法访问)。
四:docker 拉取valutwarden/server
按照步骤,在第三步输入 vaultwarden/server再点击提交(submit)。
拉取完成后,点击container,再点击add container
根据我的设置填充,
Name写名字,image是你刚下载的镜像,port选择端口,第一个空是docker容器的端口,写80,第二个是服务器的,写88,你也可以随意写一个。
再向下,找到memory写到256MB
volume写/www/wwwroot/vm/是你想要把文件放在哪里,后面是容器文件夹,写上/data/
再向后拉,重启规则选择第一个。
出现这个界面就说明搭建完成了。
五:设置网站目录和反代
回到website,点击刚才创建网站的后面conf。
选择site directory,再点击📁文件夹图标,找到刚才docker那里设置的文件目录,再点击后面的save
再按照顺序设置反代。
3处我名字设置短了,会报错。应该长一点
六:添加站点SSL
按照顺序一个一个点开即可。
七:访问站点
创建账户,输入用户名密码即可登录
八:app登陆
bitwarden提供了特别多的客户端,下载地址
但是所有的应用一定要先改此处的设置,将服务器地址设置成你自己的。
九:取消用户注册
参考此段代码。
docker run -d --name bitwardenrs \
--restart unless-stopped \
-e SIGNUPS_ALLOWED=false \
-e WEBSOCKET_ENABLED=true \
-v /bitwardens:/data/ \
-p 52013:80 \
-p 52014:3012 \
vaultwarden/server:latest
结语
好了,以上就是关于如何搭建bitwarden的全部教程了,如果还有疑问或者不清楚的,欢迎再评论区留言,我会详细帮助你们。我们下期再见。
评论区