• Breaking News

    Monday, February 18, 2019

    কিভাবে Secured Shell (SSH) কনফিগার করতে হয়

    আমরা যখন কোন রাউটার এ রিমোট অ্যাকসেস এর মাধ্যমে ব্যবহার করি তখন সচারাচর আমরা Telnet ব্যবহার করে থাকি । Telnet Protocol TCP 23 পোর্ট ব্যবহার করে এবং এর মধ্যমে যেসকল ডাটা আদান প্রদান করা হয় তা Plaintext এ ট্রান্সমিট হয়ে থাকে। হ্যাকাররা খুব সহজেই এই ধরণের ডাটা বিভিন্ন প্যাকেট ক্যাপচার সফটওয়্যার ব্যবহার করে এবং বিভিন্ন Protocol Analyzing Tools ব্যবহার করে এই প্যাকেট সমুহকে সহজেই ডিকোড করে আমাদের গুরুত্বপূর্ণ তথ্য ও পাসওয়ার্ড হাতিয়ে নিতে পারে। তাই আমরা Remote Access এ Telnet এর পরিবর্তে Secured Shell (SSH) ব্যবহার করতে পরি। বাঞ্ছনীয়। এই SSH Protocol মাধ্যমে আমরা ডিভাইসমূহে নিরাপদে রিমোট এ্যাকসেস করতে পারি এবং এই Protocol TCP 22 পোর্ট ব্যবহার করে এবং ডাটাসমূহ এ্যানক্রীপ্টেড অবস্থায় ট্রান্সমিট করে থাকে। Router এ SSH কনফিগার করার জন্য আমরা নিচের ধাপসমুহকে অনুসরণ করি।

    Step-1: নেটওয়ার্ক সংযুক্ত প্রতিটি Router কে একটি স্বতন্ত্র Hostname দিয়ে কনফিগার করতে হবে এবং সেই সাথে প্রতিটি Router কে একটি কমন ডোমেইনের মধ্যে যুক্ত করতে হবে। নিচে কিভাবে Hostname দিতে হয় এবং কিভাবে একটি কমন ডোমেইন এর মধ্যে রাথতে হয় তার কনফিগারেশন কোড নিচে দেওয়া হল।

    Router#conf t
    Enter configuration commands, one per line. End with CNTL/Z.
    Router(config)#hostname Raihanrouter
    Raihanrouter(config)#ip domain-name raihan.com
    Step-2: Router যাতে Secured Shell (SSH) ট্রাফিক এ্যানক্রীপ্ট করতে পারে তার জন্য Router কে One-way Secret Key জেনারেট করতে হবে। One-way Secret Key জেনারেট করার জন্য Router কিছু অ্যালগরিদম ব্যবহার করে থাকে । Cisco ডিভাইসসমূহ One-way Secret Key জেনারেট করার জন্য Rivest, Shamir, and Adleman (RSA) এ্যালগরিদম ব্যবহার করে থাকে । One-way Secret Key জেনারেট করার জন্য Router এ কিভাবে  RSA অ্যালগরিদম রান করাতেহয় সেই কনফিগারেশন কোড নিচে দেওয়া হল।

    Raihanrouter>en
    Raihanrouter#conf t
    Enter configuration commands, one per line. End with CNTL/Z.
    Raihanrouter(config)#crypto key generate rsa
    The name for the keys will be: Raihanrouter.raihan.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 হচ্ছে একটি ভ্যালু যার সাহায্যে RSA Key এর সাইজ ডিফাইন করা হয়। এখানে Modulus ভ্যালু 1024 ব্যবহার করা হয়েছে। এই Modulus ভ্যালু এর রেঞ্জ সাধারণত 360 থেকে 2048 পর্যন্ত হয়ে থাকে এবং প্রতিবার এটি 64 করে বাড়ে অর্থাৎ Key=nx64। Modulus এর ভ্যালু যত বড় হবে, RSA Key ও তত নিরাপদ হবে। তবে Modulus ভ্যালু বেশি হলে যেমন সুবিধা আছে তেমটি একটি সমস্যাও আছে আর তা হলো এই ভ্যালু বড় হলে RSA Key জেনারেট হতে এবং Key এ্যানক্রীপ্ট/ডিক্রীপ্ট হতে বেশি সময় লাগে, ফলে নেটওয়ার্ক ধির গতির হতে পারে। তবে Modulus ভ্যালু নুন্যতম 1024 হওয়া ভাল।

    Step-3: রাউটারে একটি Valid Local Username Database থাকতে হবে। যদি কোন Valid Local Username Database না থাকে তাহলে অবশ্যই তা তৈরি করে নিতে হবে। কিভাবে একটি Valid Local Username Database তৈরি করতে হয় সেই কোড নিচে দেওয়া হল।

    Raihanrouter>en
    Raihanrouter#conf t
    Enter configuration commands, one per line. End with CNTL/Z.
    Raihanrouter(config)#username admin secret #raihan125


    ধাপ-৪: অতঃপর আমাদের যে কাজটি করতে হবে তা হল। line vty কমান্ডের মাধ্যমে vty inbound ssh session এনাবল করতে হবে।

    Raihanrouter>en
    Raihanrouter#conf t
    Enter configuration commands, one per line. End with CNTL/Z.
    Raihanrouter(config)#line vty 0 4
    Raihanrouter(config-line)#login ?
    authentication authenticate using aaa method list
    Raihanrouter(config-line)#login local
    Raihanrouter(config-line)#transport input ssh
    Raihanrouter(config-line)#

    আমাদের আমাদের SSH কনফিগার করা হয়ে গেল। এখন যদি আমরা অন্য কোন একটি হোষ্ট থেকে রাউটারের SSH করে লগইন করতে চাই তাহলে নিচের কমান্ডটি প্রয়োগ করতে হবে। নিচে তার কোডটি দেওয়া হল।

    #ssh –l admin 192.168.1.1 (ধরি, রাউটারের আই.পি 192.168.1.1)

    SSH Version: SSH এর দুটি ভার্শন রয়েছে যথা:



    SSHv1 (Scoured Shell version 1 )
    SSHv2 (Scoured Shell version 2 )

    SSHv1 এর চেয়ে SSHv2 বেশি নিরাপদ। এটি Diffie-Hellman Key বিনিময় করে এবং এতে Message Authentication Code (MAC) নামক শক্তিশালী ইন্টিগ্রিটি চেকিং ব্যবস্থা রয়েছে, যার কারনে এটি আরো নিরাপদ। SSH এর ভার্সন পরিবর্তন করার জন্য নিচের কমান্ডটি প্রয়োগ করতে হয়।
    Raihanrouter(config)#ip ssh version 2

    SSH Timeout Period: যখন কোন SSH Client থেকে রাউটারে SSH এর মাধ্যমে রিমোট অ্যাকসেস করা হয় তখন SSH Session টি বাই ডিফল্ট 120 সেকেন্ড স্ট্যান্ডবাই হিসেবে এ্যাক্টিভ থাকে। এই 120 সেকেন্ডের মধ্যে কোন এ্যাক্টিভিটি না থাকলে সেশন অটোমেটিক ক্লোজ হয়ে যায়। তবে এই সময়টি প্রয়োজন অনুসারে আমরা পরির্তন বা কমবেশি করতে পারি। কিভাবে এই সেশন টাইম কমবেশি করতে হয় তার কোডটি নিচে দেওয়া হল।

    Raihanrouter(config)#ip ssh time-out 60

    Number of Authentication Retries: SSH এ লগিন করার সময়, বাই ডিফল্ট একজন ইউজার একটি সেশনে পর পর তিন বার SSH লগইনের জন্য চেষ্টা করতে পারে। অর্থাৎ কোন ইউজার যদি তিন বার চেষ্টা করে লগইন করতে না পারে তাহলে সেশনটি ক্লোজড হয়ে যাবে এবং লগিন করার জন্য নতুন করে কমান্ড দিতে হবে। আমরা চাইলে এই সংখ্যাটি পরিবর্তন করতে পারি । কিভাবে এই Authentication Retries পরিবর্তন করা যায় তার কোডটি নিচে দেওয়া হল।

    Raihanrouter(config (config)#ip ssh authentication-retries 2

    আমরা show ip ssh কমান্ডটি ব্যবহার করে আমরা রাউটারের SSH Status ও অন্যান্য কিছু তথ্য দেখতে পারি।

    Raihanrouter(config)#show ip ssh
    SSH Enabled - version 2.0
    Authentication timeout: 60 secs; Authentication retries: 2
    Raihanrouter(config)#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.
    Raihanrouter(config)#show crypto key mypubkey rsa
    % Key pair was generated at: 0:1:28 UTC Mar 1 1993
    Key name: raihan.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: raihan.com
    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

    No comments:

    Post a Comment

    Fashion

    Beauty

    Travel