دليل النشر

استضف مدير كلمات المرور بنفسك: انشر Vaultwarden على VPS

انشر على VPS Cloud →

الأمان والمراقبة5 دقيقة قراءة

استضف مدير كلمات المرور بنفسك: انشر Vaultwarden على VPS

Vaultwarden هو تطبيق مفتوح المصدر مبني بلغة Rust لخادم Bitwarden — خفيف بما يكفي للعمل جنبًا إلى جنب مع خدمات أخرى على أصغر VPS، مع بقائه متوافقًا تمامًا مع كل عميل Bitwarden رسمي على كل منصة.

لماذا تستضيف مدير كلمات المرور بنفسك؟

تفرض مديرات كلمات المرور السحابية رسومًا لكل مستخدم شهريًا، وتخزّن خزنتك المشفّرة على خوادم لا تتحكم بها، ويمكن أن تختفي أو ترفع أسعارها بين ليلة وضحاها. يقلب ‪Vaultwarden‬ هذا النموذج: حاوية واحدة على ‪VPS‬ الخاص بك، وحجم ‪Docker‬ واحد للنسخ الاحتياطي، وعدد غير محدود من المستخدمين بتكلفة بنية تحتية ثابتة. ولأن ‪Vaultwarden‬ يتحدث بروتوكول ‪Bitwarden‬، فإن كل عميل ‪Bitwarden‬ — إضافة ‪Chrome‬، وإضافة ‪Firefox‬، و‪iOS‬، و‪Android‬، و‪Windows‬، و‪Linux‬، و‪CLI‬ — يتصل بنسختك المستضافة ذاتيًا دون أي تعديل.

المزايا الرئيسية

  • متوافق 100% مع جميع عملاء ‪Bitwarden‬ الرسميين — لا نسخ متفرّعة، ولا تطبيقات مخصّصة، ولا إعادة تعلّم
  • تشفير ‪AES-256‬ من طرف إلى طرف: كلمة المرور الرئيسية لا تغادر جهازك أبدًا
  • أقل من 50 ‪MB‬ من ذاكرة ‪RAM‬ في وضع الخمول — يعمل بسلاسة على ‪VPS‬ بسعة 512 ‪MB‬ جنبًا إلى جنب مع خدمات أخرى
  • عدد غير محدود من المستخدمين وخزائن المؤسسات مع مشاركة مشفّرة ووصول قائم على الأدوار
  • مصادِق ‪TOTP‬ مدمج: استبدل ‪Google Authenticator‬ ببديل مستضاف ذاتيًا
  • الوصول في حالات الطوارئ — امنح جهة اتصال موثوقة صلاحية القراءة بعد فترة انتظار قابلة للتهيئة

المتطلبات المسبقة

تحتاج إلى ‪VPS‬ بما لا يقل عن 1 ‪vCPU‬ و512 ‪MB‬ من ذاكرة ‪RAM‬ مع تثبيت ‪Docker‬ (يُنصح بـ ‪Ubuntu 22.04 LTS‬). كما تحتاج إلى اسم نطاق يشير إلى ‪VPS‬ — إذ يرفض عملاء ‪Bitwarden‬ الخزائن غير المؤمّنة بـ ‪HTTPS‬، فالـ ‪HTTPS‬ إلزامي. اسمح بالمنفذين 80 و443 عبر جدار الحماية: ufw allow 80 && ufw allow 443.

انشر ‪Vaultwarden‬ في 5 خطوات

01

ثبّت ‪Docker‬

إذا لم يكن ‪Docker‬ مثبّتًا بالفعل: curl -fsSL https://get.docker.com | sh && systemctl enable --now docker. تحقّق باستخدام docker --version.

02

شغّل ‪Vaultwarden‬

شغّل الحاوية: docker run -d --name vaultwarden --restart=always -v vaultwarden:/data -p 127.0.0.1:8000:80 -e WEBSOCKET_ENABLED=true vaultwarden/server:latest. يبدأ الخادم في أقل من ثانية ويستمع على المنفذ 8000 على ‪localhost‬.

