ডেবিয়ান লিনাক্সে কমান্ড লাইনে রিমোট এডমিনিস্ট্রেশন করা

লিনাক্সে গ্রাফিক্যালি  কাজের জন্য যেমন সুবিধা রয়েছে তেমনি কমান্ড লাইনে কাজের জন্য রয়েছে একটি শক্তিশালী স্ট্রাকচার। যারা একটু অভিজ্ঞ তারা কমান্ড লাইনে কাজ করে বেশি স্বাচ্ছ্যন্দ পেয়ে থাকেন।

প্রশ্ন হতে পারে - তাতে কি লাভ? ভেবে দেখুন তো- ইউরোপের কোন শহরে অবস্থিত একটা সার্ভার এডমিনিস্ট্রেশনের জন্য গ্রাফিক্যাল মোড ভাল নাকি কমান্ড লাইন মোড ভাল?

যারা VNC বা TeamViewer এর মত সফটওয়্যার ব্যবহার করেছেন তারা জানেন কোনটা সুবিধাজনক? অনেক সময় একটা মাউস ক্লিক করতেই কয়েক মিনিট লাগে নেটওয়ার্ক দূর্বল থাকলে। তাই কমান্ড মোডে এক লাইনে আপনি  সার্ভারের অনেক সমস্যা ঠিক করতে পারবেন। যেখানে মাউস ক্লিক করতেই কয়েক ঘন্টা লাগতে পারে। তাছাড়া সিকিউরিটির ব্যাপার আছে। গ্রাফিক্যাল মোডে বেশ কিছু সার্ভিস ব্যাকগ্রাউন্ডে রান করতে থাকে যা

সিকিউরিটিকে ভালনারেবল করে তুলতে পারে। কমান্ড মোড তাই অনেক ক্ষেত্রে বেশী কার্যকর।

অনেক তত্ব কথা তো হল। আসুন এবার হাতে কলমে শুরু করে দেই। এজন্য অবশ্যই কমপক্ষে দুটি মেশিন লাগবে। দুটি মেশিনকে নেটওয়ার্কে যুক্ত করুন। তারপর ssh প্যাকেজটি ইনস্টল করুন।

কমান্ডঃ

apt-get install ssh

ssh হল কোন রিমোট মেশিনে শেল মোডে লগইন করা এবং উক্ত মেশিনে কমান্ড চালানোর জন্য বিশেষ প্রোগ্রাম। এটি সিকিউরড এবং RSA Key নির্ভর। অর্থাৎ প্রথমবার কোন রিমোট মেশিনে লগইন করার সময় আপনার মেশিনে একটি কি-জেনারেট করবে যা রিমোট লগইন সেশনের সময় ডাটা ইনক্রিপ্ট করার জন্য দু'মেশিনের মাঝে যোগসূত্র হিসেবে কাজ করে থাকে। তাই এটি অনেক নিরাপদ।

ssh ইনস্টল শেষ হলে রিমোট মেশিনে লগইন করার জন্য কমান্ড দিনঃ

ssh user@host_machine_name/ip_address

Example: ssh root@192.168.0.1

এরপর RSA Key Fingerprint দেখাবে। এখানে Yes/Y লিখে এন্টার দিন। তারপর পাসওয়ার্ড দিন। এটি রিমোট মেশিনে সেটআপকৃত ব্যবহারকারীর  পাসওয়ার্ড। আপনার নিজের মেশিনের পাসওয়ার্ড নয়।

পাসওয়ার্ড সঠিক হলে প্রম্পট দেখাবে। এখানে লিনাক্সের যে কোন কমান্ড ব্যবহার করতে পারেন।

যদি উইন্ডোজ মেশিন থেকে লিনাক্স মেশিনে লগইন করতে চান তবে Putty নামক সফটওয়্যারটি ডাউনলোড করে ইনস্টল করে নিন। এটি লিনাক্স মেশিনেও ব্যবহার করা যায়। তবে লিনাক্সে শেল প্রোগ্রাম থাকায় তার দরকার নেই।

Putty চালু করে Host Name এর বক্সে Machine_name or IP Address দিন। Port 22 রাখুন। তারপর Open বাটনে ক্লিক করুন।

