Hướng dẫn cài đặt Vaultwarden trên Ubuntu
Vaultwarden là một phiên bản mã nguồn mở, được thiết kế để thay thế cho Bitwarden server. Nó cho phép người dùng lưu trữ và quản lý các thông tin nhạy cảm như mật khẩu, ghi chú và các tài liệu quan trọng khác một cách an toàn. Vaultwarden được viết bằng ngôn ngữ Rust, trước đây được biết đến với tên gọi bitwarden_rs, và cung cấp một giải pháp self-hosted gọn nhẹ và hiệu quả cho việc quản lý mật khẩu.
Trong bài viết này, chúng ta sẽ sử dụng Docker để cài đặt Vaultwarden trên hệ điều hành Ubuntu. Docker giúp đơn giản hóa quá trình cài đặt và quản lý ứng dụng, đồng thời đảm bảo tính nhất quán giữa các môi trường.
Yêu cầu hệ thống
Trước khi bắt đầu cài đặt Vaultwarden, hãy đảm bảo hệ thống của bạn đáp ứng các yêu cầu sau:
- Hệ điều hành: Ubuntu 20.04 LTS hoặc mới hơn
- RAM: Tối thiểu 1GB (khuyến nghị 2GB hoặc cao hơn)
- Bộ xử lý: 1 core CPU (khuyến nghị 2 core hoặc cao hơn)
- Dung lượng ổ cứng: Tối thiểu 20GB trống
- Docker và Docker Compose đã được cài đặt
- Kết nối internet ổn định
Ngoài ra, bạn cần có quyền truy cập root
hoặc sudo
trên hệ thống Ubuntu của mình để thực hiện các lệnh cài đặt và cấu hình.
Cài đặt Docker (nếu chưa có)
Nếu bạn đã cài đặt Docker trên hệ thống Ubuntu của mình, bạn có thể bỏ qua phần này. Nếu chưa, hãy làm theo các bước sau để cài đặt Docker
Cài đặt Docker trên Ubuntu
1. Thêm GPG key của Docker:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
2. Thêm repository Docker:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
3. Cập nhật lại danh sách gói và cài đặt Docker:
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin
4. Kiểm tra cài đặt Docker bằng lệnh sau:
sudo docker run hello-world
Cài đặt Docker Compose:
1. Tải Docker Compose:
curl -SL https://github.com/docker/compose/releases/download/v2.29.3/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
2. Cấp quyền thực thi:
sudo chmod +x /usr/local/bin/docker-compose
3. Kiểm tra cài đặt bằng lệnh sau:
docker-compose --version
Cấu hình người dùng:
Để tránh phải sử dụng sudo
mỗi khi chạy lệnh Docker, thêm người dùng hiện tại vào nhóm docker:
sudo usermod -aG docker ${USER}
Sau đó, đăng xuất và đăng nhập lại để áp dụng thay đổi.
Sau khi hoàn thành các bước trên, môi trường của bạn đã sẵn sàng để cài đặt Vaultwarden bằng Docker.
Cài đặt và cấu hình Vaultwarden
1. Tạo một thư mục mới cho Vaultwarden:
mkdir ~/vaultwarden
cd ~/vaultwarden
2. Tạo file docker-compose.yml
trong thư mục vừa tạo:
nano docker-compose.yml
3. Sao chép và dán nội dung sau vào file:
version: '3'
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: always
environment:
- WEBSOCKET_ENABLED=true
- SIGNUPS_ALLOWED=false
volumes:
- ./vw-data:/data
ports:
- 8080:80
Lưu file và thoát (Ctrl+X, sau đó Y và Enter).
4. Chạy Vaultwarden container:
docker-compose up -d
5. Mở trình duyệt web và truy cập http://your_server_ip:8080
để bắt đầu cấu hình Vaultwarden.
6. Tạo tài khoản quản trị đầu tiên bằng cách đăng ký một tài khoản mới.
7. Sau khi đăng ký, đăng nhập vào tài khoản và bắt đầu sử dụng Vaultwarden.
8. Để tăng cường bảo mật, bạn có thể cấu hình thêm các tùy chọn trong file docker-compose.yml
. Ví dụ:
- Thêm mật khẩu quản trị:
environment:
- ADMIN_TOKEN=your_secure_admin_token
- Giới hạn đăng ký:
environment:
- SIGNUPS_ALLOWED=false
- Cấu hình SMTP để gửi email:
environment:
- SMTP_HOST=smtp.example.com
- [email protected]
- SMTP_PORT=587
- SMTP_SECURITY=starttls
- SMTP_USERNAME=username
- SMTP_PASSWORD=password
9. Sau khi thay đổi cấu hình, khởi động lại container:
docker-compose down
docker-compose up -d
Với các bước trên, bạn đã cài đặt và cấu hình thành công Vaultwarden trên Ubuntu sử dụng Docker.
Bảo mật và duy trì Vaultwarden
Sau khi cài đặt Vaultwarden, việc bảo mật và duy trì hệ thống là rất quan trọng để đảm bảo an toàn cho dữ liệu của bạn.
Bảo mật
1. Sử dụng HTTPS:
- Cấu hình reverse proxy như Nginx với Let’s Encrypt để bảo vệ kết nối.
- Cập nhật file
docker-compose.yml
để sử dụng HTTPS:
environment:
- DOMAIN=https://your-domain.com
2. Cấu hình tường lửa:
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
3. Bật xác thực hai yếu tố (2FA) cho tài khoản của bạn trong Vaultwarden.
4. Giới hạn đăng ký: Nếu bạn không cần thêm người dùng mới, hãy tắt đăng ký trong cấu hình.
5. Cập nhật thường xuyên: Kiểm tra và cập nhật Docker image của Vaultwarden:
docker-compose pull
docker-compose up -d
Sao lưu dữ liệu
1. Sao lưu thư mục dữ liệu:
sudo cp -r ~/vaultwarden/vw-data /path/to/backup/location
2. Tự động hóa sao lưu bằng cron job:
0 2 * * * tar -czf /path/to/backup/vaultwarden-backup-$(date +\%Y\%m\%d).tar.gz ~/vaultwarden/vw-data
Khôi phục dữ liệu
1. Dừng container Vaultwarden:
cd ~/vaultwarden
docker-compose down
2. Khôi phục dữ liệu từ bản sao lưu:
sudo rm -rf ~/vaultwarden/vw-data
sudo cp -r /path/to/backup/vw-data ~/vaultwarden/
3. Khởi động lại Vaultwarden:
docker-compose up -d
Giám sát
1. Kiểm tra logs:
docker-compose logs -f vaultwarden
2. Giám sát tài nguyên sử dụng:
docker stats vaultwarden
Cập nhật hệ thống
1. Cập nhật hệ điều hành Ubuntu:
sudo apt update
sudo apt upgrade
2. Cập nhật Docker và Docker Compose:
sudo apt update
sudo apt upgrade docker-ce docker-ce-cli containerd.io
Bằng cách tuân thủ các biện pháp bảo mật và duy trì này, bạn có thể đảm bảo rằng hệ thống Vaultwarden của mình luôn an toàn và hoạt động hiệu quả.