SSH-ADD(1)

الاسم
ssh-add - يُضيف هويات المفاتيح الخاصة إلى وكيل الاستيثاق OpenSSH

موجز
ssh-add [-CcDdKkLlNqvXx] [-E fingerprint_hash] [-H hostkey_file] [-h destination_constraint] [-S provider] [-t life] [file ...] ssh-add -s pkcs11 [-Cv] [certificate ...] ssh-add -e pkcs11 ssh-add -T pubkey ... ssh-add -Q

الوصف
ssh-add يُضيف هويات المفاتيح الخاصة إلى وكيل الاستيثاق، ssh-agent(1). عند تشغيله بدون وسائط، يُضيف الملفات ~/.ssh/id_rsa ، ~/.ssh/id_ecdsa ، ~/.ssh/id_ecdsa_sk ، ~/.ssh/id_ed25519 و ~/.ssh/id_ed25519_sk. بعد تحميل مفتاح خاص، يحاول ssh-add تحميل معلومات الشهادة المقابلة من اسم الملف الذي يُحصل عليه بإلحاق -cert.pub باسم ملف المفتاح الخاص. يمكن إعطاء أسماء ملفات بديلة في سطر الأوامر.

إذا تطلب أي ملف عبارة مرور، يطلب ssh-add عبارة المرور من المستخدم. تُقرأ عبارة المرور من tty الخاص بالمستخدم. يُعيد ssh-add محاولة آخر عبارة مرور إذا أُعطيت ملفات هوية متعددة.

يجب أن يكون وكيل الاستيثاق قيد التشغيل وأن يحتوي متغير البيئة SSH_AUTH_SOCK على اسم مقبسه لكي يعمل ssh-add.

الخيارات هي كما يلي:

-C  عند تحميل المفاتيح إلى الوكيل أو حذف المفاتيح منه، عالج الشهادات فقط وتجاوز المفاتيح العادية.

-c  يشير إلى أن الهويات المُضافة يجب أن تخضع للتأكيد قبل استخدامها للاستيثاق. يُؤدى التأكيد بواسطة ssh-askpass(1). يُشار إلى التأكيد الناجح بحالة خروج صفرية من ssh-askpass(1) ، بدلاً من النص المُدخل في الطالب.

-D  يحذف جميع الهويات من الوكيل.

-d  بدلاً من إضافة الهويات، يُزيل الهويات من الوكيل. إذا شُغّل ssh-add بدون وسائط، ستُزال مفاتيح الهويات المبدئية وشهاداتها المقابلة. وإلا، فسيُفسّر قائمة الوسائط كقائمة مسارات لملفات المفاتيح العامة لتحديد المفاتيح والشهادات المُراد إزالتها من الوكيل. إذا لم يُعثر على مفتاح عام في مسار معين، سيُلحق ssh-add .pub ويعيد المحاولة. إذا تألفت قائمة الوسائط من “-” فسيقرأ ssh-add المفاتيح العامة المُراد إزالتها من الإدخال المعياري.

-E fingerprint_hash
    يحدد خوارزمية التجزئة المستخدمة عند عرض بصمات المفاتيح. الخيارات الصالحة هي: “md5” و “sha256”. المبدئي هو “sha256”.

-e pkcs11
    أزل المفاتيح المُقدمة من المكتبة المُشاركة PKCS#11 pkcs11.

-H hostkey_file
    يُحدد ملف مضيفين معروفين للبحث عن مفاتيح المضيف عند استخدام مفاتيح مقيدة بالوجهة عبر العلم -h. يمكن تحديد هذا الخيار عدة مرات للسماح بالبحث في ملفات متعددة. إذا لم تُحدد أي ملفات، سيستخدم ssh-add ملفات المضيفين المعروفين المبدئية لـ ssh_config(5): ~/.ssh/known_hosts ، ~/.ssh/known_hosts2 ، /etc/ssh/ssh_known_hosts ، و /etc/ssh/ssh_known_hosts2.