login as: এর সামনে username লিখে এন্টার দিন।

আগের মতই পাসওয়ার্ড দিন। তারপর লিনাক্সের যে কোন কমান্ড দিন আপনার মেশিন থেকে।

ডেবিয়ান লিনাক্সে রিমোট ডেস্কটপ শেয়ারিং

লিনাক্সে ডেস্কটপ শেয়ারিং এর জন্য বেশ কয়েকটি পদ্ধতি রয়েছে। এজন্য অনেকেই প্রথমে কোনটি দিয়ে শুরু করবেন তা বুঝতে পারেন না। বিভিন্ন অফিস ও প্রতিষ্ঠানে আইটি সাপোর্ট এর জন্য Real VNC, উইন্ডোজের Remote Desktop ইত্যাদি ব্যবহার করা হয়ে থাকে। দু'ভাবে রিমোট ডেস্কটপ শেয়ারিং করা হয়। একটি হচ্ছে- মেশিনে বর্তমান ইউজার লগইন অবস্থায় যে ডেস্কটপ ব্যবহার করেন সরাসরি সেটিতে একসেস করা আর অপরটি প্রতিটি ব্যবহারকারীর জন্য আলাদা আলাদা ডেস্কটপ সেশন প্রদান করে। ফলে একজন ব্যবহারকারী আরেকজনের ডেস্কটপ দেখতে পায় না। লিনাক্সে দু'ধরনের শেয়ারিং এর জন্য আলাদা আলাদা প্রোগ্রাম রয়েছে।

শুরুতেই বেসিক যে ব্যাপারটি মনে রাখা দরকার তা হল, রিমোট ডেস্কটপ শেয়ারিং এর জন্য দুটি প্রোগ্রাম ব্যবহার করতে হবে।

এক. সার্ভার প্রোগ্রাম যেমন- vnc server, x11vnc ইত্যাদি
দুই . ক্লায়েন্ট প্রোগ্রাম যেমন – vnc viewer, tightvnc viewer ইত্যাদি

প্রথম প্রোগ্রামটি যে ডেস্কটপ শেয়ার করা হবে তাতে ইনস্টল করে ব্যাকগ্রাউন্ডে চালু রাখতে হবে।

দ্বিতীয় প্রোগ্রামটি যে মেশিন থেকে রিমোট ডেস্কটপটি দেখতে চান সেখানে ইনস্টল করতে হবে।

এবার আসুন দেখি লিনাক্সে কি কি প্রোগ্রাম রয়েছে ডেস্কটপ শেয়ারিং এর জন্য।

প্রতিটি ব্যবহারকারীর আলাদা সেশন প্রদানের সুবিধা দিয়ে থাকে vncserver। এটিতে আপনি সরাসরি কোন ব্যবহারকারীকে সাহায্য করতে পারবেন না। প্রত্যেক ব্যবহারকারী আলাদা ডেস্কটপ এনভারোনমেন্ট পাবেন কাজের জন্য।

আর সরাসরি অন্য মেশিনে লগইন থাকা ব্যবহারকারীর ডেস্কটপ শেয়ারিং এর জন্য প্রয়োজন হবে x11vnc

প্রথমে তাই আমরা x11vnc ব্যবহারের পদ্ধতি দেখবো যাতে অন্যকে রিয়েল টাইমে সাহায্য করা যায়।

x11vnc ইনস্টলের জন্য কমান্ড দিন-

apt-get install x11vnc

ইনস্টল শেষ হওয়ার জন্য টার্মিনালে কমান্ড দিনঃ

x11vnc -many &

উক্ত কমান্ড দিলে x11vnc ব্যাকগ্রাউন্ডে রান করবে এবং অন্য মেশিন থেকে tightvnc viewer দিয়ে বা Real VNC Viewer দিয়ে ডেস্কটপ দেখা যাবে।

vnc viewer ইনস্টলের জন্য কমান্ড দিনঃ
apt-get install xvncviewer or xvnc4viewer

তারপর প্রোগ্রাম মেনু থেকে vnc viewer চালু করুন অথবা শেল প্রম্পটে লিখুন – vncviewer

