আমরা যখন কোন Cisco ডিভাইসে রিমোট এ্যাকসেস এনাবল করে তখন সাধারণত Telnet ব্যবহার করি। Telnet প্রটোকল TCP 23 পোর্ট ব্যবহার করে এবং এর মাধ্যমে আদান-প্রদানকৃত ডাটাসমূহ Plaintext এ ট্রান্সমিট হয়। হ্যাকাররা এই ধরণের ডাটা প্যাকেট ক্যাপচার করে বিভিন্ন প্রটোকল এ্যানালাজিং টুল যেমনঃ Wireshark দিয়ে প্যাকেটসমূহ ডিকোড করে বিভিন্ন গুরুত্বপূর্ণ তথ্য ও পাসওয়ার্ড হাতিয়ে নিতে পারে। তাই রিমোট এ্যাকসেসের ক্ষেত্রে Telnet এর পরিবর্তে Secured Shell (SSH) ব্যবহার করা বাঞ্ছনীয়। এই SSH প্রটোকলের মাধ্যমে ডিভাইসমূহে নিরাপদে রিমোট এ্যাকসেস করা যায় যা TCP 22 পোর্ট ব্যবহার করে এবং ডাটাসমূহ এ্যানক্রীপ্টেড অবস্থায় ট্রান্সমিট করে। Cisco রাউটারসমূহে SSH কনফিগার করার ধাপসমূহ নিম্নরূপঃ
ধাপ-১: প্রতিটি রাউটারকে একটি স্বতন্ত্র Hostname দিয়ে কনফিগার করতে হবে এবং একটি কমন ডোমেইনের মধ্যে যুক্ত করতে হবে।
Router(config)#hostname Core_RT Core_RT(config)#ip domain-name example.com
ধাপ-২: রাউটার যাতে SSH ট্রাফিক এ্যানক্রীপ্ট করতে পারে সে জন্য One-way Secret Key অবশ্যই জেনারেট করতে হবে। Cisco ডিভাইসসমূহ Rivest, Shamir, and Adleman (RSA) এ্যালগরিদমের সাহায্যে এই Key জেনারেট করে থাকে। RSA Key জেনারেট করার জন্যঃ
Core_RT(config)#crypto key generate rsa The name for the keys will be: Core_RT.example.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]
এখানে Modulus এর ভ্যালু 1024 দ্বারা RSA Key এর সাইজ ডিফাইন করা হয়েছে। এর রেঞ্জ সাধারণত 360 থেকে 2048 পর্যন্ত এবং 64 করে বাড়ে অর্থাৎ Key=nx64। Modulus এর ভ্যালু যত বড় হবে, RSA Key ও তত নিরাপদ হবে। তবে Modulus ভ্যালু বেশি হওয়ার একটি সমস্যা হলো এতে RSA Key জেনারেট হতে এবং Key এ্যানক্রীপ্ট/ডিক্রীপ্ট হতে একটু বেশি সময় লাগে। তবে Modulus এর নূন্যতম ভ্যালু 1024 হওয়া বাঞ্ছনীয়।
ধাপ-৩: রাউটারে একটি Valid Local Username Database থাকতে হবে। না থাকলে নিচের কমান্ডের মাধ্যমে অন্তত একটি ইউজার তৈরী করতে হবে।
Core_RT(config)#username admin secret @dmin13579
ধাপ-৪: অতঃপর line vty কমান্ডের মাধ্যমে vty inbound ssh session এনাবল করতে হবে।
Core_RT(config)#line vty 0 4 Core_RT(config-line)#login local Core_RT(config-line)#transport input ssh
এতে করে আমাদের SSH কনফিগার করা হয়ে গেল। এখন যদি আমরা অন্য একটি হোষ্ট থেকে রাউটারের SSH করে লগইন করতে চাই তাহলে নিচের কমান্ডটি দিতে হবে।
#ssh –l admin 192.168.1.1 (ধরি, রাউটারের আই.পি 192.168.1.1)
Cisco ডিভাইসে SSH এর দুইটি ভার্সন রয়েছে: SSHv1 ও SSHv2
SSHv1 এর চেয়ে SSHv2 আরো বেশি নিরাপদ। এটি Diffie-Hellman Key বিনিময় করে এবং এতে Message Authentication Code (MAC) নামক শক্তিশালী ইন্টিগ্রিটি চেকিং ব্যবস্থা রয়েছে। SSH এর ভার্সন পরিবর্তন করার জন্যঃ
Core_RT(config)#ip ssh version 2
যখন কোন SSH Client থেকে রাউটারে SSH এর মাধ্যমে রিমোট এ্যাকসেস করা হয় তখন SSH Session টি বাই ডিফল্ট 120 সেকেন্ড স্ট্যান্ডবাই হিসেবে এ্যাক্টিভ থাকে। 120 সেকেন্ডের মধ্যে কোন এ্যাক্টিভিটি না থাকলে সেশন ক্লোজ হয়ে যায়। তবে এই সময়টি প্রয়োজন অনুসারে পরির্তন করা যায়।
Core_RT(config)#ip ssh time-out 60
বাই ডিফল্ট একজন ইউজার একটি সেশনে পর পর তিন বার SSH লগইনের জন্য চেষ্টা করতে পারে। অর্থাৎ ইউজার যদি তিন বার চেষ্টা করে লগইন করতে না পারে তাহলে সেশনটি ক্লোজ হয়ে যায় এবং নতুন করে কমান্ড দিতে হয়। এই সংখ্যাটি পরিবর্তন করা যায়।
Core_RT(config)#ip ssh authentication-retries 2
নিচের কমান্ডের মাধ্যমে আমরা রাউটারের SSH Status ও অন্যান্য কিছু তথ্য দেখতে পারি।
Core_RT#show ip ssh SSH Enabled - version 2.0 Authentication timeout: 60 secs; Authentication retries: 2
Core_RT#show ssh Connection Version Mode Encryption Hmac State Username 195 2.0 IN aes128-cbc hmac-sha1 Session Started admin 195 2.0 OUT aes128-cbc hmac-sha1 Session Started admin %No SSHv1 server connections running.
Core_RT#show crypto key mypubkey rsa % Key pair was generated at: 0:1:28 UTC Mar 1 1993 Key name: Core_RT.example.com Storage Device: not specified Usage: General Purpose Key Key is not exportable. Key Data: 00007a9b 00003f87 000056a7 000038ca 0000504b 000072bd 00002876 0000684b 00001d3e 00001abd 00002027 00005d62 000027bb 00004345 00003ed5 000067d0 00004748 00005152 000052d2 000064af 00004c6e 00005bda 00003d8d 7cbe % Key pair was generated at: 0:1:28 UTC Mar 1 1993 Key name: Core_RT.example.com.server Temporary key Usage: Encryption Key Key is not exportable. Key Data: 000015bc 00007cbd 000050b9 00001cfa 0000760f 00002dfa 000006ab 00005d6e 00005010 0000071e 00001a04 00004a4b 00000afd 00006f03 00004091 0000433b 000044ad 000015b6 00000d6f 000064f3 000064ce 00004ab9 00003e73 3107
আশাকরি আপনারা এই টিউটোরিয়ালটি দেখে Cisco ডিভাইসসমূহকে কিভাবে SSH কনফিগার করা যায় তা শিখতে পারবেন। আল্লাহ হাফেজ।