لماذا الهجرة الآن
منذ 27 مارس 2026، ارتفع اشتراك 1Password الفردي المدفوع سنوياً من {{35.88 دولاراً/سنة}} إلى {{47.88 دولاراً/سنة}}، أي بزيادة 33%. وفي يناير 2026، رفع Bitwarden.com بدوره سعر خطته المميزة من 9.99 دولار إلى 19.80 دولار سنوياً — ما يقارب الضعف. أوضح هذان الارتفاعان المتزامنان الجدوى الاقتصادية من الاستضافة الذاتية للمطوّرين الذين يمتلكون بالفعل خادم VPS: يعمل Vaultwarden بأقل من 50 ميغابايت من ذاكرة الوصول العشوائي، دون أي رسوم ترخيص برمجي، بتكلفة شهرية ثابتة.
الاعتراض الأكثر شيوعاً — «إدارة مدير كلمات المرور بنفسي أمر محفوف بالمخاطر» — لا يصمد أمام بنية Vaultwarden. يتم التشفير كلياً من جانب العميل باستخدام AES-256-CBC مع اشتقاق مفتاح PBKDF2 أو Argon2id: فلا يرى الخادم كلمات مرورك في صورة نص صريح قط، حتى في حال اختراق الجهاز بالكامل.
ما يوفّره Vaultwarden للمطوّر
- تشفير AES-256-CBC من جانب العميل — لا تغادر كلمات مرورك جهازك في صورة نص صريح، بصرف النظر عن تهيئة الخادم.
- توافق كامل مع جميع عملاء Bitwarden الرسميين: إضافات المتصفح، وتطبيقات iOS وAndroid وسطح المكتب وCLI، دون أي تعديلات.
- بصمة ذاكرة خفيفة — تستهلك عملية Vaultwarden وحدها من 10 إلى 30 ميغابايت من ذاكرة الوصول العشوائي؛ وأقل من 100 ميغابايت مع حاوية Docker.
- تكلفة ثابتة — يكفي خادم VPS بمعالج 1 vCPU و512 ميغابايت للاستخدام الشخصي أو الفريق الصغير، دون اشتراك متغيّر.
- تحكّم كامل في البيانات — يبقى النسخ الاحتياطي والاستعادة واختيار مركز البيانات ومدة الاحتفاظ بين يديك.
- دعم متعدد الملفات الشخصية والمؤسسات — يدعم Vaultwarden إدارة المؤسسات ومشاركة الخزنات تماماً مثل Bitwarden.com.
- تحديثات منفصلة — أنت من يختار توقيت تحديث الخادم؛ بينما يدير عملاء Bitwarden الرسميون دورة إصدارهم الخاصة.
المتطلبات الأساسية قبل البدء
قبل بدء الهجرة، تأكّد من توفّر جميع العناصر التالية.
من جانب الخادم: خادم VPS بمعالج vCPU واحد على الأقل و512 ميغابايت من ذاكرة الوصول العشوائي، مع تثبيت Docker وDocker Compose، واسم نطاق يشير إلى IP الخادم، ووكيل عكسي (Caddy أو Nginx) مهيّأ لإنهاء TLS. يغطّي مقال نشر Vaultwarden على VPS نشر Vaultwarden بالكامل — يفترض هذا الدليل أن نسختك قيد التشغيل ومتاحة عبر HTTPS.
من جانب جهازك المحلي: 1Password v8 أو أحدث (ضروري للتصدير بصيغة .1pux)، وBitwarden CLI (bw) مثبّتاً عبر npm (npm install -g @bitwarden/cli) أو الملف الثنائي الرسمي، وNode.js إصدار 18 أو أعلى إذا اخترت التثبيت عبر npm.
الخطوة 1 — تصدير خزنة 1Password
فتح نافذة التصدير
على macOS، افتح 1Password وانتقل إلى ملف → تصدير. على Windows، انقر على علامة الحذف (…) في أعلى الشريط الجانبي، ثم على تصدير. اختر الحساب المراد تصديره — إذا كان لديك عدة خزنات، يمكنك تصدير الحساب بأكمله في عملية واحدة.
اختيار صيغة 1PUX
في مربع الحوار، أدخل كلمة مرور حساب 1Password لتأكيد العملية. ثم اختر صيغة 1Password Unencrypted Export (.1pux). تحافظ هذه الصيغة المستندة إلى JSON على البنية الكاملة — الحقول المخصصة والملاحظات الآمنة والهويات وكلمات مرور التطبيقات — خلافاً لـ CSV التي تبتر البيانات الوصفية.
حفظ الملف في مكان آمن
اختر مجلداً محلياً مشفّراً (مع تفعيل FileVault أو BitLocker) لتخزين ملف .1pux. يحتوي هذا الملف على جميع أسرارك في صورة نص صريح منظّم — لا تتركه في مجلد التنزيلات ولا ترسله عبر البريد الإلكتروني. بعد اكتمال الهجرة، احذفه بشكل آمن.
الخطوة 2 — الاستيراد عبر Bitwarden CLI
توجيه CLI نحو نسخة Vaultwarden
يشير bw افتراضياً إلى bitwarden.com. أعد توجيهه نحو نسختك قبل أي عملية أخرى:
bw config server https://vault.votre-domaine.comتحقّق من الاستجابة: يجب أن يؤكّد CLI Saved setting 'serverUrl'.
تسجيل الدخول وفتح الخزنة
قم بالمصادقة ببيانات اعتماد Vaultwarden (البريد الإلكتروني + كلمة المرور الرئيسية المُنشأة عند الإعداد الأولي):
bw login [email protected]سيطلب CLI كلمة مرورك الرئيسية بشكل تفاعلي. بعد تسجيل الدخول، افتح الخزنة وصدِّر مفتاح الجلسة:
export BW_SESSION=$(bw unlock --raw)تستخدم جميع الأوامر اللاحقة هذا المتغيّر ضمنياً للوصول إلى الخزنة المفكوكة التشفير.
تشغيل استيراد ملف .1pux
استورد ملف تصدير 1Password باستخدام صيغة 1password1pux:
bw import 1password1pux /chemin/vers/export.1puxيعرض CLI التقدّم وملخصاً بعدد العناصر المستوردة حسب النوع (بيانات تسجيل دخول، ملاحظات، هويات، بطاقات). إذا كان حساب 1Password يحتوي على عدة خزنات، تُستورد جميعها في خزنة Bitwarden واحدة مع إعادة إنشاء المجلدات للحفاظ على البنية.
إذا ظهر خطأ Invalid format، تحقّق من أن الملف يحمل الامتداد .1pux وأنك تستخدم إصداراً حديثاً من CLI (bw --version).
التحقّق من الاستيراد في عميل Bitwarden
افتح إضافة Bitwarden للمتصفح أو تطبيق سطح المكتب، ووجِّه الخادم نحو نسخة Vaultwarden الخاصة بك، ثم سجّل الدخول. تصفّح خزناتك وتحقّق من عيّنة من كلمات المرور — ولا سيما الإدخالات ذات الحقول المخصصة والملاحظات الآمنة والهويات.
الخطوة 3 — Vaultwarden على خادم VPS
إذا لم تكن نسخة Vaultwarden لديك مُنشأة بعد، اتبع دليل نشر Vaultwarden على VPS الذي يغطّي تهيئة Docker بالكامل. باختصار، ثلاث نقاط لا غنى عنها قبل استيراد أي شيء:
HTTPS إلزامي. يرفض عملاء Bitwarden الاتصال بخادم بدون TLS صالح. يكفي Caddy أو Nginx مع Let's Encrypt (certbot)؛ تأكّد من إمكانية الوصول إلى نطاقك عبر https:// قبل تهيئة CLI.
متغيّر DOMAIN صحيح. في ملف docker-compose.yml، يجب أن يطابق المتغيّر DOMAIN=https://vault.votre-domaine.com تماماً URL الذي أعلنته في bw config server، بدون شرطة مائلة في النهاية.
نسخ احتياطي للحجم قبل الاستيراد. تكتب عملية الاستيراد في قاعدة بيانات SQLite الخاصة بـ Vaultwarden (/data/db.sqlite3). خذ لقطة من حجم Docker قبل تشغيل bw import حتى تتمكن من التراجع إذا سار الاستيراد بشكل خاطئ.
1Password مقابل Bitwarden.com مقابل Vaultwarden
| المعيار | 1Password | Bitwarden.com | Vaultwarden (self-hosted) |
|---|---|---|---|
| التكلفة السنوية (فردي) | {{47.88 دولاراً/سنة}} منذ مارس 2026 | {{19.80 دولاراً/سنة}} منذ يناير 2026 (مميز) | تكلفة VPS فقط |
| التحكّم في البيانات | خوادم 1Password | خوادم Bitwarden | VPS الخاص بك، مركز بياناتك |
| التشفير | AES-256-CBC من جانب العميل | AES-256-CBC من جانب العميل | AES-256-CBC من جانب العميل (متطابق) |
| عملاء الجوال الرسميون | تطبيقات 1Password المخصصة | iOS، Android، سطح المكتب، إضافة | عملاء Bitwarden الرسميون، بدون تعديل |
| إضافة المتصفح | 1Password X | إضافة Bitwarden | إضافة Bitwarden (نفس الملف الثنائي) |
| التحديثات | تلقائية (SaaS) | تلقائية (SaaS) | يدوية (أنت تختار التوقيت) |
| ذاكرة وصول عشوائي مطلوبة للخادم | غير مطبّق (SaaS) | غير مطبّق (SaaS) | 10–30 ميغابايت (العملية)، أقل من 100 ميغابايت (Docker) |
النسخ الاحتياطي واختبار الاستعادة
بعد اكتمال الاستيراد، أعدّ نسخاً احتياطية تلقائية لحجم Vaultwarden قبل إلغاء تفعيل حساب 1Password. يغطّي دليل النسخ الاحتياطي بـ Restic على VPS استراتيجية 3-2-1 مُكيَّفة مع Docker. اختبر الاستعادة على جهاز منفصل — لا مجرد التحقّق من وجود ملف النسخة الاحتياطية — قبل اعتبار الهجرة منجزة. خزنة كلمات مرور بدون استعادة مُختبَرة ليست نسخة احتياطية حقيقية.
استكشاف الأخطاء وإصلاحها — أخطاء شائعة
خطأ Invalid format عند الاستيراد. الصيغة التي يتوقعها CLI هي بالضبط 1password1pux (متصلة، بأحرف صغيرة). تأكّد من عدم استخدام 1password وحده أو 1pux — تتوافق هذه الأسماء مع صيغ أخرى. استعرض الصيغ المتاحة بالأمر: bw import --formats | grep 1password.
خطأ ERR_CERT_AUTHORITY_INVALID في العملاء. يشترط عملاء Bitwarden شهادة TLS موقَّعة من جهة موثوقة — يُرفض أي شهادة موقَّعة ذاتياً. تحقّق من أن Let's Encrypt أصدر شهادة صالحة لنطاقك وأنها غير منتهية الصلاحية.
الخزنة محجوبة في وضع الهجرة. إذا استوردت من حساب Bitwarden.com قائم قبل التحوّل إلى Vaultwarden، تبقى عناصرك مشفّرة بمفتاح الحساب السحابي. بعد bw config server نحو نسختك، أنشئ حساباً محلياً جديداً: لا يُهاجر CLI مفتاح التشفير بين النسختين.
يتوقف الاستيراد عند إدخال مفتاح SSH. حدّثت نسخة CLI 2026.7.0 إصلاحاً لتراجع معروف كان يعوق استيراد مفاتيح SSH بصيغة 1pux. حدِّث باستخدام: npm install -g @bitwarden/cli@latest.
مغادرة 1Password بثقة
بعد التحقّق من الاستيراد في Vaultwarden — افتح كل نوع من العناصر (بيانات تسجيل دخول، ملاحظات، هويات، بطاقات) في عميل Bitwarden وتحقّق من عيّنة تمثيلية — يمكنك إلغاء تفعيل حساب 1Password. لا تنتظر انتهاء اشتراكك لحذف ملف .1pux المحلي.
للمضي قُدُماً في تأمين بنيتك التحتية، يغطّي مقالا تقوية خادم Linux الأولي وPassbolt للفرق الخطوات التالية.