خوش آموز اولین و تنها سایت آموزشی %100 رایگان ایران با 5971 آموزش متنی، تصویری و ویدئویی

فعال سازی SSH در روترهای سیسکو

فعال سازی SSH در روترهای سیسکو

کد مطلب : 5647 PDF

SSH یا Secure Shell اساسا یک روش امن برای دسترسی و ارسال دستورات CLI به روتر از طریق شبکه می باشد و شما در بدین روش نیازی نیست که بصورت Direct یا مستقیم با کابل به دستگاه متصل شوید و حتما در محل حضور داشته باشید. شما با استفاده از Telnet هم می توانید پیکربندی دستگاه را با استفاده از دستورات و از راه دور به صورت ریموت انجام دهید ولی Telnet امن نیست و تمامی دستورات بصورت Clear Text یا متن ساده ارسال می شوند و بر خلاف Telnet، پروتکل SSH از رمزگذاری استفاده می کند که محرمانه بودن و یکپارچگی داده ها را تضمین می کند. دو نسخه از SSH وجود دارد، که در آن SSH v2 بهبود یافته SSH V1 به دلیل حفره های امنیتی موجود در آن(V1) است. به طور پیش فرض اگر SSH را در Cisco IOS Router فعال کنیم، از هر دو نسخه پشتیبانی می کند.

دوره آموزش رایگان ریاضی پایه و جبر

Enable SSH in Cisco IOS Router

ما می توانیم فرایند را به 4 مرحله ساده زیر تقسیم کنیم:
آماده سازی دستگاه که شامل تغییر Hostname دستگاه، domain name، username، passwords
آماده سازی شبکه که شامل آدرس دهی و روتینگ است.
کلید RSA را ایجاد و SSH را فعال کنید.
اعمال SSH transport برای VTY ها

از اینجا به بعد این پست به پیکربندی SSH در دستگاه سیسکو اختصاص دارد. ولی توجه داشته باشید که برای پیکربندی این موارد شما نیاز است که برای بار اول که دستگاه شما هیچ کانفیگی ندارد، بدان با کابل کنسول متصل شوید. پس از اینکه این تنظیمات را در دستگاه خود فعال کردید، از این به بعد می توایند به صورت SSH بدان متصل شوید.

1. Device preparation

در گام نخست که آماده سازی دستگاه بود، باید برای دستگاه خود نام اختصاص دهید. یعنی Hostname آن باید تغییر کند. برای مثال ما برای اعتبار سنجی از دیتابیس لوکال خود دستگاه برای اعتبار سنجی استفاده می کنیم.
بنابراین نیاز است که یک نام کاربری و پسورد برای روتر ایجاد کنیم زیرا SSH بدون آن کار نخواهد کرد. برای انجام اینکار:

Router(config)#hostname GeekRtr
 GeekRtr(config)#ip domain-name mustbegeek.com
 GeekRtr(config)#username admin password letmein123
 GeekRtr(config)#username admin privilege 15
 GeekRtr(config)#username monitor password letmesee123
 GeekRtr(config)#enable password letmeconfig123

در دستور فوق دو User با نام های Admin و monitor با سطح دسترسی متفاوت ایجاد کردیم. این مورد جلوتر در بخش Verification توضیح داده خواهد شد.

2. Network preparation

خب، حالا به سراغ مرحله بعد، پیکربندی شبکه می رویم. پیکربندی شبکه ممکن است متفاوت باشد، بستگی به توپولوژی شبکه ای دارد که با آن کار می کنید. در این مثال، ما از یک توپولوژی ساده استفاده می کنیم که در آن یک اینترفیس روتر به سوئیچ سیسکو و از سوئیچ به یک کامپیوتر متصل است. اینترفیس F0/1 همان چیزی است که در تصویر زیر مشاهده می کنید که بدان IP دستی تخصیص داده شده و علاوه بر آن ما یک اینترفیس loopback interface هم در روتر ایجاد کرده ایم.

فعال سازی SSH در روترهای سیسکو . آموزشگاه رایگان خوش آموز

پس ما اینترفیس F0/1 را آدرس دهی می کنیم و loopback interface را هم ایجاد می کنیم.

GeekRtr(config)#interface fa0/1
GeekRtr(config-if)#ip address 192.168.0.1 255.255.255.0
GeekRtr(config-if)#no shutdown
GeekRtr(config-if)#exit
GeekRtr(config)#interface loopback0
GeekRtr(config-if)#ip address 1.1.1.1 255.255.255.255
GeekRtr(config-if)#no shutdown
GeekRtr(config-if)#exit