এবার server: এর সামনে লিখুন যে মেশিনে ঢুকতে চান তার IP Address (192.168.0.1)

উপরের নিয়মে প্রতিবার মেশিন চালুর পর x11vnc -many & কমান্ডটি দিয়ে সার্ভার চালু করতে হবে। যদি মেশিন বুটের সময় x11vnc স্বয়ংক্রিয়ভাবে চালু করতে চান তবে /etc/gdm/Init/Default ফাইলের শেষে (অবশ্যই exit(0) এর আগে) নিচের লাইনটি যোগ করুন ।

কমান্ডঃ
sudo gedit/vi /etc/gdm/Init/Default
/usr/bin/x11vnc -ultrafilexfer -rfbversion 3.7 -bg -reopen -forever

-ultrafilexfer -rfbversion 3.7 – এই দুটি অপশন এনাবল করা হয়েছে যাতে Ultravnc Viewer এর মাধ্যমে ফাইল কপি করা যায় এক মেশিন থেকে অন্য মেশিনে। এ দুটি অপশন বাদ দিতে পারেন যদি ফাইল ট্রান্সফার সুবিধা দরকার না হয়।

etc/gdm/Init/Default ফাইলটি ডিসপ্লে ম্যানেজার (kdm/gdm/xdm/cde) ভেদে পরিবর্তিত হয়। যেমনঃ

GDM (GNOME)     এর ক্ষেত্রে /etc/X11/gdm/Init/Default অথবা /etc/gdm/Init/Default
     KDM (KDE)    এর ক্ষেত্রে /etc/kde*/kdm/Xsetup
     XDM          এর ক্ষেত্রে /etc/X11/xdm/Xsetup (or sometimes xdm/Xsetup_0)
     CDE          এর ক্ষেত্রে /etc/dt/config/Xsetup
x11vnc প্রোগ্রামের পর এবার আমরা VNC Server এর ব্যবহার দেখব। এটি প্রতিটি ব্যবহারকারীকে আলাদা ডেস্কটপ সেশন প্রদান করে থাকে।

vncserver ইনস্টলের জন্য কমান্ড দিনঃ

apt-get install vncserver

প্রথমবার পাসওয়ার্ড সেট করার জন্য রান করুন-
vncpassword
আপনার পাসওয়ার্ড দিন। এটি পাসওয়ার্ডকে ~/.vnc/passwd ফাইলে সেভ করবে।
নতুন সার্ভার চালুর জন্য কমান্ড দিনঃ
vncserver
এর ফলে নতুন সার্ভার চালু হবে এবং এর ডেস্কটপ ১ নম্বর দিয়ে শুরু হবে। যেহেতু একই সময়ে একাধিক vnc সার্ভার থাকতে পারে তাই এ নম্বরটি যথেষ্ট গুরুত্বপূর্ন। যখন আপনি সার্ভারে কানেক্ট করতে চাইবেন তখন এ নম্বরটি জানা থাকতে হবে। ডেস্কটপ নম্বর এরপর বাড়তে থাকবে ১,,.. এরকম । প্রথম সার্ভার চালু করলে সেটি চিহ্নিত হবে machine:1, পরেরটি হবে machine:2 ইত্যাদি।
এবার প্রোগ্রামস মেনু থেকে vnc viewer চালু করে মেশিনের এড্রেস হিসেবে machine:1 দিলে কানেক্ট হতে পারবেন।


নিচের অংশটুকু জেনে রাখার জন্য -
মূল VNC প্রোগ্রামটি একটি ইউনিভার্সিটির ল্যাব প্রজেক্ট ছিল যা পরবর্তীতে কয়েকটি শাখায় বিভক্ত হয়ে যায়।
  • TightVnc – একটি উন্নতমানের কমপ্রেশানযুক্ত সংস্করন
  • TridiaVnc – মূল Vnc এর আরেকটি শাখা
  • RealVNC – এটিই হচ্ছে মূল vnc প্রোগ্রামারের সংস্করন

আজ এ পর্যন্তই। সবাই ভাল থাকুন সে কামনায় শেষ করছি।