কম্পিউটার টিউটোরিয়াল

রিমোট সেশন ডিসকানেক্টেড: কোনো রিমোট ডেস্কটপ লাইসেন্স সার্ভার/ক্লায়েন্ট অ্যাক্সেস লাইসেন্স উপলব্ধ নেই

এই লেখায়, আমরা RDS লাইসেন্সিং সম্পর্কে কিছু সাধারণ সমস্যা দেখব, যখন RDP ক্লায়েন্টগুলো উইন্ডোজ সার্ভারের সাথে কানেক্ট করতে পারে না যেটিতে Remote Desktop Services Host 役割 ইনস্টল করা আছে।

RDP ক্লায়েন্টকে RDS হোস্টের সাথে কানেক্ট করার সময় লাইসেন্সিং এরর আসতে পারে যদি:

  • RDS লাইসেন্সিং সার্ভার যেখানে থেকে আপনি ক্লায়েন্ট লাইসেন্স (RDS CALs) পেতে চান, সেটি Remote Desktop Services সেটিংসে নির্দিষ্ট করা নেই;
  • RDS লাইসেন্সিং সার্ভারের উপলব্ধ CAL গুলো শেষ হয়ে গেছে;
  • RDP ক্লায়েন্ট একটি এক্সপায়ারড مؤقت RDS লাইসেন্স দিয়ে কানেক্ট করার চেষ্টা করে;

রিমোট সেশন ডিসকানেক্টেড কারণ এই কম্পিউটারের জন্য কোনো রিমোট ডেস্কটপ ক্লায়েন্ট অ্যাক্সেস লাইসেন্স উপলব্ধ নেই

প্রথমে, ক্লায়েন্টদের লাইসেন্স সার্ভার থেকে RDS CAL পাওয়া সম্পর্কে একটি এরর দেখি।

Remote session was disconnected because there are no Remote Desktop client access licenses available for this computer. Please contact the server administrator.

RDSH সার্ভারে অ্যাডমিনিস্ট্রেটিভ মোডে কানেক্ট করুন (mstsc.exe /admin) এবং RD Licensing Diagnoser টুলস চালান। আপনি যদি সবকিছু সঠিকভাবে কনফিগার করা থাকেন, তবে আপনি RDS লাইসেন্সিং সার্ভারের নাম এবং লাইসেন্সের টাইপ (Per User/Per Device) দেখতে পাবেন।

RD Licensing Manager কনসোল (licmgr.exe) ব্যবহার করে RDS লাইসেন্স সার্ভারের সাথে কানেক্ট করুন এবং চেক করুন যে আপনার প্রয়োজনীয় টাইপের (Per User বা Per Device) ফ্রি লাইসেন্স আছে কিনা। আপনি যদি ফ্রি RDS CAL গুলো শেষ হয়ে যায়, তবে আপনাকে নতুন CAL প্যাক কেনা হবে, কেউ লাইসেন্স রিলিজ করার জন্য অপেক্ষা করতে হবে, অথবা কনসোল থেকে সরাসরি অনইউজড লাইসেন্স রিভোক করতে হবে (কম্পিউটার/ব্যবহারকারীতে রাইট-ক্লিক করুন এবং Revoke License বেছে নিন)।

এই উদাহরণে, আপনি দেখতে পাচ্ছেন যে ফ্রি RDS CAL গুলো আছে, এবং সেগুলো ব্যবহারকারীদের ইস্যু করা হয়েছে (Issued = 44)।

হিন্ট. আপনার RDSH সার্ভার যদি ওয়ার্কগ্রুপে ডিপ্লয় করা থাকে (AD ডোমেনে না), তবে আপনি সেটিতে Per User RDS লাইসেন্স ব্যবহার করতে পারবেন না। কানেক্ট করার সময়, আপনার ব্যবহারকারীরা সবসময় একটি مؤقت লোকাল Per Device লাইসেন্স পাবে।

সর্বোচ্চ সম্ভবনা, এই কেসে ক্লায়েন্ট কম্পিউটার আপনার RDSH সার্ভারের সাথে একটি এক্সপায়ারড 임시 RDP লাইসেন্স দিয়ে কানেক্ট করার চেষ্টা করছে (যদি ক্লায়েন্ট প্রথম কানেক্ট করার সময় আপনার RDS লাইসেন্স সার্ভার অনুপলব্ধ ছিল, তবে ক্লায়েন্টকে ১৮০ দিনের জন্য একটি 임시 RDP লাইসেন্স ইস্যু করা হয়েছিল)। এই কেসে, আপনাকে ক্লায়েন্ট ডিভাইসে রেজিস্ট্রিতে এই এক্সপায়ারড লাইসেন্স রিসেট করতে হবে।

