Zero Trust
Senior Member
Chào các thím,
Bình thường anh em chơi hệ tự quản lý mật khẩu (self-hosted) chắc nhẵn mặt với Vaultwarden rồi nhỉ. Ngon thì ngon thật, nhưng rào cản là các thím phải có một con VPS, cài cắm Docker các kiểu. Bác nào dư dả thì thuê VPS tốn tiền hàng tháng, bác nào chơi hệ "đỗ nghèo khỉ" xài Oracle Free Tier thì cũng nơm nớp lo nó trảm acc lúc nào không hay, chưa kể thỉnh thoảng lại phải hì hục vào update OS, bảo mật lằng nhằng.
Dạo này mình lượn lờ ngó được một kèo cực thơm, đó là NodeWarden - một giải pháp chạy thẳng Bitwarden server trên nền tảng của Cloudflare (Workers, D1, R2).
Nôm na nó là một cái server Bitwarden do bên thứ 3 viết lại, nhưng tương thích 100% với các app Bitwarden chính chủ (trên web, app điện thoại, extension). Nó vứt luôn khái niệm VPS truyền thống, bê toàn bộ lên mây của Cloudflare.
Điểm ăn tiền:
Bước 2: Cắm lên Cloudflare
Bước 4: Kết nối với app Bitwarden
Các bác tải Bitwarden (extension, app điện thoại) về. Đoạn này thay vì chọn các server mặc định của Bitwarden thì giờ mình chọn self-hosted nhé
Sau đó điền link của cái server mình vừa tạo ra với Cloudflare Workers
Sau khi server đã nhận thì điền vào tài khoản và mật khẩu mà các thím đã tạo ở web vừa xong và dùng như Bitwarden thôi
1. Auto Backup :
Bản chất Bitwarden là mã hóa từ client gửi lên (End-to-End Encryption), nên dữ liệu lưu trên server (Cloudflare D1 Database) có bị lộ thì cũng rất khó để giải mã được (miễn là master password của thím mạnh). Tuy nhiên, đề phòng tay nhanh hơn não lỡ xóa nhầm pass, thì cứ auto backup cho chắc:
(Bài viết được tham khảo từ: bibica.net)
--------------------------------
Bình thường anh em chơi hệ tự quản lý mật khẩu (self-hosted) chắc nhẵn mặt với Vaultwarden rồi nhỉ. Ngon thì ngon thật, nhưng rào cản là các thím phải có một con VPS, cài cắm Docker các kiểu. Bác nào dư dả thì thuê VPS tốn tiền hàng tháng, bác nào chơi hệ "đỗ nghèo khỉ" xài Oracle Free Tier thì cũng nơm nớp lo nó trảm acc lúc nào không hay, chưa kể thỉnh thoảng lại phải hì hục vào update OS, bảo mật lằng nhằng.
Dạo này mình lượn lờ ngó được một kèo cực thơm, đó là NodeWarden - một giải pháp chạy thẳng Bitwarden server trên nền tảng của Cloudflare (Workers, D1, R2).
NodeWarden là cái gì?
Nôm na nó là một cái server Bitwarden do bên thứ 3 viết lại, nhưng tương thích 100% với các app Bitwarden chính chủ (trên web, app điện thoại, extension). Nó vứt luôn khái niệm VPS truyền thống, bê toàn bộ lên mây của Cloudflare.Điểm ăn tiền:
- Miễn phí 100%: Bào gói Free của Cloudflare nhòe. Free tier cho 100.000 requests/ngày. Mình dùng có ngày căng lắm hết tầm 3-4k requests thôi

- Không cần quản lý máy chủ: Quên đi cái cảnh bảo trì, quên luôn cấu hình Docker đi. Chạy là chạy mãi.
- Tốc độ bàn thờ: Server chạy trên hạ tầng Edge của CF, dữ liệu được xử lý ở node gần nhất. Thím ngồi đâu truy cập cũng mượt đét gần như không có độ trễ, lag
- Setup tính bằng phút: 2 đến 5 phút click chuột là có đồ dùng rồi.
- Backup ăn sẵn: Tích hợp luôn backup/restore thẳng trên web interface qua S3 hoặc WebDAV.
- Chưa có vụ gửi email thông báo (như mã OTP qua mail hay báo có login lạ).
- Không support 2FA vật lý (kiểu cắm cục YubiKey). Nhưng xài app TOTP bình thường nhé, anh em không phải lo.
🛠 Hướng dẫn cài đặt (Chỉ cần biết click chuột)
Chuẩn bị:- 1 tài khoản Github.
- 1 tài khoản Cloudflare (nhớ đăng ký sẵn R2 Object Storage).
Bước 2: Cắm lên Cloudflare
- Truy cập trang quản lý Cloudflare -> Vào mục Compute > Workers & Pages > Create application
- Chọn Connect to Git / Continue with GitHub.
- Chọn cái kho nodewarden mà thím vừa fork về tài khoản.
- Ấn Deploy. Cứ để mọi cấu hình mặc định, đợi 1 phút cho nó chạy là được.
- Trong trang quản lý cái Worker vừa tạo ở Cloudflare, anh em mò vào Settings -> Variables and Secrets -> Add.
- Type: Chọn Secret.
- Variable name: Điền chính xác chữ JWT_SECRET.
- Value: Lên tool JWT Secret Generator, generate ra 1 chuỗi ngẫu nhiên dài dài dạng HS512 rồi dán vào. Lưu lại là xong! À nhớ backup kĩ cái key đó nhé
Bước 4: Kết nối với app Bitwarden
Các bác tải Bitwarden (extension, app điện thoại) về. Đoạn này thay vì chọn các server mặc định của Bitwarden thì giờ mình chọn self-hosted nhé
Sau đó điền link của cái server mình vừa tạo ra với Cloudflare Workers
Sau khi server đã nhận thì điền vào tài khoản và mật khẩu mà các thím đã tạo ở web vừa xong và dùng như Bitwarden thôi

Mấy trò vọc thêm cho anh em hệ kỹ tính
1. Auto Backup : Bản chất Bitwarden là mã hóa từ client gửi lên (End-to-End Encryption), nên dữ liệu lưu trên server (Cloudflare D1 Database) có bị lộ thì cũng rất khó để giải mã được (miễn là master password của thím mạnh). Tuy nhiên, đề phòng tay nhanh hơn não lỡ xóa nhầm pass, thì cứ auto backup cho chắc:
- Vào Storage & Database > R2 Object Storage > Overview > Create bucket > Đặt một cái Bucket name ví dụ là "backup" xong ấn Create nhé
- Tạo xong các bác quay lại mục Overview. Kéo xuống đoạn Account Details xong ấn Manage > Create User API Token > Token name điền backup hay gì đó > Permissions chọn Object Read & Write > Specify bucket chọn Apply to specific buckets only rồi Select cái mục backup các thím vừa tạo > rồi ấn Create User API Token
- Sau khi tạo xong API token các thím vào lại web NodeWarden. Vào mục Cloud Backup > Add Destination > S3. Chú ý phần S3 Endpoint thì các bác lấy link trong đoạn "Use jurisdiction-specific endpoints for S3 clients" điền vào. Bucket thì điền đúng tên bucket đã tạo lúc đầu ở R2 Storage. Access Key và Secret Key lấy ở trang API Token trên điền vô rồi ấn Save Settings là xong

(Bài viết được tham khảo từ: bibica.net)
--------------------------------
Sửa lần cuối: