المحتويات

المقدمة

الحل

معلومات أساسية

تكوين SSH و SCP

استكشاف الأخطاء وإصلاحها

المقدمة

يصف هذا المستند كيفية إستخدام خيار -o لضمان نجاح SCP من العملاء على أجهزة OpenSSH9.0 إلى أجهزة Cisco IOS® XE.

الحل

يمكن إستخدام الخيار -o على الإصدارات الأحدث من OpenSSH باستخدام أمر SCP لإجبار SCP على إستخدامه لنقل الملف بدلا من SFTP.

scp -O file.ext username@192.0.2.1:file.ext

معلومات أساسية

يمكن إستخدام SCP لنقل الملفات بين عميل SCP وخادم SCP. يستخدم SCP جلسة SSH للمصادقة.  وبمجرد مصادقة المستخدم يتم فتح قناة أخرى لنقل الملف باستخدام SCP.  في OpenSSH9.0 والإصدارات الأعلى، لا يزال SSH يستخدم للمصادقة، ولكن SFTP يتم إستخدامه لنقل الملفات بدلا من SCP.  وهذا يؤدي إلى حدوث مشكلة مع الإصدارات الحالية من Cisco IOS XE لأن SFTP غير مدعوم حاليا لنقل الملفات عبر SSH. تنجح جلسة SSH وهناك سجل نجاح تسجيل الدخول في المخزن المؤقت syslog.  ومع ذلك، يتم إغلاق الاتصال بشكل مفاجئ عندما يحاول عميل SCP بدء نقل SFTP.

تكوين SSH و SCP

المتطلبات الأساسية لاستخدام عميل SCP لنقل ملف إلى جهاز Cisco IOS XE.

- يجب تكوين SSH

- يجب تكوين تسجيل الدخول المحلي أو AAA

- مستوى الامتياز 15 مطلوب للمستخدم من أجل SCP

- يجب تمكين خادم SCP

هنا مثال على التكوين

# configure SSH

hostname c8000v

ip domain name cisco.com

crypto key generate rsa

# optional - use ssh version 2

ip ssh version 2

# verify the SSH server is online

show ip ssh

# create a user with privilege level 15

username cisco privilege 15 password 0 cisco

# configure the vty line to use local login and allow ssh

line vty 0 4

login local

transport input ssh

# Enable the SCP server

ip scp server enable

تلميح: يمكن العثور على معلومات إضافية حول تكوين SSH هنا.

ملاحظة: يمكن إستخدام المصادقة والتفويض والمحاسبة (AAA) بدلا من تسجيل الدخول المحلي.

بمجرد تنفيذ التكوين، يمكنك إدخال SSH/SCP إلى الجهاز باستخدام عنوان IP قابل للوصول على الجهاز.

من جهاز Linux، أنت يستطيع استعملت هذا أمر مع العنوان للجهاز:

- ssh cisco@192.0.2.1

- scp file.ext cisco@192.0.2.1:file.ext

ملاحظة: بشكل افتراضي، يتم نسخ الملف إلى bootflash.

استكشاف الأخطاء وإصلاحها

في حالة مواجهة المشكلة، تحقق من هذه الأعراض:

1. يعرض إصدار OpenSSH للعميل 9.0 أو أعلى.

jeff@jeff-virtual-machine:~$ ssh -V

OpenSSH_9.0p1 Ubuntu-1ubuntu7, OpenSSL 3.0.5 5 Jul 2022

2. يظهر العميل الاتصال مغلقا بشكل مفاجئ دون أي خطأ أو نقل ملفات.

jeff@jeff-virtual-machine:~$ scp test.txt cisco@192.0.2.1:test.txt

(cisco@192.0.2.1) Password:

scp: Connection closed

3. في الموجه، يظهر syslog اتصال SSH الناجح ولكن لم يتم نقل الملف.

*Mar 26 18:06:57.290: %SEC_LOGIN-5-LOGIN_SUCCESS: Login Success [user: cisco] [Source: 192.0.2.2] [localport: 22] at 18:06:57 UTC Sun Mar 26 2023

4.  لا تعرض تصحيحات SCP على الموجه أي معلومات.

c8000v#debug ip scp

Incoming SCP debugging is on

5.  SCP مع خيار -v يعرض سجلات تصحيح الأخطاء التي ترسل النظام الفرعي SFTP.

scp -v test.txt cisco@192.0.2.1:test.txt

Executing: program /usr/bin/ssh host 192.0.2.1, user cisco, command sftp

OpenSSH_9.0p1 Ubuntu-1ubuntu7, OpenSSL 3.0.5 5 Jul 2022

<snip>

debug1: Entering interactive session.

debug1: pledge: filesystem

debug1: Sending environment.

debug1: channel 0: setting env LANG = "en_US.UTF-8"

debug1: Sending subsystem: sftp

debug1: client_input_channel_req: channel 0 rtype exit-status reply 0

scp: Connection closed

6. تبحث تصحيح أخطاء SSH على الموجه show ssh عن نظام فرعي SFTP ثم تغلق الاتصال.

c8000v#debug ip ssh detail

ssh detail messages debugging is on

*Mar 24 14:25:05.074: SSH: MD5 compliance exception Registered

*Mar 24 14:25:05.074: SSH1: starting SSH control process

*Mar 24 14:25:05.074: SSH1: sent protocol version id SSH-2.0-Cisco-1.25

*Mar 24 14:25:05.075: SSH1: protocol version id is - SSH-2.0-OpenSSH_9.0p1 Ubuntu-1ubuntu7 <snip>

*Mar 24 14:25:07.370: %SEC_LOGIN-5-LOGIN_SUCCESS: Login Success [user: cisco] [Source: 10.10.10.10] [localport: 22] at 14:25:07 UTC Fri Mar 24 2023

*Mar 24 14:25:07.379: SSH2 1: channel open request *Mar 24 14:25:07.389: SSH2 1: env request

*Mar 24 14:25:07.389: SSH2 1: subsystem request *Mar 24 14:25:07.389: SSH2 1: subsystem message received

*Mar 24 14:25:07.389: SSH2 1: searching for subsystem sftp for vty

*Mar 24 14:25:07.490: SSH1: Session terminated normally

7. أخيرا، ينجح بروتوكول SCP مع خيار -o.

jeff@jeff-virtual-machine:~$ scp -O test.txt cisco@192.0.2.1:test.txt

(cisco@192.0.2.1) Password:

test.txt 100% 28 2.7KB/s 00:00