از آنجایی که توپولوژی فوق بسیار ساده بود، پس نیاز به روت نوشتن نیست و نباید ارتباط مشکلی وجود داشته باشد ولیکن اگر تعداد روترها بیشتر بود باید روت ها را هم مشخص کنیم تا بتوانیم روتر را پس از قرار دادن در جای خود(در Rack) بدان ارتباط برقرار نماییم. ما هم اکنون باید بتوانیم از loopback interface، کامپیوتر خود را ping کنیم.

GeekRtr#ping 192.168.0.2 source loopback0
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.2, timeout is 2 seconds:
Packet sent with a source address of 1.1.1.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms

پس پینگ با موفقیت از طرف کامپیوتر Reply شد و ارتباط برقرار است. پس حالا که تنظیمات شبکه به خوبی انجام شده، می توانیم تمرکز خود را روی پیکربندی SSH قرار دهیم.

3. Generate RSA key and activate SSH

در این مرحله ما قصد داریم کلید RSA ایجاد کنیم. یعنی کلیدی که با استفاده از الگوریم RSA ایجاد می شود. که توسط SSH برای رمزگذاری داده ها استفاده می شود. شما نیاز دارید سایز Key ای که ایجاد می شود را مشخص کنید که در دستورات در زمان پیکربندی بدان خواهیم رسید. هر چه عدد بالاتر باشد، رمزنگاری قوی تری را خواهید داشت ولی زمان بیشتری برای generate کردن Key صرف خواهد شد. در این مثال زیر، ما از 1024 به عنوان اندازه سایز اصلی استفاده می کنیم، در حالی که اندازه پیش فرض 512 است.
GeekRtr(config)#crypto key generate rsa
The name for the keys will be: GeekRtr.mustbegeek.com
Choose the size of the key modulus in the range of 360 to 2048 for your
General Purpose Keys. Choosing a key modulus greater than 512 may take
a few minutes.

How many bits in the modulus [512]: 1024 % Generating 1024 bit RSA keys, keys will be non-exportable...[OK]

به محض Enter کردن دستور crypto key generate rsa، پیغام How many bits in the modulus [512]: ظاهر خواهد شد که اندازه بصورت پیشفرض 512 می باشد. شما می توانید آن را تغییر دهید. ما اندازه 1024 را وارد کردیم ولی شما نهایتا 2048 را به عنوان سایز این Key می توانید وارد کنید.
پس اتمام این دستورات، پیغام زیر خواهید دید که نشان از فعال شدن SSH روی روتر شما دارد.
*Mar 1 00:01:21.727: %SSH-5-ENABLED: SSH 1.99 has been enabled

برای تایید آن می توانید دستور show ip ssh را وارد کنید و خروجی چیزی شبیه به این خواهد بود:
GeekRtr#show ip ssh
SSH Enabled - version 1.99
Authentication timeout: 120 secs; Authentication retries: 3

شاید برای شما جالب باشد که چرا ورژن SSH را 1.99 نمایش می دهد و در حالی که انتظار V1 یا V2 را دارید. دلیلش این است که که به طور پیش فرض سیسکو پشتیبانی از هر دو SSH v1 و v2 را دارد و عدد 1.99 نشان دهنده سازگاری با گذشته یا backward compatibility است. با این حال، با توجه به بهترین روش های امنیتی، توصیه می شود SSH v1 را غیرفعال کنید. برای انجام این کار، ما می توانیم به سادگی دستور زیر را برای غیرفعال کردن SSH V1 وارد کنیم:
GeekRtr(config)#ip ssh version 2

حالا دوباره دستور show ip ssh را وارد کنید.
GeekRtr#show ip ssh
 SSH Enabled - version 2.0
Authentication timeout: 120 secs; Authentication retries: 3

خب، همانطور که در خروجی دستور فوق مشخص است، version 2.0 عنوان شده است و با انجام اینکار به سراغ آخرین مرحله کار می رویم.

4. Apply SSH transport for the vtys

SSH در مرحله قبل فعال شده است. اکنون فقط دو چیز برای انجام دادن وجود دارد: SSH را روی virtual terminal line قرار دهید و سپس از طریق local username که در مرحله آماده سازی دستگاه ایجاد کرده اید، روش login authentication را تعیین کنید. ما این کار را با استفاده از دستور زیر انجام خواهیم داد:

GeekRtr(config)#line vty 0 4
 GeekRtr(config-line)#transport input ssh
 GeekRtr(config-line)#login local

دستور line vty 0 4 به معنی حداکثر 5 کانکشن همزمان به روتر می باشد. مثلا اگر نیاز به 8 کانکشن همزمان به روتر دارید، باید 0 7 را وارد می کردید و حداکثر تا 16 کانکشن همزمان می توانید داشته باشید. در ادامه هم دستور transport input ssh کلا Telnet را در روتر غیرفعال کرده و SSH را فعال می کند.اگر این دستور را وارد کنید، SSH تنها روشی است که می توانید برای دسترسی به روتر استفاده کنید. اگر به هر دو برای اتصال به روتر نیاز دارید، به جایی SSH در دستور فوق از all استفاده کنید.
دستور login local به سیستم برایauthenticate هر بار لاگین به دیتابیس لوکال نام کاربری استفاده می شود و به یاد داشته باشید که دو نام کاربری محلی را قبل ایجاد کرده ایم.
با همین دستورات و اعمال پیکربندی، هم اکنون SSH در روی روتر فعال شده است.

