Language: he
Vaultwarden: התקנת מנהל סיסמאות פרטי ב-VPS
Vaultwarden מאפשר לשמור סיסמאות בשרת שלכם ולסנכרן אותן בין המחשב, הטלפון והדפדפן. הוא עובד עם האפליקציות והתוספים הרשמיים של Bitwarden, שבהם מציינים את הכתובת של השרת שלכם.
להלן נבחן איזה VPS דרוש ל-Vaultwarden, כיצד להפעיל אותו על Ubuntu עם Docker Compose, להשבית רישום פתוח, להפעיל HTTPS ולהגדיר גיבויים.
Vaultwarden בחמישה שלבים
תוכנית ההפעלה המינימלית:
- צרו VPS עם Ubuntu והפנו אליו תת-דומיין, לדוגמה
vault.example.com. - התקינו Docker ו-Docker Compose.
- הפעילו את Vaultwarden יחד עם Caddy ל-HTTPS אוטומטי.
- צרו את החשבון הראשון והשביתו רישום פתוח.
- הפעילו אימות דו-שלבי, עדכונים וגיבויים.
עבור כספת אישית או משפחה קטנה, מסד הנתונים המובנה של SQLite מספיק. שרת PostgreSQL נפרד בדרך כלל אינו נחוץ.
מהו Vaultwarden
Vaultwarden הוא מימוש לא רשמי של API של Bitwarden, שנכתב ב-Rust ונועד לפריסה עצמאית. הוא תואם ללקוחות הרשמיים של Bitwarden: ממשק האינטרנט, אפליקציות למובייל ולמחשב, תוספי דפדפן ו-CLI.
נתוני הכספת מוצפנים במכשיר המשתמש לפני שהם נשלחים לשרת. ה-VPS מסנכרן את מסד הנתונים המוצפן, אך אינו יודע את סיסמת האב ואינו יכול לשחזר אותה אם היא אובדת.
Vaultwarden אינו מוצר רשמי של Bitwarden. הבעלים אחראי אישית לעדכונים, לזמינות, ל-HTTPS, לגיבויים ולאבטחת ה-VPS.
Vaultwarden ו-Bitwarden: מה ההבדל
| פרמטר | Bitwarden Cloud | Vaultwarden |
|---|---|---|
| שרת | תשתית Bitwarden | ה-VPS או השרת הביתי שלכם |
| אפליקציות | לקוחות Bitwarden | אותם לקוחות במצב Self-hosted |
| תחזוקה | מנוהלת בידי הספק | מנוהלת בידי הבעלים |
| שליטה בגיבויים | מוגבלת על ידי השירות | מלאה |
| הגדרה | רישום חשבון | הגדרת דומיין, Docker ו-VPS |
Vaultwarden מתאים למי שרוצה שליטה בצד השרת ומוכן לעדכן את Linux ולבדוק גיבויים. שירות ענן מעשי יותר אם אינכם רוצים לטפל בניהול. אירוח עצמי אינו הופך את המערכת למאובטחת באופן אוטומטי — הוא מעביר את האחריות לבעלים.
דרישות השרת של Vaultwarden
לשימוש אישי, תצורת התחלה סבירה היא:
- 1 vCPU;
- 1–2 GB RAM;
- 10–20 GB SSD או NVMe;
- Ubuntu 24.04 LTS;
- כתובת IP ציבורית ודומיין;
- פורטים 80 ו-443 פתוחים.
זו הקצאה מעשית עבור Ubuntu, Docker, Caddy ועדכונים, ולא מינימום קשיח של הפרויקט. לעשרות משתמשים, מספר גדול של קבצים מצורפים או כמה קונטיינרים, עדיף לבחור לפחות 2 GB RAM.
כיצד להתקין Vaultwarden ב-VPS
בדוגמה זו נעשה שימוש ב-Ubuntu 24.04 ובתת-הדומיין vault.example.com. החליפו אותו בכתובת שלכם בכל הקבצים.
1. הגדירו DNS והכינו את Ubuntu
צרו רשומת DNS מסוג A המפנה לכתובת ה-IPv4 של ה-VPS. לאחר מכן התחברו באמצעות SSH:
ssh root@SERVER_IP
apt update && apt upgrade -y
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enableאל תסגרו את סשן ה-SSH הנוכחי עד שתוודאו שחיבור חדש עובד.
2. התקינו Docker ו-Docker Compose
הוסיפו את מאגר Docker הרשמי:
apt install -y ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
-o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
tee /etc/apt/sources.list.d/docker.sources > /dev/null <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
apt update
apt install -y docker-ce docker-ce-cli containerd.io \
docker-buildx-plugin docker-compose-plugin
docker compose version3. צרו את התצורה
mkdir -p /opt/vaultwarden
cd /opt/vaultwardenצרו compose.yaml:
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: unless-stopped
environment:
DOMAIN: "https://vault.example.com"
SIGNUPS_ALLOWED: "true"
volumes:
- ./vw-data:/data
caddy:
image: caddy:2-alpine
container_name: vaultwarden-caddy
restart: unless-stopped
depends_on:
- vaultwarden
ports:
- "80:80"
- "443:443"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro
- ./caddy-data:/data
- ./caddy-config:/configצרו את Caddyfile:
vault.example.com {
reverse_proxy vaultwarden:80
}רק Caddy חשוף מבחוץ. קונטיינר Vaultwarden נגיש בתוך רשת Docker, והנתונים נשמרים ב-/opt/vaultwarden/vw-data. אין צורך בפורט WebSocket נפרד בהגדרה הנוכחית.
4. הפעילו את Vaultwarden
docker compose up -d
docker compose ps
docker compose logs --tail=100 caddyפתחו את https://vault.example.com. Caddy ישיג אוטומטית תעודת TLS אם ה-DNS כבר מצביע ל-VPS והפורט 80 והפורט 443 נגישים. אם האתר אינו נפתח, בדקו את ה-DNS, את חומת האש ואת השאלה אם שרת אינטרנט אחר משתמש בפורטים האלה.
5. צרו חשבון והשביתו את הרישום
רשמו את החשבון הראשון. השתמשו בסיסמת אב ארוכה וייחודית ושמרו עותק חירום מחוץ ל-Vaultwarden: מנהל השרת אינו יכול לאפס או לשחזר את סיסמת האב.
לאחר הרישום שנו את השורה הבאה ב-compose.yaml:
SIGNUPS_ALLOWED: "false"החילו את ההגדרה:
docker compose up -dאנשים אחרים לא יוכלו מעתה ליצור חשבונות. כדי להוסיף משתמש חדש, אפשר להפעיל זמנית את הרישום או להגדיר הזמנות.
כיצד לחבר את אפליקציית Bitwarden
אין צורך להתקין לקוח Vaultwarden נפרד. במסך הכניסה של אפליקציית או תוסף Bitwarden בחרו Self-hosted והזינו:
https://vault.example.comהשתמשו בכתובת זו במחשב, בטלפון ובדפדפן. כדי לבצע הגירה, ייבאו ייצוא ממנהל הסיסמאות הקודם. מחקו מיד קובץ CSV או JSON לא מוצפן לאחר ההעברה, ואל תשלחו אותו בדוא״ל או בקישורים ציבוריים.
הגדרת Vaultwarden מאובטחת
לאחר ההפעלה בצעו כמה צעדים:
- הפעילו TOTP או WebAuthn ושמרו את קודי השחזור בנפרד;
- השאירו את
SIGNUPS_ALLOWEDמושבת; - השתמשו במפתחות SSH ועדכנו את Ubuntu באופן קבוע;
- אל תחשפו את הפורט הפנימי של קונטיינר Vaultwarden;
- אל תפעילו קונטיינרים מפוקפקים באותו VPS;
- ודאו שניתן לשחזר את הגיבויים.
לוח /admin בדרך כלל מיותר עבור כספת אישית. אם תפעילו אותו, השתמשו באסימון ארוך בצורת גיבוב Argon2 והגבילו את הגישה לפי כתובת IP או VPN ככל האפשר. שמירת ADMIN_TOKEN כטקסט גלוי אינה רצויה.
צרו גיבוי לפני העדכון, ואז הפעילו:
cd /opt/vaultwarden
docker compose pull
docker compose up -dיש לעדכן את השרת באופן קבוע: לקוחות Bitwarden משתחררים באופן עצמאי, ולכן גרסת Vaultwarden ישנה מאוד עלולה לאבד תאימות איתם.
גיבוי Vaultwarden
מסד הנתונים הראשי של SQLite נמצא ב-vw-data/db.sqlite3, ואילו הקבצים המצורפים נשמרים כקבצים נפרדים. אל תעתיקו מסד נתונים פעיל באמצעות פקודת cp רגילה: פעולת כתיבה באותו רגע עלולה להפוך את העותק ללא עקבי.
צרו תמונת מצב בטוחה באמצעות הפקודה המובנית:
docker exec vaultwarden /vaultwarden backupקובץ db_.sqlite3 נפרד יופיע בתיקיית הנתונים. שמרו יחד איתו את attachments, sends, את config.json אם נוצר, ואת קובצי rsa_key.
גיבוי באותו VPS אינו מגן מפני מחיקת השרת או תקלה בדיסק. שלחו עותקים אוטומטית למכשיר אחר או לאחסון אובייקטים נפרד, רצוי עם הצפנה נוספת. בצעו שחזור ניסיון מדי פעם.
איזה VPS לבחור עבור Vaultwarden
VPS Linux בסיסי עם 2 GB RAM מספיק לכספת אישית או משפחתית. הוא מספק מרווח נוסף עבור Ubuntu, Docker, Caddy, עדכונים וגיבויים אוטומטיים.
אפשר להפעיל את Vaultwarden ב-VPS התחלתי של tropic.host ולהגדיל את המשאבים בהמשך אם תוסיפו לשרת שירותים נוספים באירוח עצמי. עבור מנהל סיסמאות, רשת יציבה, כתובת ציבורית קבועה ודיסק אמין חשובים יותר מליבות CPU נוספות.
גם שרת ביתי מתאים, אך אז תצטרכו לספק גישה חיצונית, HTTPS, חשמל יציב ושחזור לאחר תקלות. VPS בדרך כלל פשוט יותר כאשר הכספת חייבת לעבוד מכל רשת.
סיכום
Vaultwarden הוא מנהל סיסמאות נוח באירוח עצמי עבור מי שרוצה להשתמש בלקוחות Bitwarden תוך שמירה על צד השרת בתשתית שלו. VPS קטן, דומיין, Docker Compose ו-Caddy מספיקים כדי להתחיל.
האחריות העיקרית מתחילה לאחר ההתקנה: השביתו רישום, הפעילו 2FA, עדכנו את הקונטיינרים ושמרו גיבויים שנבדקו מחוץ לשרת.
FAQ
אפשר להתקין Vaultwarden בלי דומיין?
מבחינה טכנית אפשר להשתמש בכתובת מקומית, אך הכספת באינטרנט דורשת הקשר HTTPS מאובטח. לגישה ממכשירים שונים, דומיין ותעודת TLS פשוטים יותר.
כמה RAM צריך Vaultwarden?
עבור משתמש אחד או כמה משתמשים, 1 GB RAM בדרך כלל מספיק. VPS עם 2 GB מספק מרווח נוח יותר עבור המערכת, Docker, Caddy והעדכונים.
Vaultwarden עובד עם אפליקציית Bitwarden לנייד?
כן. במסך הכניסה בחרו שרת באירוח עצמי והזינו את כתובת ה-HTTPS המלאה של מופע Vaultwarden שלכם.
מה קורה אם ה-VPS אינו זמין באופן זמני?
נתונים שסונכרנו בעבר בדרך כלל נשארים במטמון המקומי המוצפן של הלקוח. עם זאת, סנכרון, כניסה במכשיר חדש וקבלת שינויים לא יעבדו עד שהשרת ישוחזר.
האם אפשר לשחזר סיסמת אב שנשכחה דרך /admin?
לא. המנהל יכול לנהל את השרת והחשבונות, אך אין בידיו מפתח הפענוח של כספת המשתמש. יש לשמור את סיסמת האב ואת קודי השחזור בנפרד.
