安全

学习网络安全 — 密码管理器 Bitw 安全部署实践活动

本次实践活动说明如何安全部署 Vaultwarden 密码管理器:先用 Docker 启动容器,再用 OpenSSL 生成自签名证书,然后在 nginx 中配置反向代理,启用站点并重启服务,最后通过 HTTPS 访问。

· 1 分钟阅读 · 难度 中级

1. 部署容器

docker pull vaultwarden/server:latest
docker run -d --name vaultwarden -v /vw-data/:/data/ --restart unless-stopped -p 8443:80 vaultwarden/server:latest

2. 通过自签名证书以 HTTPS 访问

生成自签名证书:

  • 使用 OpenSSL 生成一个私钥和一份自签名证书。

命令:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/selfsigned.key -out /etc/ssl/selfsigned.crt

在 nginx 中创建配置文件:

nano /etc/nginx/sites-available/vaultwarden
server {
    listen 443 ssl;
    server_name SAISIR_VOTRE_IP_OU_DOMAINE;

    ssl_certificate /etc/ssl/selfsigned.crt;
    ssl_certificate_key /etc/ssl/selfsigned.key;
    location / {
        proxy_pass http://localhost:8443;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

创建符号链接以启用该站点:

ln -s /etc/nginx/sites-available/vaultwarden /etc/nginx/sites-enabled/vaultwarden

重启 nginx 服务:

systemctl restart nginx

至此,只需在浏览器中通过 https:// 访问即可