تسعى مجموعة الوثائق لهذا المنتج جاهدة لاستخدام لغة خالية من التحيز. لأغراض مجموعة الوثائق هذه، يتم تعريف "خالية من التحيز" على أنها لغة لا تعني التمييز على أساس العمر، والإعاقة، والجنس، والهوية العرقية، والهوية الإثنية، والتوجه الجنسي، والحالة الاجتماعية والاقتصادية، والتمييز متعدد الجوانب. قد تكون الاستثناءات موجودة في الوثائق بسبب اللغة التي يتم تشفيرها بشكل ثابت في واجهات المستخدم الخاصة ببرنامج المنتج، أو اللغة المستخدمة بناءً على وثائق RFP، أو اللغة التي يستخدمها منتج الجهة الخارجية المُشار إليه. تعرّف على المزيد حول كيفية استخدام Cisco للغة الشاملة.
ترجمت Cisco هذا المستند باستخدام مجموعة من التقنيات الآلية والبشرية لتقديم محتوى دعم للمستخدمين في جميع أنحاء العالم بلغتهم الخاصة. يُرجى ملاحظة أن أفضل ترجمة آلية لن تكون دقيقة كما هو الحال مع الترجمة الاحترافية التي يقدمها مترجم محترف. تخلي Cisco Systems مسئوليتها عن دقة هذه الترجمات وتُوصي بالرجوع دائمًا إلى المستند الإنجليزي الأصلي (الرابط متوفر).
يصف هذا المستند كيفية تكوين Secure Shell (SSH) وتصحيح أخطائه على موجهات Cisco أو المُبدلات التي تقوم بتشغيل برنامج Cisco IOS®.
يجب أن تكون صورة Cisco IOS المُستخدمة صورة k9(تشفير) لدعم SSH. على سبيل المثال، c3750e-universalk9-tar.122-35.SE5.tar هو صورة k9 (تشفير).
تستند المعلومات الواردة في هذا المستند إلى برنامج Cisco IOS 3600 (C3640-IK9S-M)، الإصدار 12.2(2)T1.
تم تقديم SSH في الصور والأنظمة الأساسية التالية من Cisco IOS:
تم تقديم SSH الإصدار 2.0 (SSH v2) في الصور والأنظمة الأساسية من Cisco IOS التي تبدأ في برنامج Cisco IOS الإصدار 12.1(19)E.
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.
راجع اصطلاحات تلميحات Cisco التقنية للحصول على مزيد من المعلومات.
اختبر المصادقة دون SSH أولاً للتأكد من عمل المصادقة مع Carter للموّجه قبل إضافة SSH. يمكن أن تكون المصادقة باسم مستخدم وكلمة مرور محليين أو بخادم المصادقة والتخويل والمحاسبة (AAA) الذي يشغّل TACACS+ أو RADIUS. (لا يمكن أن تتم المصادقة من خلال كلمة مرور السطر مع SSH.) يوضح هذا المثال المصادقة المحلية، والتي تتيح لك إستخدام Telnet في الموجه باسم المستخدم cisco وكلمة المرور cisco.
ملاحظة: في هذا المستند، يتم إستخدام vty للإشارة إلى نوع المحطة الطرفية الظاهرية.
!--- The aaa new-model command causes the local username and password on the router to be used in the absence of other AAA statements.
aaa new-model
username cisco password 0 cisco
line vty 0 4
transport input telnet
!--- Instead of aaa new-model, you can use the login local command.
لاختبار المصادقة مع SSH، يجب عليك الإضافة إلى العبارات السابقة لتمكين SSH على Carter، واختبار SSH من محطات PC و UNIX.
ip domain-name rtp.cisco.com
!--- Generate an SSH key to be used with SSH.
crypto key generate rsa
ip ssh time-out 60
ip ssh authentication-retries 2
عند هذه النقطة، يجب أن يعرض الأمر show crypto key mypubkey rsa المفتاح الذي تم إنشاؤه. بعد إضافة تكوين SSH، اختبر قدرتك على الوصول إلى الموجّه من جهاز الكمبيوتر الشخصي ومحطة UNIX.
إذا كنت ترغب في منع الاتصالات بخلاف SSH، فقم بإضافة الأمر transport input ssh أسفل الأسطر لتحديد الموجّه إلى اتصالات SSH فقط. يتم رفض برامج Telnet (بخلاف SSH) المباشرة.
line vty 0 4
!--- Prevent non-SSH Telnets.
transport input ssh
قم بإجراء إختبار للتأكد من أنه لا يمكن لمستخدمي البرامج بخلاف SSH إستخدام Telnet إلى Carter للموجه.
هناك أربع خطوات مطلوبة لتمكين دعم SSH على موجّه Cisco IOS:
1. قم بتكوين الأمر hostname .
2. قم بتكوين مجال DNS.
3. أنشئ مفتاح SSH.
4. قم بتمكين دعم نقل SSH للوحدة الطرفية للنوع الافتراضي (vty).
إذا أردت أن يكون لديك جهاز واحد يعمل كعميل SSH إلى الآخر، فيمكنك إضافة SSH إلى جهاز ثانٍ يُسمي Reed. ويضع ذلك هذه الأجهزة في ترتيب العميل-الخادم، حيث يعمل Carter كخادم، ويعمل Reed كعميل. تكوين عميل Cisco IOS SSH على Reed هو نفسه المطلوب لتكوين خادم SSH على Carter.
!--- Step 1: Configure the hostname if you have not previously done so.
hostname carter
!--- The aaa new-model command causes the local username and password on the router to be used in the absence of other AAA statements.
aaa new-model
username cisco password 0 cisco
!--- Step 2: Configure the DNS domain of the router.
ip domain-name rtp.cisco.com
!--- Step 3: Generate an SSH key to be used with SSH.
crypto key generate rsa
ip ssh time-out 60
ip ssh authentication-retries 2
!--- Step 4: By default the vty transport is Telnet. In this case, Telnet is disabled and only SSH is supported.
line vty 0 4
transport input ssh
!--- Instead of aaa new-model, you can use the login local command.
قم بإصدار هذا الأمر إلى SSH من عميل Cisco IOS SSH (Reed) إلى خادم Cisco IOS SSH (Carter) لاختبار هذا:
ssh -v 2 -c aes256-cbc -m hmac-sha1-160 -l cisco 10.31.1.99
أكمِل هذه الخطوات لتكوين خادم SSH لتنفيذ المصادقة المستندة إلى RSA.
1. حدد اسم المضيف.
Router(config)#hostname <host name>
2. قم بتحديد اسم مجال افتراضي.
Router(config)#ip domain-name <Domain Name>
3. قم بإنشاء أزواج مفاتيح RSA.
Router(config)#crypto key generate rsa
4. قم بتكوين مفاتيح SSH-RSA لمصادقة المستخدم والخادم.
Router(config)#ip ssh pubkey-chain
5. قم بتكوين اسم مستخدم SSH.
Router(conf-ssh-pubkey)#username <user name>
6. حدد مفتاح RSA العام للنظير البعيد.
Router(conf-ssh-pubkey-user)#key-string
7. حدد نوع مفتاح SSH وإصداره. (هذه الخطوة اختيارية.)
Router(conf-ssh-pubkey-data)#key-hash ssh-rsa <key ID>
8. قم بالخروج من الوضع الحالي والرجوع إلى وضع EXEC ذي الامتيازات.
Router(conf-ssh-pubkey-data)#end
إذا احتجت إلى مصادقة سطر خط SSH الطرفي الصادر، فيمكنك تكوين SSH واختباره لبرامج Telnet العكسية الصادرة من خلال Carter، والذي يعمل كخادم اتصالات إلى فيلادلفيا.
ip ssh port 2001 rotary 1
line 1 16
no exec
rotary 1
transport input ssh
exec-timeout 0 0
modem InOut
stopbits 1
إذا كانت فيلادلفيا متصلة بالمنفذ 2 الخاص بـ Carter، فيمكنك تكوين SSH إلى فيلادلفيا من خلال Carter من Reed باستخدام هذا الأمر:
ssh -v 2 -c aes256-cbc -m hmac-shal-160 -p 2002 10.31.1.99
يمكنك استخدام هذا الأمر من Solaris:
ssh -c 3des -p 2002 -x -v 10.13.1.99
ستحتاج إلى تقييد اتصال SSH بشبكة فرعية معينة حيث يتم إسقاط جميع محاولات SSH الأخرى من بروتوكولات IP خارج الشبكة الفرعية.
يمكنك استخدام هذه الخطوات للقيام بالأمر نفسه:
هذا مثال على التكوين. في هذا المثال، مسموح بوصول SSH فقط إلى الشبكة الفرعية 10.10.10.0 255.255.255.0، ويتم رفض أي وصول آخر.
Router(config)#access-list 23 permit 10.10.10.0 0.0.0.255
Router(config)#line vty 5 15
Router(config-line)#transport input ssh
Router(config-line)#access-class 23 in
Router(config-line)#exit
ملاحظة: يتم إستخدام الإجراء نفسه أيضا لتأمين وصول SSH للأنظمة الأساسية للمحول.
carter(config)#ip ssh version 2
يختلف إخراج أمر banner بين Telnet والإصدارات المختلفة من اتصالات SSH. يوضح هذا الجدول مدى اختلاف عمل خيارات أمر banner مع أنواع مختلفة من الاتصالات.
خيار أمر الشعار |
Telnet |
SSH v2 |
سجل الشعار |
عرض قبل تسجيل الدخول إلى الجهاز. |
عرض قبل تسجيل الدخول إلى الجهاز. |
banner motd |
عرض قبل تسجيل الدخول إلى الجهاز. |
عرض بعد تسجيل الدخول إلى جهاز. |
banner exec |
عرض بعد تسجيل الدخول إلى جهاز. |
عرض بعد تسجيل الدخول إلى جهاز. |
ملاحظة: لم يعد الإصدار 1 من SSH مستحسن.
يدعم SSH الإصدار 2 شعار تسجيل الدخول. عندما يبدأ جلسة SSH مع موجه Cisco، يتم عرض شعار تسجيل الدخول إذا أرسل عميل SSH اسم المستخدم. على سبيل المثال، عند إستخدام عميل Secure Shell ssh، يتم عرض شعار تسجيل الدخول. عند إستخدام عميل PuTTY ssh، لا يتم عرض شعار تسجيل الدخول. وذلك لأن SSH يرسل اسم المستخدم بشكل افتراضي ولا يقوم PuTTY بإرسال اسم المستخدم بشكل افتراضي.
يحتاج عميل SSH اسم المستخدم لبدء الاتصال بالجهاز الذي يدعم SSH. لا يتم تمكين زر الاتصال إذا لم تقم بإدخال اسم المضيف واسم المستخدم. توضح صورة الشاشة هذه أنه يتم عرض شعار تسجيل الدخول عند اتصال SSH بالموجه. يُطالب الشعار بكلمة مرور.
لا يتطلب عميل PuTTY اسم المستخدم لبدء اتصال SSH بالموجّه. توضح صورة الشاشة هذه أن عميل PuTTY يتصل بالموجه ويطلب اسم المستخدم وكلمة المرور. ولا يعرض شعار تسجيل الدخول.
توضح لقطة الشاشة هذه أن شعار تسجيل الدخول يتم عرضه عند تكوين PuTTY لإرسال اسم المستخدم إلى الموجه.
قبل إصدار أوامر debug الموضحة هنا، راجع المعلومات المهمة في أوامر تصحيح الأخطاء. يتم دعم بعض أوامر showبواسطة أداة مترجم الإخراج (المسجلة للعملاء فقط)، والتي تتيح لك عرض تحليل إخراج أمر show.
debug ip ssh يعرض رسائل تصحيح الأخطاء لـ SSH.
show ssh يعرض حالة اتصالات خادم SSH.
carter#show ssh
Connection Version Encryption State Username
0 2.0 DES Session started cisco
show ip ssh يعرض الإصدار وبيانات التكوين لـ SSH.
carter#show ip ssh
SSH Enabled - version 2.0
Authentication timeout: 120 secs; Authentication retries: 3
00:23:20: SSH0: starting SSH control process
00:23:20: SSH0: sent protocol version id SSH-2.0-Cisco-1.25
00:23:20: SSH0: protocol version id is - SSH-2.0-1.2.26
00:23:20: SSH0: SSH_SMSG_PUBLIC_KEY msg
00:23:21: SSH0: SSH_CMSG_SESSION_KEY msg - length 112, type 0x03
00:23:21: SSH: RSA decrypt started
00:23:21: SSH: RSA decrypt finished
00:23:21: SSH: RSA decrypt started
00:23:21: SSH: RSA decrypt finished
00:23:21: SSH0: sending encryption confirmation
00:23:21: SSH0: keys exchanged and encryption on
00:23:21: SSH0: SSH_CMSG_USER message received
00:23:21: SSH0: authentication request for userid cisco
00:23:21: SSH0: SSH_SMSG_FAILURE message sent
00:23:23: SSH0: SSH_CMSG_AUTH_PASSWORD message received
00:23:23: SSH0: authentication successful for cisco
00:23:23: SSH0: requesting TTY
00:23:23: SSH0: setting TTY - requested: length 24, width 80; set:
length 24, width 80
00:23:23: SSH0: invalid request - 0x22
00:23:23: SSH0: SSH_CMSG_EXEC_SHELL message received
00:23:23: SSH0: starting shell for vty
ملاحظة: هذا هو إخراج جهاز Solaris.
rtp-evergreen.rtp.cisco.com#ssh -c 3des -l cisco -v 10.31.1.99
rtp-evergreen#/opt/CISssh/bin/ssh -c 3des -l cisco -v 10.13.1.99
SSH Version 1.2.26 [sparc-sun-solaris2.5.1], protocol version 1.5.
Compiled with RSAREF.
rtp-evergreen: Reading configuration data /opt/CISssh/etc/ssh_config
rtp-evergreen: ssh_connect: getuid 0 geteuid 0 anon 0
rtp-evergreen: Allocated local port 1023.
rtp-evergreen: Connecting to 10.13.1.99 port 22.
rtp-evergreen: Connection established.
rtp-evergreen: Remote protocol version 2.0,
remote software version Cisco-1.25
rtp-evergreen: Waiting for server public key.
rtp-evergreen: Received server public key (768 bits)
and host key (512 bits).
rtp-evergreen: Host '10.13.1.99' is known and matches the host key.
rtp-evergreen: Initializing random; seed file //.ssh/random_seed
rtp-evergreen: Encryption type: 3des
rtp-evergreen: Sent encrypted session key.
rtp-evergreen: Installing crc compensation attack detector.
rtp-evergreen: Received encrypted confirmation.
rtp-evergreen: Doing password authentication.
cisco@10.13.1.99's password:
rtp-evergreen: Requesting pty.
rtp-evergreen: Failed to get local xauth data.
rtp-evergreen: Requesting X11 forwarding with authentication spoofing.
Warning: Remote host denied X11 forwarding, perhaps xauth program
could not be run on the server side.
rtp-evergreen: Requesting shell.
rtp-evergreen: Entering interactive session.
تحتوي هذه الأقسام على إخراج تصحيح الأخطاء للعينة من العديد من التكوينات غير الصحيحة.
00:26:51: SSH0: starting SSH control process
00:26:51: SSH0: sent protocol version id SSH-2.0-Cisco-1.25
00:26:52: SSH0: protocol version id is - SSH-2.0-1.2.26
00:26:52: SSH0: SSH_SMSG_PUBLIC_KEY msg
00:26:52: SSH0: SSH_CMSG_SESSION_KEY msg - length 112, type 0x03
00:26:52: SSH: RSA decrypt started
00:26:52: SSH: RSA decrypt finished
00:26:52: SSH: RSA decrypt started
00:26:52: SSH: RSA decrypt finished
00:26:52: SSH0: sending encryption confirmation
00:26:52: SSH0: keys exchanged and encryption on
00:26:52: SSH0: SSH_CMSG_USER message received
00:26:52: SSH0: authentication request for userid cisco
00:26:52: SSH0: SSH_SMSG_FAILURE message sent
00:26:54: SSH0: SSH_CMSG_AUTH_PASSWORD message received
00:26:54: SSH0: password authentication failed for cisco
00:26:54: SSH0: SSH_SMSG_FAILURE message sent
00:26:54: SSH0: authentication failed for cisco (code=7)
00:26:54: SSH0: Session disconnected - error 0x07
00:39:26: SSH0: starting SSH control process
00:39:26: SSH0: sent protocol version id SSH-2.0-Cisco-1.25
00:39:26: SSH0: protocol version id is - SSH-2.0-W1.0
00:39:26: SSH0: SSH_SMSG_PUBLIC_KEY msg
00:39:26: SSH0: SSH_CMSG_SESSION_KEY msg - length 112, type 0x03
00:39:26: SSH0: Session disconnected - error 0x20
يمكن أن يؤدي التغيير في اسم المجال أو اسم المضيف إلى تشغيل رسالة الخطأ هذه. استخدم هذه الحلول البديلة:
املأ مفاتيح RSA بالأصفار وأعِد إنشاء المفاتيح.
crypto key zeroize rsa label key_name
crypto key generate rsa label key_name modulus key_size
إذا لم ينجح الحل السابق، فجرّب الخطوات التالية:
املأ جميع مفاتيح RSA بالأصفار.
أعِد تحميل الجهاز.
قم بإنشاء مفاتيح جديدة مسماة لـ SSH.
إذا تم رفض أوامر تكوين SSH الخاصة بك كأوامر غير قانونية، فأنت لم تقم بإنشاء زوج مفاتيح RSA بنجاح للموجّه الخاص بك. تأكد من تحديد اسم مضيف ومجال. ثم استخدم الأمر crypto key generate rsa لإنشاء أزواج من مفاتيح RSA وتمكين خادم SSH.
عند تكوين أزواج من مفاتيح RSA، يمكنك الحصول على رسائل الخطأ هذه:
لم يتم تحديد اسم المضيف.
يجب أن تستخدم أمر التكوين العام hostname لتكوين اسم مضيف للموجّه.
لم يتم تحديد مجال.
يجب أن تستخدم أمر التكوين العام ip domain-name لتكوين مجال مضيف للموجّه.
يقتصر عدد إتصالات SSH المسموح بها على الحد الأقصي لعدد الاتصالات التي vty تم تكوينها للموجه. يستخدم كل اتصال SSH
vty موردا.
-
يستخدم SSH إما أمانًا محليًا أو بروتوكول الأمان الذي تم تكوينه من خلال AAA على الموجّه لمصادقه المستخدم. عند تكوين AAA، يجب التأكد من عدم تشغيل وحدة التحكم وفقًا لـ AAA. قم بتطبيق كلمة أساسية في وضع التكوين العام لتعطيل AAA على وحدة التحكم.
-
No SSH server connections running:
carter#show ssh %No SSHv2 server connections running.
يقترح هذا الإخراج أن خادم SSH معطّل أو لم يتم تمكينه بشكل صحيح. إذا قمت بتكوين SSH بالفعل، فيُوصى بإعادة تكوين خادم SSH في الجهاز. أكمِل هذه الخطوات لإعادة تكوين خادم SSH على الجهاز.
- احذف أزواج مفاتيح RSA. بعد حذف أزواج مفاتيح RSA، يتم تعطيل خادم SSH تلقائيًا.
carter(config)#crypto key zeroize rsa
ملاحظة: من المهم إنشاء أزواج مفاتيح بحجم 768 على الأقل عند تمكين SSH v2.
تحذير: لا يمكن التراجع عن هذا الأمر بعد حفظ التكوين الخاص بك. وأيضًا، بعد حذف مفاتيح RSA، لا يمكنك استخدام الشهادات أو CA أو المشاركة في عمليات تبادل الشهادات باستخدام نظائر أمان IP (IPSec) الأخرى إلا إذا قمت بإعادة إنشاء مفاتيح RSA لإعادة تكوين إمكانية التشغيل البيني لـ CA، والحصول على شهادة CA، وطلب شهادتك الخاصة مجددًا.
2. أعِد تكوين اسم المضيف واسم المجال للجهاز.
carter(config)#hostname hostname
carter(config)#ip domain-name domainname
3. قم بإنشاء أزواج مفاتيح RSA للموجه الخاص بك. يؤدي هذا إلى تمكين SSH تلقائيًا.
carter(config)#crypto key generate rsa
ملاحظة: راجع crypto key generate rsa - مرجع أمر أمان Cisco IOS، الإصدار 12.3 للحصول على مزيد من المعلومات حول إستخدام هذا الأمر.
ملاحظة: يمكنك تلقي رسالة الخطأ SSH2 0: نوع رسالة غير متوقع تم إستلامه بسبب وجود حزمة مستلمة لا يمكن فهمها بواسطة الموجه. قم بزيادة طول المفتاح أثناء قيامك بإنشاء مفاتيح rsa لبروتوكول ssh لحل هذه المشكلة.
4. قم بتكوين خادم SSH.
5. لتمكين أحد مبدّلات/موجّهات Cisco وتكوينه لخادم SSH، يجب عليك تكوين معلمات SSH. إذا لم تقم بتكوين معلمات SSH، سيتم استخدام القيم الافتراضية.
ip ssh {[timeout seconds] | [authentication-retries integer]}
carter(config)# ip ssh
معلومات ذات صلة
المراجعة | تاريخ النشر | التعليقات |
---|---|---|
3.0 |
09-Aug-2023 |
إخلاء المسؤولية القانوني المحدث والنص البديل والتنسيق. |
1.0 |
10-Sep-2001 |
الإصدار الأولي |