Verification

اکنون برای تست اتصال SSH از روی یک سیستم کلاینتی، اقدام می کنیم. برای این کار از یک نرم افزار می توانید استفاده کنید که برای اینکار از Putty استفاده می کنیم. شما می توانید آدرس مربوط به Loopback یا یکی از اینترفیس های فیزیکی روتر را که آدرس دهی کرده اید را وارد کنید و بدان متصل شوید.

فعال سازی SSH در روترهای سیسکو . آموزشگاه رایگان خوش آموز

سپس پنجره لاگین ظاهر می شود و در مرحله اول دو User ایجاد کرده بودیم، در اینجا کاربر admin و پسورد letmein123 را وارد می کنیم.

فعال سازی SSH در روترهای سیسکو . آموزشگاه رایگان خوش آموز

بدین ترتیب اگر نام کاربری و پسورد را صحیح وارد کرده باشید، می توانید به روتر به صورت SSH متصل شوید. در دستورات مرحله آماده سازی ما Privilage کاربر Admin را 15 تنظیم کردیم. وقتی در مود اول یعنی user exec mode هستید، برای وارد شدن به مود Privilage باید دستور enable را وارد کنید و پسورد را وارد و سپس وارد مود Privilage شوید. ولی کاربر Admin چون Privilage 15 را دارد نیاز به وارد کردن رمز عبور برای وارد شدن به مود Privilage ندارد. اگر به شکل بالا دقت کنید، بعد از نام روتر علامت # قرار گرفته شده است که این در مود Privilage نشان داده می شود. ولی همین کار را با کاربر monitor انجام دهید. با این کاربر حتما باید پسورد برای وارد شدن فعال شود.دستور Enable password یا Enable secret برای این کاربر باید در مرحله اول وارد شوید و پسوردی تخصیص داده شود.

Managing the SSH session

شما نیاز است که ببینید چه کسانی به روتر شما متصل شده اند. اینکار به راحتی با استفاده از دستور show users امکان پذیر می باشد:
GeekRtr#show users
 Line User Host(s) Idle Location
0 con 0 idle 00:23:19
* 66 vty 0 admin idle 00:00:00 192.168.0.2
67 vty 1 monitor idle 00:00:06 192.168.0.2

Interface User Mode Idle Peer Address

خروجی دستور فوق نشان می دهد که هر دو کاربر Admin و Monitor به سیستم لاگین شده اند. اما می بینید که هر کدام از آنها دارای Session های مختلفی هستند. همانطور که مشاهده می کنید، برای admin علامت * قرار گرفته شده است که بالاتر گفته شد این کاربر برای وارد شدن به مود privileged EXEC mode نیازی به وارد کردن پسورد ندارد. اگر شما بخواهید می توانید Session کاربر را ببندید. برای اینکار به Session number که در خروجی دستور فوق نشان داده شده، نیاز دارید.
مثلا برای کاربر monitor مقدار Session عدد 1 می باشد. پس دستور زیر را وارد کنید:

GeekRtr#clear line vty 1
[confirm]
[OK]

هنگامی که Confirm ظاهر شد، برای تایید Enter کنید. اکنون اگر دوباره دستور Show users را وارد کنید، خواهید دید که فقط کاربر Admin به روتر لاگین است.

GeekRtr#show users Line User Host(s) Idle Location
0 con 0 idle 00:32:59
* 66 vty 0 admin idle 00:00:00 192.168.0.2

Interface User Mode Idle Peer Address





دیدگاه ها(0)

دیدگاه خود را ثبت کنید:

لطفا پیش از ارسال دیدگاه ، به نکات زیر توجه فرمایید :

- از نوشتن دیدگاه های غیر مرتبط با پست جدا خودداری کنید.
- قبل از ارسال دیدگاه حتما متن پست و نظرات سایر دوستان را بخوانید . نظرات اسپم و تکراری تایید نخواهند شد.
- نظر شما ممکن است بدون پاسخ تایید شوند که در این صورت باید منتظر پاسخ از سوی دیگر کاربران باشید .
- چرا آموزش های سایت خوش آموز در قالب فایل pdf به صورت یکجا ارائه نمی شوند؟
- چرا برخی پرسش های کاربران پاسخ داده نمی شوند؟
- لطفا انتقادات و پیشنهادات و همچنین درخواست های خود را از طریق ایمیل khoshamoz[at].hotmail.com ارسال نمایید