المقدمة
يصف هذا المستند عملية التكوين لعرض التكوين الجاري تشغيله بالكامل للمستخدمين الذين لديهم مستويات امتياز منخفضة.
المتطلبات الأساسية
المتطلبات
مطلوب فهم أساسي لمستويات امتيازات Cisco لفهم هذا المستند، وتكفي معلومات الخلفية لشرح فهم مستويات الامتيازات المطلوبة.
المكونات المستخدمة
المكونات المستخدمة لأمثلة التكوين داخل هذا المستند كانت ASR1006 ولكن أي جهاز Cisco IOS® أو Cisco IOS XE يعمل بشكل مماثل.
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.
معلومات أساسية
يصف هذا المستند خطوات التكوين في كيفية عرض التكوين الجاري تشغيله بالكامل للمستخدمين الذين قاموا بتسجيل الدخول إلى الموجه بمستويات امتيازات منخفضة. لفهم المشكلة التالية والحل البديل، من الضروري فهم مستويات الامتيازات. تتراوح مستويات الامتيازات المتاحة من 0 إلى 15، وتسمح للمسؤول بتخصيص الأوامر المتوفرة على أي مستوى امتياز. بشكل افتراضي، تكون مستويات الامتيازات الثلاثة على الموجه:
- المستوى 0 - يتضمن الأوامر الأساسية فقط (تعطيل، تمكين، إنهاء، تعليمات، وتسجيل الخروج)
- المستوى 1 - يتضمن جميع الأوامر المتوفرة في وضع أمر EXEC للمستخدم
- المستوى 15 - يتضمن جميع الأوامر المتوفرة في وضع أمر EXEC ذي الامتيازات
لا يتم تحديد المستويات المتبقية بين هذين المستويين الأدنى والأقصى حتى يقوم المسؤول بتعيين الأوامر و/أو المستخدمين لهم. لذلك، يمكن أن يعين المسؤول مستخدمين مستويات امتياز مختلفة بين مستويات الامتياز الدنيا والقصوى هذه لفصل ما لدى المستخدمين المختلفين حق الوصول إليه أيضا. يمكن للمسؤول بعد ذلك تخصيص أوامر فردية (وخيارات أخرى متنوعة) لمستوى امتياز فردي لتوفير هذا المستوى لأي مستخدم بهذا المستوى. على سبيل المثال:
Router(config)# username user1 privilege 7 password P@ssw0rD1
Router(config)# privilege exec level 7 show access-lists
باستخدام هذا التكوين، عند اتصال المستخدم1 بالموجه، سيكون بإمكانهم تشغيل show access-lists
أمر، و/أو أي شيء آخر يمكن على مستوى هذا الامتياز. ومع ذلك، لا يمكن قول نفس الشيء عن تمكين show running-config
الأمر، كما تمت مناقشته لاحقا في بيان المشكلة.
مشكلة في التكوين
عند تكوين مستويات وصول مختلفة إلى الموجه لمستخدمين مختلفين، من التطبيقات الشائعة لمسؤول الشبكة أن يحاول تعيين مستخدمين معينين بحيث يكون لديهم حق الوصول إلى show
ولا توفر الوصول إلى أي configuration
أوامر. هذه مهمة بسيطة للمعظم show
أوامر، كما يمكنك منح الوصول من خلال تكوين بسيط كما يلي:
Router(config)# username test_user privilege 10 password testP@ssw0rD
Router(config)# privilege exec level 10 show
Router(config)# privilege exec level 10 show running-config
مع مثال التكوين هذا، يمكن أن يسمح السطر الثاني test_user
أن يتلقى منفذ إلى وفرة من العرض أمر متصل، أي يكون عادة لا يتوفر على هذا امتياز مستوى. ومع ذلك، فإن show running-config
يتم التعامل مع الأمر بشكل مختلف إلى معظم أوامر show. حتى مع وجود السطر الثالث من رمز المثال، يتم حذف/إختصاره فقط show running-config
معروض للمستخدم على الرغم من تحديد الأمر على مستوى الامتياز الصحيح.
User Access Verification
Username: test_user
Password:
Router#
Router#show privilege
Current privilege level is 10
Router#
Router#show running-config
Building configuration...
Current configuration : 121 bytes
!
! Last configuration change at 21:10:08 UTC Mon Aug 28 2017
!
boot-start-marker
boot-end-marker
!
!
!
end
Router#
وكما ترى، لا يعرض هذا الإخراج أي تكوين، ولن يكون مفيدا للمستخدم الذي يحاول جمع معلومات حول تكوين الموجه. وذلك لأن show running-config
يعرض الأمر كل الأوامر التي يمكن للمستخدم تعديلها عند مستوى امتيازاته الحالي. تم تصميم هذا كتكوين أمان لمنع المستخدم من الوصول إلى الأوامر التي تم تكوينها مسبقا من مستوى الامتيازات الحالي. هذه مشكلة عند محاولة إنشاء مستخدم له حق الوصول إلى أوامر show، as show running-config
هو أمر قياسي للمهندسين لجمعه في البداية عند أستكشاف الأخطاء وإصلاحها.
حل التكوين والتحقق
كحل لهذه المعضلة، هناك نسخة أخرى من التقليدية show run
أمر يتجاوز حدود الأمر هذه.
Router(config)# show running-config view full
Router(config)# privilege exec level 10 show running-config view full
إضافة view full
إلى الأمر، (وبالتالي مستوى الامتياز للأمر أن يسمح للمستخدم بالوصول إلى الأمر)، الآن يسمح للمستخدم بعرض الكامل show running-config
بدون أي أوامر محذوفة.
Username: test_user
Password:
Router#
Router#show privilege
Current privilege level is 10
Router#
Router#show running-config view full
Building configuration...
Current configuration : 2664 bytes
!
! Last configuration change at 21:25:45 UTC Mon Aug 28 2017
!
version 15.4
service timestamps debug datetime msec
service timestamps log datetime msec
no platform punt-keepalive disable-kernel-core
!
hostname Router
!
boot-start-marker
boot system flash bootflash:packages.conf
boot system flash bootflash:asr1000rp1-adventerprisek9.03.13.06a.S.154-3.S6a-ext.bin
boot-end-marker
!
vrf definition Mgmt-intf
!
address-family ipv4
exit-address-family
!
address-family ipv6
exit-address-family
!
enable password <omitted>
!
no aaa new-model
!
no ip domain lookup
!
subscriber templating
!
multilink bundle-name authenticated
!
spanning-tree extend system-id
!
username test_user privilege 10 password 0 testP@ssw0rD
!
redundancy
mode sso
!
cdp run
!
interface GigabitEthernet0/2/0
no ip address
shutdown
negotiation auto
!
interface GigabitEthernet0/2/1
no ip address
shutdown
negotiation auto
!
interface GigabitEthernet0
vrf forwarding Mgmt-intf
ip address <omitted>
negotiation auto
cdp enable
!
ip forward-protocol nd
!
control-plane
!
!
privilege exec level 10 show running-config view full
alias exec show-running-config show running-config view full
!
line con 0
stopbits 1
line aux 0
exec-timeout 0 1
no exec
transport output none
stopbits 1
line vty 0 4
login local
!
end
Router#
ومع ذلك، فإن هذا يثير السؤال، من خلال توفير وصول المستخدم إلى هذا الإصدار من الأمر، ألا يؤدي ذلك إلى زيادة المخاطر الأمنية الأولية التي كانت تحاول حلها من خلال تصميم إصدار محذوف؟
كحل بديل للحل ولضمان التناسق في تصميم شبكة آمن، يمكنك إنشاء اسم مستعار للمستخدم الذي يقوم بتشغيل الإصدار الكامل من show running-config
دون توفير الوصول/المعرفة للمستخدم، كما هو موضح هنا:
Router(config)# alias exec show-running-config show running-config view full
في هذا المثال show running-config
هو اسم الاسم المستعار، وعندما يتم تسجيل دخول المستخدم إلى الموجه، فيمكنه بعد ذلك إدخال اسم الاسم المستعار هذا بدلا من الأمر واستلام الإخراج المتوقع دون معرفة الأمر الفعلي الذي يتم تشغيله.
ملاحظة: يتطلب الأمر أيضا من إصدار 16.x، على حسب النظام الأساسي، إضافة أذونات إلى الملفات باستخدام الأمر (config)#file امتياز <level>.
القرار
في الختام، هذا مثال واحد فقط على كيفية الحصول على مزيد من التحكم عند إنشاء وصول ميزة المستخدم إداريا على مستويات مختلفة. هناك عدد كبير من الخيارات لإنشاء مستويات امتياز متنوعة والوصول إلى أوامر مختلفة، وهذا مثال على كيفية ضمان أن المستخدم show فقط ما زال لديه حق الوصول إلى التكوين الجاري تشغيله بالكامل عندما لا يكون لديه حق الوصول إلى أي أوامر تكوين.
معلومات ذات صلة