
NodeWarden là gì?
NodeWarden là một 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). Không cần dùng tới VPS truyền thống, dự án bê toàn bộ lên đám mây của Cloudflare
Ưu điểm:
Miễn phí 100%: Gói Free của Cloudflare cho 100.000 requests/ngày. Dùng cá nhân, thậm chí rủ thêm vài người dùng cùng thì cũng không thể nào dùng hết
Không cần quản lý máy chủ: Không cần phải vào bảo trì, không cần cấu hình Docker. Chạy là chạy mãi.
Tốc độ bàn thờ: Server chạy trên hạ tầng Edge của Cloudflare, dữ liệu được xử lý ở node gần nhất. Bạn 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: 5 phút ngồi click chuột là có password manager dùng rồi.
Backup tự động: Tích hợp luôn backup/restore thẳng trên web interface qua S3 hoặc WebDAV.
Nhược điểm :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
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 1: Lấy code về nhà : Vào Github, fork repo này về tài khoản của bạn: shuaiplus/nodewarden
Bước 2: Đưa 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 repo nodewarden mà bạn 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.
Bước 3: Tạo chìa khóa bảo mật (JWT_SECRET)
- Trong trang quản lý Worker vừa tạo ở Cloudflare, bạn 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ạng HS512 rồi dán vào. Lưu lại là xong! À nhớ backup kĩ cái key đó nhé
Đến đây là đã hoàn tất. Các bạn vào web đã được tạo ra dạng abc.workers.dev, tạo tài khoản đầu tiên (tài khoản này auto thành Admin)
Bước 4: Kết nối với app Bitwarden
Bạn 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ờ chọn self-hosted
Sau đó điền link của server vừa tạo ra với Cloudflare Workers (htts://abc.workers.dev)
Sau khi server đã nhận thì điền vào tài khoản và mật khẩu mà bạn đã tạo ở web vừa xong và dùng như Bitwarden bình thường
Bước 5: Thiết lập tự động sao lưu
- 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 bạn 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 bạn vừa tạo > rồi ấn Create User API Token
- Sau khi tạo xong API token, bạn vào lại web NodeWarden của bạn đã tạo. Vào mục Cloud Backup > Add Destination > S3. Chú ý phần S3 Endpoint thì 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