پسورد روتر

عوض کردن پسورد روتر سیسکو

عوض کردن پسورد روتر و سوئیچ سیسکو در ظاهر یک خط دستور است، اما در عمل همان جایی است که بیشتر شبکه‌ها ضعیف‌اند: رمز enable با enable password ، رمزهای type 7 که با یک ابزار آنلاین در چند ثانیه باز می‌شوند، Telnet باز روی خطوط VTY ، و یوزری که سال‌هاست همان رمز پیش‌فرض را دارد. اگر رمز فعلی را دارید، این راهنما نشان می‌دهد چطور رمزها را درست عوض کنید؛ اگر رمز را ندارید، اول سراغ ریست پسورد روتر سیسکو یا ریست پسورد سوئیچ سیسکو بروید.

همه دستورها روی IOS و IOS XE (روتر ISR ، Catalyst 8000 ، سوئیچ‌های کاتالیست) یکسان کار می‌کنند و توصیه‌ها بر پایه راهنمای رسمی Harden Cisco IOS Devices است.

تعویض پسورد سیسکو در یک نگاه

رمز enable enable algorithm-type scrypt secret ؛ نه enable password
یوزر محلی username … algorithm-type scrypt secret ؛ نه password
نوع رمز توصیه‌شده type 9 (scrypt) و بعد type 8 (PBKDF2-SHA256)
رمزهای ضعیف type 0 (متن ساده) ، type 7 (قابل بازگشایی) ، type 4 (منسوخ)
دسترسی راه دور فقط SSH نسخه ۲ روی VTY ، با exec-timeout
AAA با احتیاط فعال شود؛ همیشه یک یوزر محلی و مسیر fallback داشته باشید

سطح‌های دسترسی در IOS

وقتی به روتر یا سوئیچ وصل می‌شوید، اول با یوزر و پسورد لاگین می‌کنید و معمولاً در User EXEC mode (prompt با >) قرار می‌گیرید که فقط اجازه دیدن محدود دارد. با دستور enable و وارد کردن رمز enable به Privileged EXEC mode (prompt با #) می‌روید و از آنجا با configure terminal وارد حالت کانفیگ می‌شوید.

User Access Verification
Username: netadmin
Password:
BR-EDGE-01> enable
Password:
BR-EDGE-01# configure terminal
BR-EDGE-01(config)#

IOS شانزده سطح دسترسی (Privilege Level) از ۰ تا ۱۵ دارد:

سطح معنی کاربرد
0 فقط چند دستور پایه مثل logout و enable به‌ندرت استفاده می‌شود
1 User EXEC ؛ پیش‌فرض بعد از لاگین دیدن محدود
2 تا 14 سطح‌های سفارشی تعریف نقش‌هایی مثل اپراتور NOC با privilege exec level
15 Privileged EXEC ؛ دسترسی کامل مدیر شبکه

برای اینکه یوزر مستقیماً بعد از لاگین در سطح ۱۵ باشد، سطح را روی خود یوزر تعریف کنید؛ مثال‌ها را در ادامه می‌بینید.

انواع رمز در سیسکو و چرا type 7 امن نیست

عددی که در کانفیگ جلوی رمز می‌بینید، نوع ذخیره آن را نشان می‌دهد. این جدول مهم‌ترین بخش این مطلب است:

Type روش امنیت دستور ایجاد
0 متن ساده هیچ password … بدون رمزنگاری
7 رمز Vigenère سیسکو بسیار ضعیف؛ در چند ثانیه برگشت‌پذیر service password-encryption
5 هش MD5 قابل‌قبول ولی قدیمی enable secret در نسخه‌های قدیمی
4 SHA-256 با پیاده‌سازی معیوب منسوخ؛ استفاده نکنید —
8 PBKDF2 با SHA-256 خوب algorithm-type sha256 secret
9 scrypt بهترین گزینه موجود algorithm-type scrypt secret

سیسکو در راهنمای Hardening صریح می‌گوید الگوریتم service password-encryption «یک رمز ساده Vigenère است و برای محافظت از کانفیگ در برابر تحلیل جدی طراحی نشده»؛ یعنی رمزهای type 7 را باید مثل متن ساده حساب کنید. این دستور فقط جلوی کسی را می‌گیرد که از پشت سر شما صفحه را می‌بیند. توصیه رسمی سیسکو: هر جا ممکن است از type 9 (scrypt) استفاده کنید.

تعویض رمز enable و یوزرها

BR-EDGE-01# configure terminal
! 1) enable secret (type 9) ; removes the old weak "enable password" if any
BR-EDGE-01(config)# enable algorithm-type scrypt secret N3w-Str0ng-Enable
BR-EDGE-01(config)# no enable password
!
! 2) change an existing user, or create a new admin user
BR-EDGE-01(config)# username netadmin privilege 15 algorithm-type scrypt secret N3w-Str0ng-User
!
! 3) remove old / default users
BR-EDGE-01(config)# no username cisco
BR-EDGE-01(config)# no username test
!
! 4) basic password policy
BR-EDGE-01(config)# security passwords min-length 10
BR-EDGE-01(config)# service password-encryption
BR-EDGE-01(config)# end
BR-EDGE-01# copy running-config startup-config

