SSH إلى موقع في KapsuleHost يعتمد على المفاتيح فقط، لذا قبل أن تتمكن من فتح جلسة طرفية أو جلسة SFTP تحتاج إلى تسجيل مفتاح عام مرتبط بالموقع في KPanel. يغطي هذا الدليل مكان تلك الصفحة، وكيفية إضافة مفتاح تملكه بالفعل، وكيفية جعل KapsuleHost يُنشئ لك مفتاحاً، وكيفية إلغاء مفتاح لم تعد تثق به.
أين توجد صفحة مفاتيح SSH
افتح المواقع، ثم اضغط على الموقع، ثم افتح مجموعة الإعدادات في القائمة اليسرى للموقع، واختر مفاتيح SSH. تحمل الصفحة عنوان وصول SSH وتضم شيئين: تفاصيل الاتصال الخاصة بهذا الموقع، وقائمة المفاتيح العامة المصرّح لها حالياً باستخدامها.
لا يوجد عنصر SSH على المستوى الأعلى في الشريط الجانبي الرئيسي. المفاتيح مرتبطة بكل موقع على حدة، لذا فإن المفتاح الذي تضيفه هنا يُصادق فقط على هذا الموقع. إذا كنت تدير عدة مواقع، يحتاج كل موقع إلى إدخال خاص به، حتى لو كان المفتاح نفسه الموجود على جهازك المحمول.