ক্লায়েন্ট কম্পিউটারে (এই উদাহরণে উইন্ডোজ ১০) নিচের কাজগুলো করুন:

  1. রেজিস্ট্রি এডিটর শুরু করুন (regedit.exe);
  2. রেজিস্ট্রি কী HKEY_LOCAL_MACHINE\Software\Microsoft\MSLicensing ডিলিট করুন;
  3. রেজিস্ট্রি এডিটর বন্ধ করুন এবং mstsc.exe (Remote Desktop Connection) অ্যাডমিনিস্ট্রেটর হিসেবে চালান;
  4. আপনার RDS সার্ভারের সাথে কানেক্ট করুন। এই কেসে, MSLicensing রেজ কী অটোমেটিক্যালি পুনরায় তৈরি হবে, এবং কম্পিউটার একটি নতুন RDP লাইসেন্স পাবে।

আপনি যদি mstsc.exe অ্যাডমিনিস্ট্রেটর পারমিশন ছাড়া চালান, তবে যেকোনো RDP কানেকশনের জন্য এরর আসবে:

The remote computer disconnected the session because of an error in the licensing protocol. Please try connecting to the remote computer again or contact your server administrator.

রিমোট সেশন ডিসকানেক্টেড কারণ কোনো রিমোট ডেস্কটপ লাইসেন্স সার্ভার উপলব্ধ নেই লাইসেন্স প্রদান করতে

একজন কাস্টমার উইন্ডোজ সার্ভার ২০১২ R2-এ ডিপ্লয় করা RDS সার্ভার ফার্মের সাথে একটি সমস্যা ফেস করেছেন। কোনো কারণে, RDS সার্ভার ব্যবহারকারীদের টার্মিনাল লাইসেন্স ইস্যু করা বন্ধ করল, যদিও লাইসেন্স সার্ভার রোল ইনস্টল ও কনফিগার করা ছিল, এবং RDP CAL গুলো এক্টিভেট করা ছিল।

যখন একজন ব্যবহারকারী RDP দিয়ে টার্মিনাল সার্ভারের সাথে কানেক্ট করার চেষ্টা করে, তবে নিচের এরর আসে:

The remote session was disconnected because there are no Remote Desktop License Servers available to provide a license. Please contact the server administrator.

সার্ভার কনসোলে অ্যাডমিনিস্ট্রেটিভ মোডে কানেক্ট করুন (mstsc /admin)। Server Manager খুলুন, এবং RDS সেটিংসে যান (Remote Desktop Services -> Deployment Overview -> Tasks -> Edit Deployment Properties)। নিশ্চিত করুন যে সঠিক Remote Desktop license server এবং RDS CAL টাইপ (Per Device বা Per User) RDSH কনফিগারেশনে নির্দিষ্ট করা আছে।

আপনি পাওয়ারশেল 통해서ও RDS লাইসেন্সিং সার্ভার সেটিংস চেক করতে পারেন:

Get-RDLicenseConfiguration

আপনি দেখতে পাচ্ছেন, কনফিগারেশনে LicenseServer নির্দিষ্ট করা আছে, এবং PerUser লাইসেন্সিং টাইপ ব্যবহার করা হচ্ছে।

চেক করুন যে নিচের পোর্টগুলো RDSH হোস্ট থেকে RDS লাইসেন্সিং সার্ভার অ্যাক্সেস করার সময় ফায়ারওয়াল দ্বারা ব্লক করা নেই: TCP 135, UDP 137, UDP 138, TCP 139, TCP 445, TCP 49152–65535 (RPC range)। যদি RDS লাইসেন্স সার্ভার অনুপলব্ধ থাকে, তবে License Diagnoser একটি এরর দেখাবে:

License server rdslic_hostname is not available. This could be caused by network connectivity problems, the Remote Desktop Licensing service is stopped on the license server, or RD Licensing isn't available.

১২০ দিনের RDS গ্রেস পিরিয়ড রিসেট করা (L$RTMTIMEBOMB)

RDS হোস্টে ইভেন্ট ভিউয়ারের ইভেন্টগুলো গভীরে দেখুন। সম্ভবত এমন একটি এরর আছে:

EventID: 1128 Source: TerminalServices-RemoteConnectionManagerThe RD Licensing grace period has expired and the service has not registered with a license server with installed licenses. A RD Licensing server is required for continuous operation. A Remote Desktop Session Host server can operate without a license server for 120 days after initial start up.

RD License Diagnoser সফলভাবে একটি এরর দেখাবে:

The grace period for the Remote Desktop Session Host server has expired, but the RD Session Host server hasn't been configured with any license servers. Connections to the RD Session Host server will be denied unless a license server is configured for the RD Session Host server.

এটি মানে আপনার RDSH সার্ভারের জন্য RDS গ্রেস পিরিয়ড এক্সপায়ার হয়ে গেছে, এবং আপনাকে গ্রেস মোড এক্সটেন্ড করতে হবে, অথবা হোস্টকে RDS লাইসেন্স সার্ভারে এক্টিভেট করতে হবে।

RDS গ্রেস পিরিয়ড আপনাকে উইন্ডোজ সার্ভারে Remote Desktop Services ১২০ দিন ফ্রি ব্যবহার করতে দেয়। আপনি সবসময় RDSH-এ অ্যাডমিনিস্ট্রেটর হিসেবে লগইন করার সময় একটি এরর দেখতে পেতেন:

