SSH روی روترها و سوئیچهای سیسکو یک کانال مدیریت رمزگذاریشده ایجاد میکند و جایگزین امن Telnet به شمار میرود. در Telnet همهٔ دادهها از جمله نام کاربری و رمز عبور بهصورت متن ساده منتقل میشوند، اما SSH ارتباط را رمزنگاری میکند. این متن یک الگوی مبتدی برای راهاندازی SSH ارائه میدهد که شامل تنظیم نام میزبان و دامنه، تولید کلید RSA، تعریف کاربر محلی، محدودکردن خطوط VTY و ترجیح نسخهٔ ۲ است.
چرا SSH جای Telnet؟
Telnet اطلاعات را بدون رمزنگاری ارسال میکند و هر کسی که در مسیر شبکه قرار داشته باشد میتواند آنها را ببیند. SSH این مشکل را با رمزنگاری کل ارتباط حل میکند. به همین دلیل، در محیطهای حرفهای Telnet تقریباً کنار گذاشته شده و SSH استاندارد مدیریت تجهیزات شبکه است.
پیشنیازها
پیش از تولید کلید رمزنگاری، دو مورد باید تنظیم شده باشند:
- نام میزبان (hostname): هویت دستگاه را مشخص میکند.
- نام دامنه (domain-name): برای تولید جفتکلید RSA لازم است. این نام میتواند در محیط آزمایشگاهی ساختگی باشد؛ مهم این است که پیش از تولید کلید تنظیم شده باشد.
الگوی پیکربندی
نمونهٔ فشردهٔ دستورات به این شکل است:
hostname BRANCH-R1
ip domain-name lab.local
crypto key generate rsa general-keys modulus 2048
username admin privilege 15 secret StrongPass
line vty 0 4
login local
transport input ssh
ip ssh version 2
نکتههای کلیدی این الگو:
- modulus 2048: در IOS و IOS-XE مدرن، حداقل ۲۰۴۸ نقطهٔ شروع متعارفی است، مگر اینکه پلتفرم خلاف آن را بگوید. modulusهای پایینتر در محیطهای قدیمی هنوز دیده میشوند، اما توصیه نمیشوند.
- secret بهجای password: دستور secret رمز عبور را با الگوریتم قویتری ذخیره میکند، در حالی که password از رمزنگاری ضعیفتری استفاده میکند.
- transport input ssh: این دستور خطوط VTY را فقط به SSH محدود میکند و جلوی ورود Telnet را میگیرد. اگر transport input all بگذارید، دستگاه همچنان ارتباط بدون رمزنگاری را میپذیرد.
- privilege 15: فقط زمانی لازم است که همان حساب باید دسترسی کامل پیکربندی داشته باشد.
- ip ssh version 2: نسخهٔ ۲ امنتر از نسخهٔ ۱ است و در پلتفرمهایی که پشتیبانی میکنند باید فعال شود.
اگر سازمان شما از AAA مرکزی استفاده میکند، الگوی این آموزش جای خود را به TACACS یا RADIUS میدهد. برای لبهٔ کوچک و محیط آزمایشگاهی، کاربر محلی کافی و قابل فهم است.
راستیآزمایی
برای بررسی وضعیت SSH میتوانید از دستور show ip ssh استفاده کنید که نسخه و وضعیت را نشان میدهد. همچنین show crypto key mypubkey rsa وجود کلید را تأیید میکند. کاربر تعریفشده با secret در running-config بهصورت hash دیده میشود، نه متن ساده.
پس از پیکربندی، از یک کلاینت مدیریتی واقعی با SSH به آدرس مدیریت وصل شوید. در اولین اتصال، پیام host key نمایش داده میشود که باید اثر انگشت آن را با دستگاه تطبیق دهید. اگر اتصال reset میشود، گاهی ACL روی VTY یا فایروال مسیر مدیریت مقصر است، نه خود SSH.
نکات مهم برای جلوگیری از قفلشدن
- پیش از حذف Telnet، از یک کلاینت واقعی SSH تست کنید. تا وقتی login موفق نگرفتهاید، دسترسی جایگزین را قطع نکنید.
- کنسول سریال یا مسیر OOB را نگه دارید. اگر بعد از قطع Telnet مشکلی پیش بیاید، کنسول راه نجات شماست.
- روی برخی سوئیچها خط VTY بیشتری وجود دارد. بازهٔ واقعی خطوط را بررسی کنید و همان تنظیمات را روی همه اعمال کنید تا سشن روی خط بالاتر Telnet باز نماند.
- پس از ذخیرهٔ config، یک بار ریبوت آزمایشی در پنجرهٔ نگهداری انجام دهید تا مطمئن شوید کلید و کاربران محلی باقی ماندهاند.
- نحو دقیق دستورات ممکن است بین IOS و IOS-XE کمی متفاوت باشد. همیشه خروجی show همان پلتفرم را مبنا قرار دهید.
چکلیست سختسازی اولیه
- نام میزبان و دامنه پیش از تولید کلید تنظیم شده باشند.
- modulus حداقل ۲۰۴۸ در IOS/XE مدرن.
- کاربر با secret قوی، نه رمز عبور ضعیف.
- VTY فقط SSH؛ نه transport input all.
- ip ssh version 2 در پلتفرمهایی که پشتیبانی میکنند.
- تست کلاینت واقعی پیش از حذف دسترسی جایگزین.
گام بعدی
پس از پایدار شدن SSH، معمولاً دو مسیر پیش رو دارید: محدودکردن دسترسی VTY با ACL، یا تنظیم پارامترهای تکمیلی مانند ip ssh time-out و ip ssh authentication-retries. کدام یک برای محیط شما اولویت دارد؟
منبع: مستندات جامعهٔ سیسکو با عنوان Configuring SSH on Cisco Routers and Switches (لینک مرجع).