تتطلب إضافة أو إلغاء مفتاح صلاحية sites:write. إذا كنت تستخدم حساب فريق بدور للقراءة فقط، فإن زر إضافة مفتاح وأيقونة الإلغاء يكونان مخفيين. اطلب من مالك الحساب أو أحد المسؤولين إجراء التغيير.
تفاصيل الاتصال
تعرض بطاقة تفاصيل الاتصال الموجودة أعلى الصفحة كل ما يحتاجه برنامجك:
| الحقل | ماهيته |
|---|---|
| المضيف (Host) | اسم المضيف الذي يجب الاتصال به |
| المنفذ (Port) | منفذ SSH الخاص بهذا الموقع |
| اسم المستخدم (Username) | مستخدم النظام الذي يعمل الموقع تحته |
| SSH | أمر ssh جاهز لهذا الموقع |
| SFTP | أمر sftp جاهز لهذا الموقع |
يحتوي كل صف على عنصر تحكم للنسخ، وصفّا SSH وSFTP ينسخان الأمر كاملاً وليس القيمة فقط، بحيث يمكنك لصقه مباشرة في الطرفية. استخدم هذين الصفين بدلاً من كتابة الأمر بنفسك: فهما يحتويان بالفعل على اسم المستخدم والمضيف والمنفذ الصحيحة.
إذا لم تظهر البطاقة إطلاقاً، فهذا يعني أن الموقع لم ينتهِ بعد من تجهيز مستخدم الصدفة (shell user) الخاص به. تُرجع واجهة برمجة التطبيقات (API) في هذه الحالة خطأً بسيطاً نصّه الموقع لا يملك مستخدم SSH. انتظر حتى تصبح شارة حالة الموقع Active ثم أعد تحميل الصفحة.
إضافة مفتاح تملكه بالفعل
لدى معظم الأشخاص بالفعل زوج مفاتيح على أجهزتهم. أضف النصف العام هنا.
- على جهازك الخاص، اطبع مفتاحك العام. على macOS وLinux يكون ذلك عادة عبر
cat ~/.ssh/id_ed25519.pub، أوcat ~/.ssh/id_rsa.pubلمفتاح RSA أقدم. على Windows مع OpenSSH يكون عبرtype %USERPROFILE%\.ssh\id_ed25519.pub. - انسخ السطر الواحد الكامل، الذي يبدأ بـ
ssh-ed25519أوssh-rsaأوecdsa-sha2-nistp256. - في KPanel، اضغط على إضافة مفتاح.
- ضع عبارة يسهل تذكرها في حقل Label، على سبيل المثال اسم الجهاز الذي يوجد عليه المفتاح.
- الصق المفتاح العام في الحقل الثاني.
- اضغط على إضافة مفتاح.
يظهر المفتاح فوراً في قائمة المفاتيح المصرّح بها، مع بصمته أسفل التسمية. يمكنك الاتصال على الفور.
يرسل KapsuleHost أيضاً بريداً إلكترونياً إلى عنوان الحساب في كل مرة يُضاف فيها مفتاح، يتضمن التسمية والبصمة والموقع. هذا البريد مقصود: الوصول عبر SSH حساس للغاية، لذا إذا ظهر مفتاح لم تُضفه أنت، فقم بإلغائه وتغيير كلمة مرورك فوراً.
الصق دائماً ملف .pub فقط. ملف المفتاح الخاص لا يحمل امتداد .pub ويبدأ بسطر مثل -----BEGIN OPENSSH PRIVATE KEY-----. إذا لصقت ذلك، فهذا يعني أنه مفتاحك الخاص، ويجب إعادة إنشائه بدلاً من إعادة استخدامه.
إذا لم يكن لديك مفتاح بعد
أنشئ واحداً محلياً باستخدام ssh-keygen -t ed25519 -C "your-label"، واقبل الموقع الافتراضي للملف، وعيّن عبارة مرور عند الطلب. ينتج عن ذلك ~/.ssh/id_ed25519 (احتفظ به سرياً) و~/.ssh/id_ed25519.pub (الصق هذا الأخير).
السماح لـ KapsuleHost بإنشاء زوج المفاتيح
إذا كنت تفضّل عدم تشغيل ssh-keygen، يمكن لـ KPanel إنشاء الزوج نيابة عنك.
- اضغط على إضافة مفتاح.
- املأ حقل Label. اترك مربع المفتاح العام فارغاً.
- اضغط على إنشاء زوج المفاتيح.
يُنشئ KapsuleHost زوجاً من نوع Ed25519، ويُثبّت النصف العام على الموقع، ويعرض لافتة خضراء نصّها: تم إنشاء زوج المفاتيح: حمّل المفتاح الخاص الآن. اضغط على تحميل .pem لحفظ المفتاح الخاص. يُسمّى الملف بناءً على التسمية التي اخترتها.
يُعرض المفتاح الخاص مرة واحدة فقط. تذكر اللافتة ذلك بوضوح: هذه هي المرة الوحيدة التي يمكنك فيها تحميله. لا يحتفظ KapsuleHost بنسخة يمكنك جلبها لاحقاً. إذا أغلقت اللافتة دون التحميل، فقم بإلغاء المفتاح وأنشئ زوجاً جديداً.
لا يحمل المفتاح المُنشأ عبارة مرور، وهذا ما يجعله قابلاً للاستخدام من سكربت دون أي مطالبة. وهذا يعني أيضاً أن الملف نفسه هو بيانات الاعتماد كاملة. إذا أردت عبارة مرور، أنشئ الزوج بنفسك باستخدام ssh-keygen بدلاً من ذلك والصق النصف العام.
بعد التحميل، انقل الملف إلى مكان مناسب وشدّد صلاحياته، لأن SSH يرفض استخدام مفتاح خاص قابل للقراءة من قِبل الجميع:
mv ~/Downloads/my-laptop_id_ed25519.pem ~/.ssh/kapsule-mysite.pem
chmod 600 ~/.ssh/kapsule-mysite.pem
ssh -i ~/.ssh/kapsule-mysite.pem <username>@<host> -p <port>
استبدل اسم المستخدم والمضيف والمنفذ من بطاقة تفاصيل الاتصال.
قراءة قائمة المفاتيح المصرّح بها
يعرض كل صف في المفاتيح المصرّح بها:
- التسمية التي أعطيتها للمفتاح.
- بصمة المفتاح، وهي الطريقة التي تميّز بها بين مفتاحين متشابهي التسمية.
- Added مع تاريخ تسجيله.
- آخر استخدام مع تاريخ آخر مصادقة، أو لم يستخدم أبداً إذا لم يُصادق بعد.
عمود آخر استخدام هو المفيد أثناء عملية التنظيف. المفتاح الذي لم يُستخدم قط، أو لم يُستخدم منذ أشهر، يكون عادة جهازاً محمولاً تم استبداله أو متعاقداً انتقل للعمل في مكان آخر.
إلغاء مفتاح
اضغط على أيقونة سلة المهملات الحمراء الموجودة في صف المفتاح. يطلب منك KPanel التأكيد بعبارة إلغاء مفتاح SSH؟ مع ملاحظة بأن المفتاح لن يعود يُصادق على هذا الموقع. اضغط على Revoke للإنهاء.
يسري الإلغاء على الاتصالات الجديدة. أما جلسة SSH المفتوحة بالفعل فلا يتم إنهاؤها بمجرد إلغاء المفتاح، لذا إذا كنت تزيل صلاحية الوصول عن شخص قد يكون لا يزال متصلاً، فقم بإلغاء المفتاح ثم غيّر كل ما كان بإمكانه أخذه معه: كلمات مرور قواعد البيانات، وأسرار التطبيق، وأي رموز مخزّنة على الموقع.
اجعل قائمة المفاتيح قصيرة. مفتاح واحد لكل جهاز، مُسمّى باسم الجهاز، أسهل بكثير في المراجعة من كومة مفاتيح تحمل أسماء مثل "key1" و"new key" و"temp".
استكشاف الأخطاء وإصلاحها
Permission denied (publickey). السبب الأكثر شيوعاً هو أن برنامجك يعرض مفتاحاً مختلفاً عن المفتاح الذي سجّلته. اجبر استخدام المفتاح الصحيح بواسطة ssh -i /path/to/private_key ...، أو تحقق بواسطة ssh -v من المفاتيح التي يتم عرضها.
رفض الاتصال أو انتهاء المهلة. تأكد من أنك تستخدم المنفذ الموضح في تفاصيل الاتصال وليس المنفذ الافتراضي 22. انسخ أمر SSH من الصفحة بدلاً من كتابته يدوياً.
صلاحيات خاطئة على المفتاح الخاص. يرفض OpenSSH مفتاحاً خاصاً يمكن لمستخدمين آخرين قراءته. نفّذ chmod 600 على الملف.
المفتاح يعمل مع SSH لكن ليس مع SFTP. كلاهما يشترك في نفس بيانات الاعتماد، لذا يكون السبب في الغالب هو البرنامج وليس المفتاح. استخدم أمر SFTP المنسوخ من الصفحة، الذي يحمل بالفعل المنفذ الصحيح.
إلى أين تذهب بعد ذلك
- رفع الملفات باستخدام SFTP يغطي جانب نقل الملفات لنفس بيانات الاعتماد.
- الاتصال بقاعدة بياناتك عبر نفق SSH يستخدم المفتاح الذي أضفته للتو للوصول إلى MySQL من برنامج سطح مكتب.
- سجل نشاط الموقع يسجّل كل مفتاح تضيفه، بحيث يمكنك لاحقاً معرفة من أضاف ماذا ومتى.