Licensing mode for the Remote Desktop Session Host is not configured. Remote Desktop Service will stop working in 86 days.

RDS গ্রেস পিরিয়ড শেষ হওয়ার আগে বাকি দিনের সংখ্যা এলিভেটেড কমান্ড প্রম্পট থেকে পেতে পারেন:

wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TerminalServiceSetting WHERE (__CLASS !="") CALL GetGracePeriodDays

দ্রষ্টব্য যে DaysLeft = 0। এর মানে এই RDSH হোস্টে গ্রেস পিরিয়ড এক্সপায়ার হয়ে গেছে।

RDS-এ গ্রেস পিরিয়ড এক্সটেন্ড করতে, সার্ভারে সেই রেজিস্ট্রি প্যারামিটার ডিলিট করতে হবে যেটি গ্রেস পিরিয়ড লাইসেন্সিং সময় নির্ধারণ করে। সার্ভারের RDS গ্রেস পিরিয়ড নির্ধারণকারী তারিখটি রেজ_বাইনারি রেজিস্ট্রি প্যারামিটার L$RTMTIMEBOMB (খুব মজার নাম – TIME BOMB…) নিচের রেজিস্ট্রি কী-এ সংরক্ষিত থাকে:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod

আপনাকে রেজিস্ট্রি থেকে L$RTMTIMEBOMB প্যারামিটার ডিলিট করতে হবে। যাচ্ছে, অ্যাডমিনিস্ট্রেটরের কাছে এটি করার পর্যাপ্ত পারমিশন নেই।

Unable to delete all specified values.

এই রেজিস্ট্রি প্যারামিটার ডিলিট করতে, আপনাকে পেরেন্ট কী-র পারমিশন খুলে আপনার অ্যাকাউন্টকে কী-এর ওনার প্রিভিলেজ দিতে হবে। তারপর Administrators গ্রুপের জন্য Full Control পারমিশন সেট করুন (আমি প্রসেসটি বিস্তারিত বর্ণনা করছি না)।

এখন, L$RTMTIMEBOMB প্যারামিটারতে রাইট-ক্লিক করুন এবং ডিলিট করুন।

আপনার RDSH সার্ভার রিস্টার্ট করুন, এবং RDP ক্লায়েন্ট ব্যবহার করে এটিতে কানেক্ট করুন। Remote Desktop Licensing Manager ব্যবহার করে নিশ্চিত করুন যে RDS CAL সফলভাবে ইস্যু হয়েছে।

যদি RDS CAL পাওয়া না যায়, তবে চেক করুন ইভেন্ট ভিউয়ারে এমন কোনো ইভেন্ট আছে কিনা:

Event ID: 1130 Source: TerminalServices-RemoteConnectionManager The Remote Desktop Session Host server does not have a Remote Desktop license server specified. To specify a license server for the Remote Desktop Session Host server, use the Remote Desktop Session Host Configuration tool.

এই পাওয়ারশেল কমান্ড ব্যবহার করে চেক করুন RDS লাইসেন্সিং সার্ভার সেট আছে কিনা:

$obj = gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting
$obj.GetSpecifiedLicenseServerList()

আপনি দেখতে পাচ্ছেন, RDS লাইসেন্সিং সার্ভার সেট করা নেই (SpecifiedLSList খালি)। নিচের কমান্ড দিয়ে RD লাইসেন্সিং সার্ভার ফোর্সফুলি সেট করুন:

$obj = gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting
$obj.SetSpecifiedLicenseServerList("lon-rdslic.woshub.com")

আপনি গ্রুপ পলিসি GPO ব্যবহার করেও লাইসেন্স সার্ভার নাম এবং লাইসেন্স টাইপ সেট করতে পারেন। আপনি যদি লোকাল GPO ব্যবহার করেন, তবে gpedit.msc চালান এবং সেকশনে যান Computer Configuration -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Licensing। নিচের অপশনগুলো সেট করুন:

  • Use the specified Remote Desktop license servers
  • Set the Remote licensing mode

RDS হোস্ট এখন RDS লাইসেন্সিং সার্ভার থেকে লাইসেন্স পেতে এবং আপনার RDP ব্যবহারকারীদের ইস্যু করতে পারবে।

  1. RDS লাইসেন্স সার্ভার ২০১৬ রিনেম করার পর 'License Server Not Available' এরর সমাধান

  2. স্টেপ-বাই-স্টেপ গাইড: উইন্ডোজ ২০১৬/২০১৯ লাইসেন্স সার্ভারে RDS CALs ইনস্টল করুন

  3. উইন্ডোজ ১০-এ সিকিউর রিমোট ডেস্কটপ অ্যাক্সেস সেট আপ করার পদ্ধতি

  4. TweakShot দিয়ে উইন্ডোজে রিমোট ডেস্কটপ সেশন রেকর্ড করুন: ধাপে ধাপে গাইড