文章目錄
1 Bitwarden 是什麼
能看到這篇文章的,通常已經知道 Bitwarden 是什麼了。
簡單講,Bitwarden 是一個密碼管理軟件,主要功能包括:
- 能夠生成複雜的密碼,避免你在註冊的時候使用相同的、簡單的密碼
- 記錄你的賬號、密碼,並支持雲同步,這些數據和通信都是經過加密的
- 在 iOS、Android、PC 瀏覽器中進行集成,方便你快捷登錄,而不用擔心忘記密碼
- 支持加密筆記,保存你的信用卡等私密信息
更多信息可以通過 Bitwarden 官網 來了解
簡單來講就是 1Password 的競品。而 1Password 服務需要付費,而 Bitwarden 是免費的(提供增值服務),同時還是開源的。
如果你不想使用 Bitwarden 的雲服務,也可以自建服務器。
2 Bitwarden 的服務端程序安裝準備
2.1 有自己的 VPS 或者家裏有一個主機 / NAS
顯然這是必要的
2.2 準備一個域名和一個 SSL 證書
騰訊雲、阿里雲等都有提供非常便宜的域名購買,而且會贈送 SSL 證書(需要申請);
當然也有 noip 等提供免費域名服務,但是這些域名通常需要定期確認,所以還是比較麻煩的。
2.3 安裝 docker 和 docker-compose
Bitwarden 服務端是通過 docker-compose 的方式提供的,官網有具體的安裝教程,如果你還沒安裝,可以參考
- docker 安裝,Mac 和 Windows 可以安裝 docker app,Linux 需要參考各個系統的說明
- docker-compose 安裝,這個文檔相對比較簡單
1.4 有一個不錯的網(ti)絡(zi)
很多服務需要下載,並且沒有鏡像服務器,所以你需要有一個不錯的網絡,能夠設置命令行的 proxy。
3 Bitwarden 服務的安裝
Bitwarden 提供了一個腳本來進行相關的管理。整個過程其實封裝地非常簡單
# 強烈建議爲 bitwarden 的腳本創建一個文件夾
mkdir bitwarden
curl -Lso bitwarden.sh https://go.btwrdn.co/bw-sh
sudo chmod +x bitwarden.sh
# 查看幫助
./bitwarden.sh help
# 進行安裝,主要是 docker 相關分支的下載
./bitwarden.sh install
# 安裝過程中會需要填寫域名、證書等相關信息,填錯了也不要緊,安裝完成後依然可以修改這些配置
# 安裝完成後,會在當前目錄下生成一個 bwdata 目錄,相關文件均會放在文件夾中
4 服務配置
我們需要把 SSL 的證書放到 bwdata/ssl
文件夾下。例如我的證書和密鑰分別放在 bwdata/ssl/etc/ssl/ca_bundle.crt
和 bwdata/ssl/etc/ssl/private.key
我們可以查看 bitwarden 的具體配置
cd bwdata
vi config.yml
裏邊配置項最主要需要確認的包括
# 配置外部訪問的 URL
url: https://www.abc.com
# 配置 http 端口,如果爲空,則 http 端口關閉
http_port: 80
# 配置 https 端口,外部可以通過這個地址進行訪問
https_port: 8080
# 設置 ssl 證書的路徑,附在 ./ssl 路徑後
# 這個證書需要是 key 和 certificate 的 bundle
ssl_certificate_path: /etc/ssl/ca_bundle.crt
# 最終生成的地址會是 ./ssl/etc/ssl/ca_bundle.crt
# 設置 ssl key 的文件路徑,附在 ./ssl 路徑後
ssl_key_path: /etc/ssl/private.key
# 最終生成的地址會是 ./ssl/etc/ssl/private.key
除此外還需要配置一個 identity.pfx 證書,請進入你的證書和密鑰所在的目錄
openssl pkcs12 -export -out identity.pfx -inkey 密鑰文件 -in 證書文件
生成過程中會讓你輸入一個密碼,請打開 bwdata/env/global.override.env
文件,找到 globalSettings__identityServer__certificatePassword
選項,並把這一項的值改爲這個密碼
最請把剛剛生成的 identity.pfx
文件放到 bwdata/identity
文件夾下
至此,完整的配置完成,但是你需要重新構建一個 docker-compose 相關的文件
# 請先返回 bitwarden.sh 所在的目錄
./bitwarden.sh rebuild
5 調試與使用
# 運行 bitwarden
./bitwarden.sh start
# 查看相關鏡像的狀態,包括端口映射的情況
docker ps
# 如果發現問題,可以查看日誌
cd bwdata/logs
# 你的問題可能主要集中在 nginx 中,那麼可以
cd nginx
tail error.log
# 通常是你的證書有問題,例如
## 你的證書文件不是 key 和 certificate 的 bundle,那就仔細看下證書文件
## 你當前的用戶沒有文件的讀寫權限,那麼請 chmod 或 chown
## 你的文件沒放到正確的目錄下,請檢查你的文件目錄
至此,安裝和調試完成,你可以嘗試通過 https://網址:端口 來進行訪問,並註冊一個賬號。
6 客戶端的使用
這裏只談如何切換服務器。
在各個端的登錄頁面,都能明顯看見一個齒輪圖標,可以在這裏對使用的服務器進行設置。