-h destination_constraint
    عند إضافة المفاتيح، قيّدها لتكون قابلة للاستخدام فقط عبر مضيفين محددين أو إلى وجهات محددة.

    قيود الوجهة من الشكل ‘[user@]dest-hostname’ تسمح باستخدام المفتاح فقط من المضيف الأصلي (ذلك الذي يشغل ssh-agent(1)) إلى مضيف الوجهة المُدرج، مع اسم مستخدم اختياري.

    القيود من الشكل ‘src-hostname>[user@]dst-hostname’ تسمح باستخدام مفتاح متاح على ssh-agent(1) مُمرر عبر مضيف معين (كما هو محدد بواسطة ‘src-hostname’) للاستيثاق إلى مضيف آخر، محدد بواسطة ‘dst-hostname’.

    يمكن إضافة قيود وجهة متعددة عند تحميل المفاتيح. عند محاولة الاستيثاق بمفتاح له قيود وجهة، يُختبر مسار الاتصال بأكمله، بما في ذلك تمرير ssh-agent(1) ، مقابل تلك القيود ويجب أن يُسمح بكل قفزة لنجاح المحاولة. على سبيل المثال، إذا مُرّر المفتاح إلى مضيف بعيد، ‘host-b’ ، ويحاول الاستيثاق إلى مضيف آخر، ‘host-c’ ، فستنجح العملية فقط إذا سُمح بـ ‘host-b’ من المضيف الأصلي وسُمح بالقفزة اللاحقة ‘host-b>host-c’ أيضًا بواسطة قيود الوجهة.

    تُحدد المضيفات بواسطة مفاتيح مضيفها، ويُبحث عنها من ملفات المضيفين المعروفين بواسطة ssh-add. يمكن استخدام أنماط أحرف البدل لأسماء المضيفات ومفاتيح مضيف الشهادات مدعومة. مبدئيًا، المفاتيح المُضافة بواسطة ssh-add غير مقيدة بالوجهة.

    أُضيفت قيود الوجهة في إصدار OpenSSH 8.9. الدعم في كل من عميل SSH البعيد والخادم مطلوب عند استخدام مفاتيح مقيدة بالوجهة عبر قناة ssh-agent(1) مُمررة.

    من المهم أيضًا ملاحظة أن قيود الوجهة لا يمكن فرضها إلا بواسطة ssh-agent(1) عند استخدام مفتاح، أو عند تمريره بواسطة متعاون ssh(1). تحديدًا، لا يمنع مهاجمًا لديه وصول إلى SSH_AUTH_SOCK بعيد من تمريره مرة أخرى واستخدامه على مضيف مختلف (ولكن فقط إلى وجهة مسموح بها).

-K  حمّل المفاتيح المقيمة من مصادق FIDO.

-k  عند تحميل المفاتيح إلى الوكيل أو حذف المفاتيح منه، عالج المفاتيح الخاصة العادية فقط وتجاوز الشهادات.

-L  يسرد معاملات المفتاح العام لجميع الهويات المُمثلة حاليًا بواسطة الوكيل.

-l  يسرد بصمات جميع الهويات المُمثلة حاليًا بواسطة الوكيل.

-N  عند إضافة الشهادات، سيطلب ssh-add مبدئيًا من الوكيل حذف الشهادة آليًا بعد تاريخ انتهاء صلاحية الشهادة بفترة وجيزة. يُثبط هذا العلم هذا السلوك ولا يُحدد عمرًا للشهادات المُضافة إلى وكيل.

-Q  استعلم من الوكيل عن قائمة امتدادات البروتوكول التي يدعمها. ملاحظة: لا تدعم جميع الوكلاء هذا الاستعلام.

-q  كن هادئًا بعد عملية ناجحة.

-S provider
    يحدد مسارًا إلى مكتبة تُستخدم عند إضافة مفاتيح مستضافة بواسطة موثق FIDO، متجاوزًا المبدئي باستخدام دعم USB HID الداخلي.

-s pkcs11
    أضف مفاتيح مقدمة من المكتبة المشتركة pkcs11. يمكن إدراج ملفات الشهادات اختياريًا كوسائط سطر أوامر. إذا كانت موجودة، فسيتم تحميلها في الوكيل باستخدام أي مفاتيح خاصة مقابلة محملة من رمز PKCS#11.

