自架Bitwarden全記錄

更新於 2023/02/05閱讀時間約 5 分鐘

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

在〈一個密碼安全打天下-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套件即可。
安裝好docker套件後,即可開始佈建Bitwarden。網路上有些教學會先佈建Portainer,但DSM的docker套件已經有提供視覺化介面,Portainer只是方便管理docker而不是必須,是否佈建Portainer讀者可自行評估。
而我選擇直接按照以下教學直接佈建Bitwarden。

佈建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服務(No-IP),因此我僅是將服務移轉至NAS管理(負責更新ip位置),未來打上此網址,就會連結到位在NAS中的Bitwarden docker。

申請TLS憑證 (Let's Encrypt)

由於Bitwarden預設需要有TLS憑證(也就是常見的https)才能登入,因此還需要幫剛剛申請的domain name申請一個憑證。Synology亦有提供教學頁面,讀者按步驟申請Let's Encrypt憑證即可。
若讀者家中的NAS是安裝在路由器後面的話,在申請前必須將80 port指向NAS,憑證才能順利申請。以我所使用的TP-Link路由器為例,可進到「進階-NAT導向-虛擬伺服器」頁籤,將外部80 port指向NAS的80 port。

設定reverse proxy

最後一步則是需要設定reverse proxy,好讓NAS知道剛剛申請的DDNS網址代表要前往Bitwarden docker。
設定的方式也很簡單,一樣依照Synology的教學步驟設定即可。
必須注意的是,目的地欄位為求便利,我直接填上localhost,也就是NAS本機的意思,但仍建議讀者直接填上NAS的ip位置。否則讀者根據前面的教學文設定Bitwarden的SMTP發信功能時,會發現外寄信件中的邀請網址也直接顯示localhost而造成連線不正常。

安裝Bitwarden App

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

結語

透過NAS架設可以大幅降低申請DDNS、TLS憑證和設定reverse proxy的難度,且NAS的原始設計就是長時間不間斷地開機運行,Vaultwarden也不太耗用NAS的資源,我認為是現階段自架Bitwarden的最佳方案。
avatar-img
38會員
52內容數
正在就讀法律系的你,一定耳聞過司律考試,甚至已經下場考過。我有幸從考海中上岸,希望透過我的經驗,幫助正在迷惘、焦急、或是洩氣的你/妳。專題內容包含是否要參加考試、如何準備考試、面授與函授的優缺點比較等等,幫助你/妳找到最適合自己的解方。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
GYB的沙龍 的其他內容
Bitwarden是現階段值得推薦的一款密碼管理軟體,可以避免「一個密碼打天下」的危險狀態。若選擇自架Bitwarden伺服器則可免費獲得付費訂閱版本的功能全部功能,對於有一點技術能力的人來說,是個經濟實惠的選擇。
Bitwarden是現階段值得推薦的一款密碼管理軟體,可以避免「一個密碼打天下」的危險狀態。若選擇自架Bitwarden伺服器則可免費獲得付費訂閱版本的功能全部功能,對於有一點技術能力的人來說,是個經濟實惠的選擇。
你可能也想看
Google News 追蹤
Thumbnail
徵的就是你 🫵 超ㄅㄧㄤˋ 獎品搭配超瞎趴的四大主題,等你踹共啦!還有機會獲得經典的「偉士牌樂高」喔!馬上來參加本次的活動吧!
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
在過去十幾年的工作中,我曾透過電腦和伺服器架構出自己的工作資料站,也長時間使用NAS來管理數據。這其中經歷的種種故事與轉折,日後再慢慢道來。 今天想分享的是這幾年我穩定地使用NAS作為家庭資料中心,並提供對外的網頁服務,讓我不必為了防止資料遺失或整理資料而耗費過多的空閒時間。 我使用的是一台Sy
了解去中心化存储网络技术的原理和应用,探索其在加密货币市场中的重要性和潜力。 引言 在当前加密货币市场中,去中心化存储网络技术(DecentralizedStorageNetwork,DSN)正逐渐成为热门话题。DSN技术可以提供安全、可靠和高效的数据存储解决方案,满足加密货币交易所、钱包和应用
Thumbnail
挖掘Storj币需要选择硬盘搭载平台,主要有两种方式:购买NAS网络存储服务器或自己组装主板等硬件。前者方便稳定但成本高,后者物美价廉但组装复杂,需要了解电脑组装流程。 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 💰 注册即享 20% 手续费返佣 🔑 专属邀请码: R85
Thumbnail
挖掘Storj币需要选择硬盘搭载平台,主要有两种方式:购买NAS网络存储服务器或自己组装主板等硬件。前者方便稳定但成本高,后者物美价廉但组装复杂,需要了解电脑组装流程。 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 💰 注册即享 20% 手续费返佣 🔑 专属邀请码: R85
Thumbnail
玩完PVE到搭個NAS,今次用OpenMediaVault。 又係Debian base,太懶,係咁禁Next,一大隻Partition過,結果中晒伏。 Storage/File Systems 搵唔到 / 個file system,Google左輪,搵唔到。試下搞下fstab,除左會開
大家架站最在意什麼事情呢?最近深陷於建立自己的部落格的水深火熱當中。我想和大家分享一下我對於架站的一些雜談心得。 首先,讓我們來談談SSL。對於架站的初學者來說,SSL可能會聽起來有點高大上,但其實它是非常重要的一個東西。SSL(安全套接層)能夠保護你的網站和訪問者之間的數據傳輸安全,讓你的網
Thumbnail
工作上需要使用到LDAP,但因為公司提供的Server不便,因此在本機建立LDAP伺服器和使用者是一個解決方案。本文記錄了安裝ApacheDS和Apache Directory Studio,以及建立連線、使用者和組織的步驟。
Thumbnail
本文將探討Kubernetes內部DNS解析的相關流程,並介紹如何利用DNS來找到服務。透過瞭解DNS的工作原理,可以讓應用服務的問題處理更有效率,並提供基本測試與結論。
AWS Nitro Enclaves 是一項新的 EC2 功能,使客戶能夠創建隔離的計算環境 (Enclaves) 來進一步保護和安全地處理高度敏感的數據,例如其 Amazon EC2 實例中的個人身份信息 (PII)、醫療保健
Thumbnail
本篇,以我的個人的經驗! 個人的經驗! 個人的經驗!,簡單說明一下組織中機房管理遇到的一些事情(這方面我非專業,請參考看看),做點經驗分享。 雖然,本文是用「機房」這個概念作為重點來闡述,但是,請注意,若您的單位(辦公室)中,也是有主機伺服器的(就是【資產種類】欄位寫 電腦應用程式 ),您也應該要
Thumbnail
徵的就是你 🫵 超ㄅㄧㄤˋ 獎品搭配超瞎趴的四大主題,等你踹共啦!還有機會獲得經典的「偉士牌樂高」喔!馬上來參加本次的活動吧!
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
在過去十幾年的工作中,我曾透過電腦和伺服器架構出自己的工作資料站,也長時間使用NAS來管理數據。這其中經歷的種種故事與轉折,日後再慢慢道來。 今天想分享的是這幾年我穩定地使用NAS作為家庭資料中心,並提供對外的網頁服務,讓我不必為了防止資料遺失或整理資料而耗費過多的空閒時間。 我使用的是一台Sy
了解去中心化存储网络技术的原理和应用,探索其在加密货币市场中的重要性和潜力。 引言 在当前加密货币市场中,去中心化存储网络技术(DecentralizedStorageNetwork,DSN)正逐渐成为热门话题。DSN技术可以提供安全、可靠和高效的数据存储解决方案,满足加密货币交易所、钱包和应用
Thumbnail
挖掘Storj币需要选择硬盘搭载平台,主要有两种方式:购买NAS网络存储服务器或自己组装主板等硬件。前者方便稳定但成本高,后者物美价廉但组装复杂,需要了解电脑组装流程。 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 💰 注册即享 20% 手续费返佣 🔑 专属邀请码: R85
Thumbnail
挖掘Storj币需要选择硬盘搭载平台,主要有两种方式:购买NAS网络存储服务器或自己组装主板等硬件。前者方便稳定但成本高,后者物美价廉但组装复杂,需要了解电脑组装流程。 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 💰 注册即享 20% 手续费返佣 🔑 专属邀请码: R85
Thumbnail
玩完PVE到搭個NAS,今次用OpenMediaVault。 又係Debian base,太懶,係咁禁Next,一大隻Partition過,結果中晒伏。 Storage/File Systems 搵唔到 / 個file system,Google左輪,搵唔到。試下搞下fstab,除左會開
大家架站最在意什麼事情呢?最近深陷於建立自己的部落格的水深火熱當中。我想和大家分享一下我對於架站的一些雜談心得。 首先,讓我們來談談SSL。對於架站的初學者來說,SSL可能會聽起來有點高大上,但其實它是非常重要的一個東西。SSL(安全套接層)能夠保護你的網站和訪問者之間的數據傳輸安全,讓你的網
Thumbnail
工作上需要使用到LDAP,但因為公司提供的Server不便,因此在本機建立LDAP伺服器和使用者是一個解決方案。本文記錄了安裝ApacheDS和Apache Directory Studio,以及建立連線、使用者和組織的步驟。
Thumbnail
本文將探討Kubernetes內部DNS解析的相關流程,並介紹如何利用DNS來找到服務。透過瞭解DNS的工作原理,可以讓應用服務的問題處理更有效率,並提供基本測試與結論。
AWS Nitro Enclaves 是一項新的 EC2 功能,使客戶能夠創建隔離的計算環境 (Enclaves) 來進一步保護和安全地處理高度敏感的數據,例如其 Amazon EC2 實例中的個人身份信息 (PII)、醫療保健
Thumbnail
本篇,以我的個人的經驗! 個人的經驗! 個人的經驗!,簡單說明一下組織中機房管理遇到的一些事情(這方面我非專業,請參考看看),做點經驗分享。 雖然,本文是用「機房」這個概念作為重點來闡述,但是,請注意,若您的單位(辦公室)中,也是有主機伺服器的(就是【資產種類】欄位寫 電腦應用程式 ),您也應該要