前言:#
管理管理器是個非常好用的東西,可以幫我們輕易記住各個網站的使用者名稱和複雜無規律的密碼等,還能在建立使用者時生成安全的密碼。之前我一直依賴 Chrome 自帶的密碼管理器,非常好用,可以自動同步網站加載填充密碼、生成密碼等最基礎的功能。
但是後來我發現,手上註冊了好幾個 Google 帳號,不同的帳號用於不同的事情,密碼不同步,需要取一個密碼的時候很麻煩,自建一個 Bitwarden 的想法很久之前就有了,但是一直懶得實現,並且官方推薦 4G 內存伺服器,最低也是 2G 伺服器,手頭也沒有閒置的伺服器。
於是我用了幾個月的 1Password,幾美金一個月,軟體的 UI 界面也是非常好看,但是每個月花幾十塊錢去託管我的密碼,我還是有一點心疼的,好在最近我手欠又購買了一台年付的 4H4G 伺服器,購買完就後悔又不能退款,於是自建 Bitwarden 就誕生了。
先說兩款產品對我的差異,1Password 好看,UI 給人很舒服,密碼管理器功能都有,唯一密碼填充並沒有讓我感覺到比 Chrome 原生的舒服,Bitwarden 的 UI 一般,也是網頁加載的密碼填充問題,可能兩款軟體使用時間比較少,磨合還不到位。
安裝教程:#
直接採納官方的 Linux 標準部署:https://bitwarden.com/help/install-on-premise-linux/
首先準備一個域名解析到伺服器,然後一台最低 2G 內存的伺服器,4G 最優,並且伺服器純淨環境。
安裝 Docker 和 Docker-Compose:Docker 一鍵安裝腳本
1. 創建 bitwarden 使用者:
sudo adduser bitwarden
2. 為 bitwarden 使用者設置密碼(強密碼):
sudo passwd bitwarden
3. 創建一個 docker 組(如果它尚不存在):
sudo groupadd docker
4. 將 bitwarden 使用者添加到 docker 組:
sudo usermod -aG docker bitwarden
5. 創建 bitwarden 目錄:
sudo mkdir /opt/bitwarden
6. 設置 /opt/bitwarden 目錄的權限:
sudo chmod -R 700 /opt/bitwarden
7. 將 bitwarden 使用者設置為 /opt/bitwarden 目錄的所有者:
sudo chown -R bitwarden:bitwarden /opt/bitwarden
Bitwarden 提供了一個 shell 腳本,可在 Linux 和 Windows(PowerShell)上輕鬆安裝。完成以下步驟即可使用 shell 腳本安裝 Bitwarden:
su bitwarden #先切換使用者 再執行下面的腳本
curl -Lso bitwarden.sh "https://func.bitwarden.com/api/dl/?app=self-host&platform=linux" && chmod 700 bitwarden.sh
./bitwarden.sh install
輸入你的域名:
[bitwarden@vultr ~]$ ./bitwarden.sh install
_ _ _ _
| |__ (_) |___ ____ _ _ __ __| | ___ _ __
| '_ \| | __\ \ /\ / / _` | '__/ _` |/ _ \ '_ \
| |_) | | |_ \ V V / (_| | | | (_| | __/ | | |
|_.__/|_|\__| \_/\_/ \__,_|_| \__,_|\___|_| |_|
Open source password management solutions
Copyright 2015-2024, 8bit Solutions LLC
https://bitwarden.com, https://github.com/bitwarden
===================================================
bitwarden.sh version 2024.6.1
Docker version 26.1.4, build 5650f9b
docker-compose version 1.29.2, build 5becea4c
(!) 輸入你的Bitwarden實例的域名(例如bitwarden.example.com):
是否開啟 SSL:
(!) 是否要使用Let's Encrypt生成免費的SSL憑證?(y/n):
輸入一個申請憑證的郵箱:
輸入你的郵箱地址(Let's Encrypt將向您發送憑證到期提醒)
等待十幾秒申請憑證,然後出現下面的內容(輸入資料庫名):
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
如果你喜歡Certbot,請考慮通過以下方式支持我們的工作:
* 捐贈給ISRG / Let's Encrypt:https://letsencrypt.org/donate
* 捐贈給EFF:https://eff.org/donate-le
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(!) 輸入你的Bitwarden實例的資料庫名(例如vault):
安裝 ID 和 KEY 去https://bitwarden.com/host/獲取:
(!) 輸入你的安裝ID(在https://bitwarden.com/host獲取):
(!) 輸入你的安裝KEY:
(!) 輸入你的區域(US/EU)[US]:
完成這些操作你會發現螢幕還是出現一些點,等待十幾秒就部署一半了,我們的整體檔案在:/home/bitwarden/bwdata
我們也可以修改/home/bitwarden/bwdata/env/global.override.env
檔案,具體一些內容什麼意思大家可以看:https://bitwarden.com/help/install-on-premise-manual/ 如果你想要後台功能,可以在這個檔案配置發信郵箱。
後台就是域名 + admin,登錄需要輸入管理員郵箱,應該就是申請 ID 和 KEY 輸入的郵箱,然後收一封郵件才能登錄,後台功能貌似只有一些查看使用者、管理使用者的功能,看不到使用者的一些密碼。我沒有配置發信郵箱,所以我也不是很清楚有那些功能。
如果你不懂這個檔案,可以不動它,然後執行:./bitwarden.sh start
,等待鏡像拉取完成就能訪問你的域名了,創建帳號登錄帳號然後導入密碼,並且在瀏覽器或者設備上安裝好 Bitwarden,登錄的時候選擇自托管就行了。
Bitwarden 會自己每天備份資料庫,主體檔案都在/home/bitwarden/bwdata
,大家備份這個目錄就可以了。
然後備份檔案怎麼恢復啥的目前我還沒有實踐過,大家可以去看官方的文件去操作。