-T pubkey ...
    يختبر ما إذا كانت المفاتيح الخاصة المقابلة لملفات pubkey المحددة قابلة للاستخدام عن طريق إجراء عمليات توقيع وتحقق على كل منها.

-t عمر
    اضبط عمرًا أقصى عند إضافة هويات إلى وكيل. يمكن تحديد العمر بالثواني أو بتنسيق زمني محدد في sshd_config(5).

-v  الوضع المسهب. يجعل ssh-add يطبع رسائل تنقيح حول تقدمه. هذا مفيد في تنقيح المشاكل. تكرار خيارات -v يزيد من الإسهاب. الحد الأقصى هو 3.

-X  افتح قفل الوكيل.

-x  اقفل الوكيل بكلمة سر.

البيئة

DISPLAY, SSH_ASKPASS and SSH_ASKPASS_REQUIRE
    إذا كان ssh-add يتطلب عبارة مرور، فسيقوم بقراءة عبارة المرور من المحطة الطرفية الحالية في حالة تشغيله من محطة طرفية. إذا لم يكن لـ ssh-add محطة طرفية مرتبطة به ولكن كان DISPLAY و SSH_ASKPASS محددين، فإنه سينفذ البرنامج المحدد بواسطة SSH_ASKPASS (بشكل مبدئي “ssh-askpass”) ويفتح نافذة X11 لقراءة عبارة المرور. وهذا مفيد بشكل خاص عند استدعاء ssh-add من .xsession أو برنامج نصي ذي صلة.

    يتيح SSH_ASKPASS_REQUIRE مزيدًا من التحكم في استخدام برنامج askpass. إذا عُيّن هذا المتغير على “never” ، فلن يحاول ssh-add أبدًا استخدام أحد هذه البرامج. إذا عُيّن إلى “prefer” ، فسيفضل ssh-add استخدام برنامج askpass بدلاً من TTY عند طلب كلمات السر. أخيرًا، إذا عُيّن المتغير إلى “force” ، فسيُستخدم برنامج askpass لجميع إدخالات عبارات المرور بغض النظر عما إذا كان DISPLAY قد عُيّن أم لا.

SSH_AUTH_SOCK
    يحدد مسار مقبس UNIX-domain مستخدم للتواصل مع العميل.

SSH_SK_PROVIDER
    يحدد مسارًا لمكتبة ستُستخدم عند تحميل أي مفاتيح مستضافة على مصدق FIDO، متجاوزًا الوضع المبدئي لاستخدام دعم USB HID المدمج.

الملفات
~/.ssh/id_ecdsa
~/.ssh/id_ecdsa_sk
~/.ssh/id_ed25519
~/.ssh/id_ed25519_sk
~/.ssh/id_rsa
    يحتوي على هوية الاستيثاق ECDSA أو ECDSA المستضافة بواسطة الموثق أو Ed25519 أو Ed25519 المستضافة بواسطة الموثق أو RSA للمستخدم.

يجب ألا تكون ملفات الهوية قابلة للقراءة من قبل أي شخص غير المستخدم. لاحظ أن ssh-add يتجاهل ملفات الهوية إذا كانت قابلة للوصول من قبل الآخرين.

حالة الخروج
حالة الخروج هي 0 عند النجاح، و1 إذا فشل الأمر المحدد، و2 إذا كان ssh-add غير قادر على الاتصال بوكيل الاستيثاق.

انظر أيضًا
ssh(1), ssh-agent(1), ssh-askpass(1), ssh-keygen(1), sshd(8)

المؤلفون
OpenSSH هو مشتق من إصدارة ssh 1.2.12 الأصلية والحرة التي كتبها Tatu Ylonen. قام كل من Aaron Campbell و Bob Beck و Markus Friedl و Niels Provos و Theo de Raadt و Dug Song بإزالة العديد من العلل وإعادة إضافة ميزات أحدث وإنشاء OpenSSH. ساهم Markus Friedl بدعم بروتوكول SSH بالإصدارين 1.5 و 2.0.

ترجمة
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3: https://www.gnu.org/licenses/gpl-3.0.html أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.