03

إعداد ‪HTTPS‬ باستخدام ‪Caddy‬

ثبّت ‪Caddy‬: apt install -y caddy. أنشئ /etc/caddy/Caddyfile بالمحتوى: passwords.yourdomain.com { reverse_proxy localhost:8000 }. أعد تحميل ‪Caddy‬: systemctl reload caddy. يتم توفير شهادة ‪TLS‬ من ‪Let's Encrypt‬ تلقائيًا وتُجدَّد إلى الأبد — دون أي تهيئة.

04

أنشئ حسابك

افتح https://passwords.yourdomain.com في متصفّحك. انقر على ‪'Create Account'‬، واختر كلمة مرور رئيسية قوية (تُشفّر كل شيء محليًا قبل إرسال أي بيانات إلى الخادم)، وتصبح خزنتك جاهزة على الفور.

05

أغلق التسجيلات

بمجرد إنشاء جميع الحسابات، أوقف الحاوية وأعد تشغيلها بعد إضافة -e SIGNUPS_ALLOWED=false إلى أمر docker run. تصبح نسختك الآن بالدعوة فقط. لإدارة المستخدمين بشكل مستمر، فعّل لوحة الإدارة بإضافة -e ADMIN_TOKEN=$(openssl rand -base64 48).

06

أول تسجيل دخول

عند فتح الرابط لأول مرة، يعرض ‪Vaultwarden‬ خزنة ‪Bitwarden‬ على الويب: انقر على «إنشاء حساب» (‪Create account‬) وحدّد بنفسك بريدك الإلكتروني وكلمة المرور الرئيسية (لا يستطيع أحد استرجاعها، ولا نحن). قم بذلك فوراً: التسجيل مفتوح.

توافق العميل مع الخادم والأخطاء الصامتة

أدخل عملاء ‪Bitwarden‬ الحديثون تدفق مصادقة أوّلي جديد يستدعي نقطة النهاية ‪/identity/accounts/prelogin/password‬. تعيد نسخ ‪Vaultwarden‬ الأقدم من الإصدار ‪1.36.0‬ خطأ ‪404‬ دون رسالة واضحة — ويعرض العميل مجرد رسالة فشل عامة. الفخ دقيق: الأجهزة المتصلة أصلًا قبل تحديث العميل تواصل العمل بشكل طبيعي، لأن جلستها مُنشأة مسبقًا ولا تمر بمسار المصادقة الجديد هذا. الأجهزة الجديدة وحدها تفشل. نفّذ ‪curl https://نطاقك.com/identity/accounts/prelogin/password -X POST -d '{"email":"[email protected]"}' -H 'Content-Type: application/json'‬ — إذا حصلت على ‪404‬ فخادمك قديم جدًا.

أعراض عدم توافق إصدار العميل مع الخادم

  • تعذّر تسجيل الدخول على جهاز أو متصفح جديد، بينما تعمل الأجهزة الحالية بشكل طبيعي على نفس الحساب
  • رسالة خطأ عامة دون أي دلالة على السبب الجذري ("An error has occurred" أو "Invalid username or password")
  • إضافة ‪Chrome‬ أو ‪Firefox‬ المثبّتة حديثًا تفشل، لكن الإصدار ذاته على جهاز آخر يعمل
  • خزنة ‪Bitwarden‬ على الويب المستضافة على نسختك تُعيد ‪404‬ على ‪/identity/accounts/prelogin/password
  • لا أثر للخطأ في سجلات ‪Vaultwarden‬ على الخادم — نقطة النهاية غير موجودة فلا يوجد ما يُسجَّل
  • ظهر المشكل بعد تحديث تلقائي لعميل ‪Bitwarden‬ على الجهاز الجديد

تشخيص عدم التوافق وإصلاحه

01

تحقّق من إصدار خادمك

استعلم عن نقطة نهاية الإصدار: ‪curl https://نطاقك.com/api/version‬. إذا أظهرت الاستجابة إصدارًا أقدم من ‪1.36.0‬، فخادمك لا يدعم تدفق المصادقة الجديد الذي يتطلبه العملاء الحديثون.