چند نکته درباره این دستورها:

  • اگر هم enable secret و هم enable password تعریف شده باشد، IOS فقط secret را قبول می‌کند؛ اما بهتر است password قدیمی را کامل حذف کنید تا در کانفیگ نماند.
  • service password-encryption فقط رمزهایی که هنوز متن ساده‌اند (مثل رمز خطوط console) را به type 7 تبدیل می‌کند؛ روی secretها اثری ندارد. آن را جایگزین secret ندانید.
  • روی نسخه‌های خیلی قدیمی IOS که algorithm-type را نمی‌شناسند، همان enable secret و username … secret معمولی (type 5) را استفاده کنید و برنامه آپگرید داشته باشید.
  • قبل از بستن جلسه فعلی، در یک پنجره جدید با یوزر و رمز جدید لاگین کنید تا مطمئن شوید خودتان را قفل نکرده‌اید.

امن کردن Console و VTY

عوض کردن رمز بدون بستن مسیرهای ورود، نصف کار است. خطوط VTY باید فقط SSH بپذیرند و نشست بی‌کار بعد از چند دقیقه بسته شود:

BR-EDGE-01(config)# ip domain name shabake.local
BR-EDGE-01(config)# crypto key generate rsa modulus 2048
BR-EDGE-01(config)# ip ssh version 2
!
BR-EDGE-01(config)# line console 0
BR-EDGE-01(config-line)# login local
BR-EDGE-01(config-line)# exec-timeout 10 0
!
BR-EDGE-01(config)# line vty 0 15
BR-EDGE-01(config-line)# login local
BR-EDGE-01(config-line)# transport input ssh
BR-EDGE-01(config-line)# exec-timeout 10 0
BR-EDGE-01(config-line)# access-class MGMT-ONLY in
!
BR-EDGE-01(config)# ip access-list standard MGMT-ONLY
BR-EDGE-01(config-std-nacl)# permit 10.10.99.0 0.0.0.255
!
BR-EDGE-01(config)# login block-for 120 attempts 5 within 60

دستور login block-for بعد از ۵ تلاش ناموفق در ۶۰ ثانیه، ورود جدید را ۱۲۰ ثانیه متوقف می‌کند و جلوی حدس رمز خودکار را می‌گیرد. تغییر پورت پیش‌فرض را هم در مطلب تعویض پورت تلنت روتر سیسکو و مجموعه کامل تنظیمات امنیتی را در ایمن‌سازی روتر سیسکو ببینید.

AAA ؛ با احتیاط فعال کنید

در شبکه سازمانی، به‌جای یوزر محلی روی ده‌ها دستگاه، احراز هویت متمرکز با سرور TACACS+ یا RADIUS (مثل Cisco ISE) انجام می‌شود. دستور aaa new-model مدل AAA را فعال می‌کند؛ برخلاف تصور رایج، این دستور چیزی را ریست نمی‌کند و اگر بدون تعریف روش احراز هویت زده شود، ممکن است دسترسی شما را ببندد. ترتیب درست:

BR-EDGE-01(config)# username netadmin privilege 15 algorithm-type scrypt secret N3w-Str0ng-User
BR-EDGE-01(config)# tacacs server ISE-1
BR-EDGE-01(config-server-tacacs)# address ipv4 10.10.99.50
BR-EDGE-01(config-server-tacacs)# key Sh4red-K3y
BR-EDGE-01(config)# aaa new-model
BR-EDGE-01(config)# aaa authentication login default group tacacs+ local
BR-EDGE-01(config)# aaa authorization exec default group tacacs+ local if-authenticated
BR-EDGE-01(config)# aaa accounting exec default start-stop group tacacs+

کلمه local در انتهای هر خط، همان مسیر fallback است: اگر سرور TACACS+ در دسترس نباشد، یوزر محلی کار می‌کند. قبل از بستن نشست، از یک پنجره جدید ورود را تست کنید.

چک‌لیست

مورد دستور بررسی وضعیت مطلوب
enable password قدیمی show running-config | include enable فقط enable secret 9 وجود دارد
یوزرهای محلی show running-config | include username همه با secret 9 ؛ یوزر پیش‌فرض یا اضافه نیست
Telnet show running-config | section line vty فقط transport input ssh
SSH نسخه ۲ show ip ssh SSH Enabled – version 2.0
نشست‌های باز show users نشست ناشناس وجود ندارد

پرسش‌های متداول

enable password با enable secret چه فرقی دارد؟
enable password با الگوریتم ضعیف یا متن ساده ذخیره می‌شود؛ enable secret هش یک‌طرفه است. همیشه secret و ترجیحاً با algorithm-type scrypt.

service password-encryption کافی است؟
نه. خروجی آن type 7 است که به گفته خود سیسکو باید مثل متن ساده با آن رفتار کرد.

رمز را فراموش کرده‌ام؛ چه کنم؟
از روش بازیابی پسورد با دسترسی کنسول استفاده کنید؛ لینک آموزش روتر و سوئیچ در ابتدای مطلب است.

aaa new-model را زدم و دسترسی قطع شد.
اگر هنوز نشست کنسول باز دارید، یک روش احراز هویت با fallback محلی تعریف کنید. اگر کاملاً قفل شده‌اید، باید از روش بازیابی پسورد استفاده کنید.

منابع رسمی

پشتیبانی با AKA NET

برای ممیزی امنیتی کانفیگ روترها و سوئیچ‌ها، راه‌اندازی احراز هویت متمرکز با ISE و Hardening دستگاه‌های سیسکو با آکانت (AKA NET) تماس بگیرید.

تلفن: 09121308444  |  ایمیل: aka@aka.ir  |  aka.ir

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *