自架Bitwarden全記錄

更新於 發佈於 閱讀時間約 6 分鐘

第一版:架設於私人伺服器

在〈一個密碼安全打天下-Bitwarden〉一文中提到,我決定自架Bitwarden。

一開始我將Bitwarden架設在我私人的伺服器上(實際上是一台10年前的舊桌機),除了要在Docker上佈建Bitwarden外,為了讓手機app能在區域網路外順利使用,還必須搭建Nginx以運行反向代理伺服器(reverse proxy)。此外,因為我的私人伺服器設在家中,而我家並沒有申請固定ip,因此必須另外申請DDNS服務以及替domain申請TLS憑證(Let's Encrypt),過程中吃了不少苦頭。

雖然最終我仍然成功搭建並運作順暢,但最近老桌機的風扇和硬碟開始不靈光,隨時有可能壽終正寢,為了降低維護伺服器的麻煩,我決定將Bitwarden移置到NAS上。

第二版:架設於NAS上

我有一台2020年所購置的Synology DS220+的NAS機器,根據Synology的官方說明,運行幾個Docker應該不成問題。

此外,由於Synology NAS所搭載的OS系統為基於Linux所客製的DSM,本身就有內建reverse proxy、DDNS和自動申請TLS憑證的功能,大幅降低佈建難度,基本上只需要在NAS上安裝Docker套件、部署Bitwarden的image、調整NAS的外部連線設定即可。

整體架設邏輯圖

整體架設邏輯圖

搭建流程

由於DSM系統為圖像化的操作介面,因此安裝docker套件非常容易,只需在套件中心選擇安裝docker套件即可。

raw-image

安裝好docker套件後,即可開始佈建Bitwarden。網路上有些教學會先佈建Portainer,但DSM的docker套件已經有提供視覺化介面,Portainer只是方便管理docker而不是必須,是否佈建Portainer讀者可自行評估。

而我選擇直接按照以下教學直接佈建Bitwarden。

Vaultwarden (Bitwarden) in Docker on a Synology NAS

佈建Bitwarden

可能有讀者會疑惑教學文章中所佈建的是「Vaultwarden」而非Bitwarden。Vaultwarden也是開源軟體,是以Bitwarden為原型、用Rust語言重新改寫的版本,比原始的Bitwarden更加輕量化,但部分功能被捨棄(如SSO單點登入功能)。由於我並沒有多人同時使用或企業使用的需求,因此選擇輕量化的版本即可,也可節省NAS的資源耗用。

如果讀者未來有使用完整Bitwarden的需求,還是可以使用原始的Bitwarden的image,但NAS可能無法承受過大的使用需求,建議還是搭建於效能更強的伺服器上。

申請DDNS

前面提到,由於我的私人伺服器和NAS都是放置在家中,用的是中華電信的光世代網路,預設不會有固定的對外ip(浮動ip),因此若要從外網連入就必須借助DDNS的服務,讓我只需要在app上打上網址(domain name),而無需去記憶或查詢我家的ip位置。

關於如何申請DDNS,Synology官網上就有詳細的教學,讀者如果對此部分不熟悉,不妨採用Synology所提供的免費服務,只需在DSM的頁面上操作,即可獲得一組以「.synology.me」結尾的網址。

DDNS | DSM - Synology 知識中心

由於我的私人伺服器先前就有申請過其他服務提供商的DDNS服務(No-IP),因此我僅是將服務移轉至NAS管理(負責更新ip位置),未來打上此網址,就會連結到位在NAS中的Bitwarden docker。

raw-image

申請TLS憑證 (Let's Encrypt)

由於Bitwarden預設需要有TLS憑證(也就是常見的https)才能登入,因此還需要幫剛剛申請的domain name申請一個憑證。Synology亦有提供教學頁面,讀者按步驟申請Let's Encrypt憑證即可。

憑證 | DSM - Synology 知識中心

raw-image

若讀者家中的NAS是安裝在路由器後面的話,在申請前必須將80 port指向NAS,憑證才能順利申請。以我所使用的TP-Link路由器為例,可進到「進階-NAT導向-虛擬伺服器」頁籤,將外部80 port指向NAS的80 port。

raw-image

設定reverse proxy

最後一步則是需要設定reverse proxy,好讓NAS知道剛剛申請的DDNS網址代表要前往Bitwarden docker。

設定的方式也很簡單,一樣依照Synology的教學步驟設定即可。

進階 | DSM - Synology 知識中心

raw-image

必須注意的是,目的地欄位為求便利,我直接填上localhost,也就是NAS本機的意思,但仍建議讀者直接填上NAS的ip位置。否則讀者根據前面的教學文設定Bitwarden的SMTP發信功能時,會發現外寄信件中的邀請網址也直接顯示localhost而造成連線不正常。

安裝Bitwarden App

Bitwarden支援目前所有作業系統及手機平台,只需要在官網或手機app商店即可找到免費的瀏覽器外掛或app。登入時於右上角齒輪圖示中輸入先前申請的DDNS網址後,再輸入帳號密碼即可。登入後也可再設定使用生物辨識功能登入。

Android版

Android版


iOS版

iOS版


























結語

透過NAS架設可以大幅降低申請DDNS、TLS憑證和設定reverse proxy的難度,且NAS的原始設計就是長時間不間斷地開機運行,Vaultwarden也不太耗用NAS的資源,我認為是現階段自架Bitwarden的最佳方案。

留言
avatar-img
留言分享你的想法!
boss-avatar-img
2025/04/24
https://www.goodreads.com/quotes/12771000-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771013-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771023-what-is-the-cheapest-day-to-fly-with-delta-for https://www.goodreads.com/quotes/12771035-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771041-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771045-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771051-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771067-what-is-the-cheapest-day-to-fly-with-delta-the
boss-avatar-img
2025/04/24
https://www.goodreads.com/quotes/12771000-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771013-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771023-what-is-the-cheapest-day-to-fly-with-delta-for https://www.goodreads.com/quotes/12771035-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771041-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771045-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771051-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771067-what-is-the-cheapest-day-to-fly-with-delta-the
boss-avatar-img
2025/04/24
https://www.goodreads.com/quotes/12771000-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771013-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771023-what-is-the-cheapest-day-to-fly-with-delta-for https://www.goodreads.com/quotes/12771035-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771041-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771045-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771051-what-is-the-cheapest-day-to-fly-with-delta-the https://www.goodreads.com/quotes/12771067-what-is-the-cheapest-day-to-fly-with-delta-the
avatar-img
GYB的沙龍
40會員
52內容數
正在就讀法律系的你,一定耳聞過司律考試,甚至已經下場考過。我有幸從考海中上岸,希望透過我的經驗,幫助正在迷惘、焦急、或是洩氣的你/妳。專題內容包含是否要參加考試、如何準備考試、面授與函授的優缺點比較等等,幫助你/妳找到最適合自己的解方。
GYB的沙龍的其他內容
2023/09/14
透過Google Authenticator轉移帳戶的功能,可以一次性提取所有TOTP密鑰,加快整合TOTP到Bitwarden的過程。整合完成後,不論是輸入帳號密碼或是輸入TOTP認證碼,都只需要Bitwarden即可搞定,在安全性和方便性取得平衡。在方便性和安全性之間取得平衡,是資安永遠的課題。
Thumbnail
2023/09/14
透過Google Authenticator轉移帳戶的功能,可以一次性提取所有TOTP密鑰,加快整合TOTP到Bitwarden的過程。整合完成後,不論是輸入帳號密碼或是輸入TOTP認證碼,都只需要Bitwarden即可搞定,在安全性和方便性取得平衡。在方便性和安全性之間取得平衡,是資安永遠的課題。
Thumbnail
2023/09/04
除了電腦與網路技術方面的人才,完整的資安架構還必須包含資安法遵師。我甚至認為,多數企業對於資安法遵的需求,高於資安技術。企業面對資安威脅,必須採取風險控管的角度,將實際的防禦技術工作外包給專門的資安公司進行,企業內部僅需評估與控制風險。而控制風險正是法遵的核心職能。期待法律人才能一同為資安盡一份力。
Thumbnail
2023/09/04
除了電腦與網路技術方面的人才,完整的資安架構還必須包含資安法遵師。我甚至認為,多數企業對於資安法遵的需求,高於資安技術。企業面對資安威脅,必須採取風險控管的角度,將實際的防禦技術工作外包給專門的資安公司進行,企業內部僅需評估與控制風險。而控制風險正是法遵的核心職能。期待法律人才能一同為資安盡一份力。
Thumbnail
2023/03/17
隱私是甚麼?很遺憾的,「隱私」在國內外的法律界,始終沒有一個統一的範圍-甚麼是隱私、甚麼不是隱私。資訊隱私學者Helen Nissenbaum教授在其著作中提出脈絡完整性理論,但仍沒有提出更放諸四海皆準的標準。或許在未來,我們可以運用機器學習去訓練一個隱私的模型,嘗試為「沒有標準」建立科學模型。
Thumbnail
2023/03/17
隱私是甚麼?很遺憾的,「隱私」在國內外的法律界,始終沒有一個統一的範圍-甚麼是隱私、甚麼不是隱私。資訊隱私學者Helen Nissenbaum教授在其著作中提出脈絡完整性理論,但仍沒有提出更放諸四海皆準的標準。或許在未來,我們可以運用機器學習去訓練一個隱私的模型,嘗試為「沒有標準」建立科學模型。
Thumbnail
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
要在家中或辨公室中自建伺服器都已經不是一種新鮮事,反而更是每一個單位的必備組合。畢竟隨著時間,用家的文件檔案都會只是有增無減。電影和音樂雖然有不同的串流平台,但始終有很多個人的備份檔案也需要儲存,再者如果你同樣是音響/ 攝影發燒的朋友,也必定有很多不同大小的未壓縮的檔案,這時一部Network-At
Thumbnail
要在家中或辨公室中自建伺服器都已經不是一種新鮮事,反而更是每一個單位的必備組合。畢竟隨著時間,用家的文件檔案都會只是有增無減。電影和音樂雖然有不同的串流平台,但始終有很多個人的備份檔案也需要儲存,再者如果你同樣是音響/ 攝影發燒的朋友,也必定有很多不同大小的未壓縮的檔案,這時一部Network-At
Thumbnail
因為想要使用FQDN的方式連接到Kubernetes cluster內部的應用服務,加上早已使用Linux Bind為測試環境的主要DNS
Thumbnail
因為想要使用FQDN的方式連接到Kubernetes cluster內部的應用服務,加上早已使用Linux Bind為測試環境的主要DNS
Thumbnail
在 Docker 上自建 GitLab Server 是一種方便且有效的方式來託管和管理您的程式碼。使用 Docker,您可以快速建立一個 GitLab 伺服器並且輕鬆進行配置和擴展。
Thumbnail
在 Docker 上自建 GitLab Server 是一種方便且有效的方式來託管和管理您的程式碼。使用 Docker,您可以快速建立一個 GitLab 伺服器並且輕鬆進行配置和擴展。
Thumbnail
先說,我並非專業人士~ 只是分享建立的過程與經驗,不要問我問題~ 我可能、應該無法解答,哈哈哈。 另,這只是一份 草稿? 操作簡述~ 容我不很詳細的抓畫面了! 我之後 "應該" 會拍影片說明整個過程,真的有拍的話,再補上影片網址。
Thumbnail
先說,我並非專業人士~ 只是分享建立的過程與經驗,不要問我問題~ 我可能、應該無法解答,哈哈哈。 另,這只是一份 草稿? 操作簡述~ 容我不很詳細的抓畫面了! 我之後 "應該" 會拍影片說明整個過程,真的有拍的話,再補上影片網址。
Thumbnail
使用者想操作市面上的路由器,能操作的功能都受限於裝置提供商的限制;但若將路由器刷成類似於Linux的OpenWRT文件系統,不但可解決此問題,還有多達1000以上的功能安裝包可供使用者選擇,非常便於使用者開發。 將路由器韌體刷成OpenWRT系統,其實就是在路由器上安裝OpenWRT的概念,常見的方
Thumbnail
使用者想操作市面上的路由器,能操作的功能都受限於裝置提供商的限制;但若將路由器刷成類似於Linux的OpenWRT文件系統,不但可解決此問題,還有多達1000以上的功能安裝包可供使用者選擇,非常便於使用者開發。 將路由器韌體刷成OpenWRT系統,其實就是在路由器上安裝OpenWRT的概念,常見的方
Thumbnail
一開始我將Bitwarden架設在我私人的伺服器上,過程中吃了不少苦頭。後來架設於NAS上,大幅降低佈建難度。且NAS的原始設計就是長時間不間斷地開機運行,我認為是現階段自架Bitwarden的最佳方案。
Thumbnail
一開始我將Bitwarden架設在我私人的伺服器上,過程中吃了不少苦頭。後來架設於NAS上,大幅降低佈建難度。且NAS的原始設計就是長時間不間斷地開機運行,我認為是現階段自架Bitwarden的最佳方案。
Thumbnail
打包網頁 在部署網站之前,我們要先來打包我們的網頁前端專案 為什麼要打包呢?什麼是打包呢?這有點像是編譯,如果你寫過 C 應該講到這裡就理解為什麼要這樣做了 在網頁開發中網頁內容最原始就是直接用 html 下去寫,但一個成熟的開發者會善用框架來開發,不論是用 vue 或 react,樣式的部分也會從
Thumbnail
打包網頁 在部署網站之前,我們要先來打包我們的網頁前端專案 為什麼要打包呢?什麼是打包呢?這有點像是編譯,如果你寫過 C 應該講到這裡就理解為什麼要這樣做了 在網頁開發中網頁內容最原始就是直接用 html 下去寫,但一個成熟的開發者會善用框架來開發,不論是用 vue 或 react,樣式的部分也會從
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News