02

حدّث إلى أحدث صورة

الحل الأأمن هو استخدام ‪vaultwarden/server:latest‬ دائمًا والحفاظ على تحديث الصورة. للتحديث: ‪docker pull vaultwarden/server:latest && docker stop vaultwarden && docker rm vaultwarden‬، ثم أعد تشغيل نفس أمر ‪docker run‬ المستخدم عند التثبيت. يحافظ ‪Vaultwarden‬ على جميع البيانات في الحجم — لا حاجة إلى أي ترحيل يدوي.

03

تحقّق أن التحديث أُخذ بعين الاعتبار

بعد إعادة التشغيل، استعلم مجددًا عبر ‪curl https://نطاقك.com/api/version‬ وتأكد أن الإصدار ‪1.36.0‬ أو أحدث. ثم اختبر تسجيل الدخول من تبويب تصفح خاص جديد.

04

ثبّت إصدارًا محددًا إذا كانت الاستقرارية أولوية

إذا كنت تفضّل التحكم يدويًا في التحديثات، استخدم وسمًا محددًا: ‪vaultwarden/server:1.37.0‬ مثلًا. في هذه الحالة، تابع إصدارات ‪GitHub‬ وقم بالتحديث عند كل إصدار جديد من عميل ‪Bitwarden‬ — الاثنان مترابطان بشكل وثيق.

فخ ‪SIGNUPS_ALLOWED=false‬: ضعه فقط بعد إنشاء حساب المدير

خطأ شائع عند التثبيت: ضبط ‪-e SIGNUPS_ALLOWED=false‬ قبل إنشاء حساب المسؤول. النتيجة — تمنعك نسختك الخاصة من التسجيل ولا تستطيع تسجيل الدخول إطلاقًا. الترتيب إلزامي: (1) ابدأ التشغيل بدون هذا المعامل، (2) أنشئ حساب المدير فورًا عبر واجهة الويب، (3) ثم فقط أعد تشغيل الحاوية مع ‪SIGNUPS_ALLOWED=false‬. إذا أغلقت النسخة على نفسك، مخرج الطوارئ هو تفعيل لوحة الإدارة عبر ‪-e ADMIN_TOKEN=$(openssl rand -base64 48)‬ ودعوة مستخدم المدير من ‪/admin‬.

نسخ احتياطية يومية بسطر ‪cron‬ واحد

أضف هذا إلى ‪crontab‬ الخاص بالمستخدم ‪root‬ (crontab -e): 0 3 * * * docker run --rm -v vaultwarden:/data -v /backup:/out busybox tar czf /out/vaultwarden-$(date +%F).tar.gz /data. شغّله يوميًا عند الساعة 3 صباحًا — تُحفَظ الخزنة بأكملها (ملف ‪SQLite‬ + المرفقات) في /backup كأرشيف مؤرّخ. أرسل هذا المجلد إلى ‪S3‬ أو ‪Backblaze B2‬ باستخدام ‪rclone‬ للحماية خارج الموقع.

التوثيق الرسمي

لمزيد من التهيئة المتقدمة والخيارات الخاصة بالأداة، راجع التوثيق الرسمي لـ ‪Vaultwarden‬. يغطّي هذا الدليل النشر على ‪VPS‬؛ ويبقى توثيق الناشر المرجع للإعدادات الدقيقة والتحديثات الكبرى وحالات الاستخدام الخاصة.

انشر Vaultwarden على VPS الخاص بك

اطلب VPS من ServOrbit، وانشر Vaultwarden في دقائق، وامتلك خزنة كلمات المرور الخاصة بك إلى الأبد.

بحاجة إلى مساعدة؟

تصفّح مركز المساعدة والأسئلة الشائعة، أو تواصل مع فريقنا — معاودة اتصال أو WhatsApp أو بريد إلكتروني. الدعم بـ العربية والفرنسية والإنجليزية.