Scroll to navigation

SSH-KEYSCAN(1) General Commands Manual SSH-KEYSCAN(1)

الاسم

ssh-keyscanيجمع المفاتيح العامة لـ SSH من الخوادم

موجز

ssh-keyscan [-46cDHqv] [-f file] [-O option] [-p port] [-T timeout] [-t type] [host | addrlist namelist]

الوصف

ssh-keyscan هي أداة لجمع المفاتيح العامة لمضيفي SSH لعدد من المضيفين. صُممت للمساعدة في بناء والتحقق من ملفات ssh_known_hosts ، والتي يُوثق تنسيقها في sshd(8). توفر ssh-keyscan واجهة بسيطة مناسبة للاستخدام بواسطة نصوص shell و perl.

تستخدم ssh-keyscan إدخال/إخراج مأخذ توصيل غير محظور للاتصال بأكبر عدد ممكن من المضيفين بالتوازي، لذا فهي فعالة جدًا. يمكن جمع المفاتيح من نطاق يضم 1,000 مضيف في غضون عشرات الثواني، حتى عندما يكون بعض تلك المضيفين معطلين أو لا يشغلون sshd(8). للمسح، لا يحتاج المرء إلى وصول تسجيل الدخول إلى الأجهزة التي يتم مسحها، ولا تتضمن عملية المسح أي تعمية.

يمكن تحديد المضيفين المراد مسحهم بواسطة اسم المضيف أو العنوان أو نطاق شبكة CIDR (مثل 192.168.16/28). إذا تم تحديد نطاق شبكة، فسيتم مسح جميع العناوين في ذلك النطاق.

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

يجبر ssh-keyscan على استخدام عناوين IPv4 فقط.
يجبر ssh-keyscan على استخدام عناوين IPv6 فقط.
يطلب شهادات من المضيفين الهدف بدلاً من المفاتيح العادية.
يطبع المفاتيح الموجودة كسجلات SSHFP DNS. المبدئي هو طباعة المفاتيح بتنسيق قابل للاستخدام كملف ssh(1) known_hosts.
file
يقرأ المضيفين أو أزواج “addrlist namelist” من file ، سطر واحد لكل منها. إذا تم توفير ‘-’ بدلاً من اسم ملف، فسيقرأ ssh-keyscan من الإدخال القياسي. يجب أن تبدأ الأسماء المقروءة من ملف بعنوان أو اسم مضيف أو نطاق شبكة CIDR ليتم مسحه. يمكن اختياريًا أن تتبع العناوين وأسماء المضيفين بأسماء مستعارة أو عناوين مفصولة بفواصل سيتم نسخها إلى المخرجات. على سبيل المثال:
192.168.11.0/24
10.20.1.1
happy.example.org
10.0.0.1,sad.example.org
يشتت جميع أسماء المضيفين والعناوين في المخرجات. يمكن استخدام الأسماء المشتتة بشكل طبيعي بواسطة ssh(1) و sshd(8) ، لكنها لا تكشف معلومات تعريفية إذا تم الكشف عن محتويات الملف.
option
يحدد خيار مفتاح/قيمة. حاليًا، يتم دعم خيار واحد فقط:
=algorithm
يختار خوارزمية تعمية لاستخدامها عند طباعة سجلات SSHFP باستخدام علامة -D. الخوارزميات الصالحة هي “sha1” و “sha256”. المبدئي هو طباعة كليهما.
port
يتصل بـ port على المضيف البعيد.
وضع هادئ: لا يطبع اسم مضيف الخادم واللافتات في التعليقات.
timeout
يضبط المهلة لمحاولات الاتصال. إذا مرت timeout ثانية منذ بدء اتصال بمضيف أو منذ آخر مرة تم فيها قراءة شيء من ذلك المضيف، يتم إغلاق الاتصال ويعتبر المضيف المعني غير متاح. المبدئي هو 5 ثوان.
نوع
يحدد نوع المفتاح لجلبه من المضيفين الممسوحين. القيم الممكنة هي “ecdsa” أو “ed25519” أو “ecdsa-sk” أو “ed25519-sk” أو “rsa”. يمكن تحديد قيم متعددة بفصلها بفواصل. المبدئي هو جلب جميع أنواع المفاتيح المذكورة أعلاه.
وضع مفصّل: يطبع رسائل تصحيح حول التقدم.

إذا تم إنشاء ملف ssh_known_hosts باستخدام ssh-keyscan دون التحقق من المفاتيح، فسيكون المستخدمون عرضة لهجمات الرجل في المنتصف. من ناحية أخرى، إذا كان نموذج الأمان يسمح بهذا الخطر، يمكن لـ ssh-keyscan المساعدة في اكتشاف ملفات المفاتيح المعدلة أو هجمات الرجل في المنتصف التي بدأت بعد إنشاء ملف ssh_known_hosts.

الملفات

/etc/ssh/ssh_known_hosts

أمثلة

يطبع مفتاح مضيف RSA للجهاز hostname:

$ ssh-keyscan -t rsa hostname

يبحث في نطاق شبكة، مطبعًا جميع أنواع المفاتيح المدعومة:

$ ssh-keyscan 192.168.0.64/25

يجد جميع المضيفين من الملف ssh_hosts الذين لديهم مفاتيح جديدة أو مختلفة عن تلك الموجودة في الملف المرتب ssh_known_hosts:

$ ssh-keyscan -t rsa,ecdsa,ed25519 -f ssh_hosts | \
	sort -u - ssh_known_hosts | diff ssh_known_hosts -

انظر أيضًا

ssh(1) ، sshd(8) استخدام DNS لنشر بصمات مفاتيح Secure Shell (SSH) بشكل آمن, RFC 4255, 2006.

المؤلفون

David Mazieres <dm@lcs.mit.edu> كتب الإصدار الأولي، و Wayne Davison <wayned@users.sourceforge.net> أضاف دعم الإصدار 2 من البروتوكول.

ترجمة

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

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

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

$Mdocdate: 4 أكتوبر 2025 $ Nixpkgs