উইন্ডোজের বিল্ট-ইন রিমোট ডেস্কটপ কানেকশন (RDP) ক্লায়েন্ট (mstsc.exe) প্রতিটি সফল রিমোট কানেকশনের পর রিমোট কম্পিউটারের নাম (বা IP ঠিকানা) এবং লগইন করার জন্য ব্যবহৃত ইউজারনেম সংরক্ষণ করে। পরবর্তীবার শুরু করার সময়, RDP ক্লায়েন্ট ব্যবহারকারীকে আগে ব্যবহৃত কানেকশনগুলো থেকে একটি সিলেক্ট করার অপশন দেয়। ব্যবহারকারী RDS/RDP হোস্টের নাম লিস্ট থেকে সিলেক্ট করতে পারেন, এবং ক্লায়েন্ট আটোমেটিক্যালি আগে ব্যবহৃত ইউজারনেম লগইন করার জন্য ফিল আপ করে দেয়।
এন্ড-ইউজার দৃষ্টিকোণ থেকে এটি সুবিধাজনক, কিন্তু নিরাপত্তা দৃষ্টিকোণ থেকে असুরক্ষিত। বিশেষ করে যখন আপনি পাবলিক বা অনবিশ্বস্ত কম্পিউটার থেকে আপনার RDP সার্ভারে কানেক্ট করেন।
সব RDP (টার্মিনাল) সেশনের তথ্য প্রতিটি ইউজারের রেজিস্ট্রি হাইভে আলাদা আলাদা সংরক্ষিত হয়, অর্থাৎ একটি নন-অ্যাডমিন অন্য ইউজারের RDP কানেকশন হিস্টরি দেখতে পারবেন না।
এই আর্টিকেলে আমরা দেখাবো উইন্ডোজ কোথায় RDP কানেকশনের হিস্টরি এবং সেভ করা ক্রেডেনশিয়াল সংরক্ষণ করে, mstsc উইন্ডো থেকে এন্ট্রি কিভাবে রিমুভ করবেন, এবং RDP লগ কিভাবে ক্লিয়ার করবেন।
محتويات:
- রেজিস্ট্রি থেকে RDP কানেকশন ক্যাশ কিভাবে রিমুভ করবেন?
- RDP কানেকশন হিস্টরি ক্লিয়ার করার স্ক্রিপ্ট
- উইন্ডোজকে RDP কানেকশন হিস্টরি সংরক্ষণ না করার জন্য কনফিগার করুন
- রিমোট ডেস্কটপ বিটম্যাপ ক্যাশ ক্লিয়ার করুন
- সেভ করা RDP ক্রেডেনশিয়াল ক্লিয়ার করুন
- রিমোট হোস্টে RDP-রিলেটেড ইভেন্ট লগ রিমুভ করুন
রেজিস্ট্রি থেকে RDP কানেকশন ক্যাশ কিভাবে রিমুভ করবেন?
সব RDP কানেকশনের তথ্য প্রতিটি ইউজারের রেজিস্ট্রিতে সংরক্ষিত থাকে। বিল্ট-ইন উইন্ডোজ টুলস ব্যবহার করে RDP কানেকশন হিস্টরির লিস্ট থেকে কোনো কম্পিউটার (বা কম্পিউটারগুলো) রিমুভ করা অসম্ভব। আপনাকে ম্যানুয়ালি কিছু রেজিস্ট্রি কী ক্লিয়ার করতে হবে।
- রেজিস্ট্রি এডিটর (
regedit.exe) চালু করুন এবং রেজিস্ট্রি কী HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client-এ ব্রাউজ করুন; - এই সেকশনে আপনার দুটি রেজিস্ট্রি কী দরকার: Default (সাম্প্রতিক ১০টি RDP কানেকশনের হিস্টরি সংরক্ষণ করে) এবং Servers (সমস্ত RDP সার্ভার এবং আগে লগইন করতে ব্যবহৃত ইউজারনেমের লিস্ট ধারণ করে);

- রেজিস্ট্রি কী HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default এক্সপ্যান্ড করুন যেটি সাম্প্রতিক ব্যবহার করা ১০টি রিমোট কম্পিউটারের IP ঠিকানা বা DNS নামের লিস্ট ধারণ করে (MRU – Most Recently Used)। রিমোট ডেস্কটপ সার্ভারের নাম (বা IP ঠিকানা) MRU* প্যারামিটারের ভ্যালুতে সংরক্ষিত থাকে। সাম্প্রতিক RDP কানেকশনের হিস্টরি ক্লিয়ার করতে, MRU0-MRU9 নামের সব প্যারামিটার সিলেক্ট করুন, রাইট-ক্লিক করে Delete সিলেক্ট করুন;

- এখন কী HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers এক্সপ্যান্ড করুন। এতে এই ইউজারের দ্বারা সৃষ্ট সকল RDP কানেকশনের লিস্ট থাকে। যেকোনো হোস্টের নাম (বা IP ঠিকানা) যেকোনো রেজিস্ট্রি কী এক্সপ্যান্ড করুন। UsernameHint প্যারামিটারের ভ্যালুতে মনোযোগ দিন। এটিই দেখায় RDP/RDS হোস্টে কানেক্ট করার জন্য ব্যবহৃত ইউজারনেম। এই ইউজারনেমটি আটোমেটিক্যালি RDP হোস্টে কানেক্ট করার জন্য ব্যবহৃত হবে। অতিরিক্তভাবে, CertHash ভেরিয়েবলে RDP সার্ভারের SSL সার্টিফিকেট থাম্বপ্রিন্ট থাকে (লেখা দেখুন "Configuring trusted TLS/SSL certificates for RDP")

- সমস্ত RDP কানেকশন হিস্টরি এবং সেভ করা ইউজারনেম ক্লিয়ার করতে, আপনাকে Servers রেজিস্ট্রি কীর কন্টেন্ট ক্লিয়ার করতে হবে। যেহেতু একসাথে সব নেস্টেড রেজিস্ট্রি কী সিলেক্ট করা যায় না, তাই পুরো Servers কী ডিলিট করে ম্যানুয়ালি পুনরায় তৈরি করা সহজ;

- এরপর ডিফল্ট RDP কানেকশন ফাইল (যেটি লেটেস্ট RDP সেশনের তথ্য ধারণ করে) ডিলিট করুন – Default.rdp (এটি একটি হিডেন ফাইল যা Documents ডিরেক্টরিতে থাকে)।
- উইন্ডোজ রিসেন্ট রিমোট ডেস্কটপ কানেকশনগুলো জাম্প লিস্টেও সংরক্ষণ করে। আপনি যদি উইন্ডোজ ১০ সার্চ বক্সে
mstscটাইপ করেন, তবে পূর্বে ব্যবহৃত RDP কানেকশনগুলো লিস্টে দেখাবে। আপনি রেজিস্ট্রি DWORD প্যারামিটার Start_TrackDocs ব্যবহার করে উইন্ডোজ ১০ রিসেন্ট ফাইল এবং লোকেশন জাম্প লিস্টে সম্পূর্ণ ডিজেবল করতে পারেন (রেজ কীHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced-এ সেট করুন 0), অথবা%AppData%\Microsoft\Windows\Recent\AutomaticDestinationsডিরেক্টরির ফাইলগুলো ডিলিট করে রিসেন্ট আইটেমস লিস্ট ক্লিয়ার করতে পারেন।
RDP কানেকশন হিস্টরি ক্লিয়ার করার স্ক্রিপ্ট
উপরে আমরা দেখিয়েছি কিভাবে উইন্ডোজে RDP কানেকশন হিস্টরি ম্যানুয়ালি ক্লিয়ার করতে হয়। কিন্তু ম্যানুয়ালি করা (বিশেষ করে একাধিক কম্পিউটারে) টাইম কনসামিং। তাই আমরা একটি ছোট স্ক্রিপ্ট (BAT ফাইল) অফার করছি যা আটোমেটিক্যালি RDP হিস্টরি ক্লিয়ার করে।
RDP হিস্টরি ক্লিনআপ অটোমেট করতে, আপনি এই স্ক্রিপ্টটি উইন্ডোজ স্টার্টআপে রাখতে পারেন বা GPO লগঅফ স্ক্রিপ্ট দিয়ে ইউজার কম্পিউটারে রান করাতে পারেন।
@echo off
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default" /va /f
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers" /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers"
attrib -s -h %userprofile%\documents\Default.rdp
del %userprofile%\documents\Default.rdp
del /f /s /q /a %AppData%\Microsoft\Windows\Recent\AutomaticDestinations
স্ক্রিপ্টের সব অ্যাকশন বিবেচনা করা যাক:
- কনসোলে ইনফো আউটপুট ডিজেবল করুন;
- রেজিস্ট্রি কী HKCU\Software\Microsoft\Terminal Server Client\Default-এ সব প্যারামিটার ডিলিট করুন (সাম্প্রতিক RDP কানেকশন লিস্ট ক্লিয়ার);
- পুরো রেজ কী HKCU\Software\Microsoft\Terminal Server Client\Servers ডিলিট করুন (সমস্ত RDP কানেকশন এবং সেভ করা ইউজারনেমের লিস্ট ক্লিয়ার);
- পূর্বে ডিলিট করা রেজিস্ট্রি কী পুনরায় তৈরি করুন;
- কারেন্ট ইউজারের প্রোফাইল ডিরেক্টরিতে Default.rdp ফাইলের অ্যাট্রিবিউট চেঞ্জ করুন (ডিফল্টে এটি Hidden এবং System);
- Default.rdp ফাইল ডিলিট করুন;
- জাম্প লিস্ট রিসেন্ট আইটেমস থেকে রিমোট ডেস্কটপ কানেকশন এন্ট্রি ক্লিয়ার করুন।
অতিরিক্তভাবে, আপনি নিচের PowerShell স্ক্রিপ্ট দিয়েও RDP কানেকশন হিস্টরি ক্লিয়ার করতে পারেন:
Get-ChildItem "HKCU:\Software\Microsoft\Terminal Server Client" -Recurse | Remove-ItemProperty -Name UsernameHint -Ea 0 Remove-Item -Path 'HKCU:\Software\Microsoft\Terminal Server Client\servers' -Recurse 2>&1 | Out-Null Remove-ItemProperty -Path 'HKCU:\Software\Microsoft\Terminal Server Client\Default' 'MR*' 2>&1 | Out-Null $docs = [environment]::getfolderpath("mydocuments") + '\Default.rdp' remove-item $docs -Force 2>&1 | Out-Nullনোট। ব طريق, RDP হিস্টরি ক্লিনআপ ফিচার অনেক সিস্টেম এবং রেজিস্ট্রি "ক্লিনার" গুলোতে বিল্ট-ইন রয়েছে, যেমন CCleaner, ইত্যাদি।
উইন্ডোজকে RDP কানেকশন হিস্টরি সংরক্ষণ না করার জন্য কনফিগার করুন
আপনি যদি চান উইন্ডোজ RDP কানেকশন হিস্টরি সংরক্ষণ না করলে, আপনাকে রেজিস্ট্রি কী
HKCU\Software\Microsoft\Terminal Server Client-এ সব ইউজার অ্যাকাউন্টের জন্য রাইট পারমিশন ডিনি করতে হবে। প্রথমে নির্দিষ্ট রেজ কী-এ পারমিশন ইনহেরিটেন্স ডিজেবল করুন (Permissions → Advanced → Disable inheritance)। তারপর রেজিস্ট্রি কীর ACL চেঞ্জ করুন ইউজারদের জন্য Deny অপশন টিক করে (কিন্তু আপনাকে বুঝতে হবে যে এটি একটি অনসাপোর্টেড কনফিগারেশন)।![]()
ফলস্বরূপ, mstsc.exe সিম্পলি RDP কানেকশন ইনফো রেজিস্ট্রিতে লিখতে পারবে না।
রিমোট ডেস্কটপ বিটম্যাপ ক্যাশ ক্লিয়ার করুন
রিমোট ডেস্কটপ কানেকশন ক্লায়েন্টে ইমেজ পারসিস্টেন্ট বিটম্যাপ ক্যাশিং ফিচার রয়েছে। RDP ক্লায়েন্ট রিমোট স্ক্রিনের কম পরিবর্তনশীল ফ্র্যাগমেন্টগুলো রেস্টার ইমেজ ক্যাশ হিসেবে সংরক্ষণ করে। এর কারনে, mstsc.exe ক্লায়েন্ট লোকাল ড্রাইভ ক্যাশ থেকে স্ক্রিনের যেসব পার্টস গত রেন্ডারিং থেকে পরিবর্তন হয়নি সেগুলো লোড করে। এই RDP ক্যাশিং ফিচার নেটওয়ার্কে ট্রান্সমিট হওয়া ডেটার পরিমাণ কমিয়ে দেয়।
RDP ক্যাশ হলো ডিরেক্টরি
%LOCALAPPDATA%\Microsoft\Terminal Server Client\Cache-এ দুটি টাইপের ফাইল:
- *.bmc
- bin
এই ফাইলগুলো ৬৪×৬৪ পিক্সেল টাইল আকারে র SIP RDP স্ক্রিন বিটম্যাপ র manière সংরক্ষণ করে। সিম্পল PowerShell বা Python স্ক্রিপ্ট ব্যবহার করে (সহজে RDP Cached Bitmap Extractor কোয়েরি দিয়ে সার্চ করে পাওয়া যায়), আপনি রিমোট ডেস্কটপ স্ক্রিনের টুকরো PNG ফাইল পেতে পারেন এবং সংবেদনশীল ইনফোরমেশন পেতে পারেন। টাইলগুলোর সাইজ ছোট, কিন্তু একজন RDP ক্যাশ অধ্যয়নকারী ব্যক্তির জন্য উপকারী ইনফোরমেশন প্রদান করার জন্য যথেষ্ট।
আপনি RDP ক্লায়েন্টকে রিমোট ডেস্কটপ স্ক্রিন ইমেজ ক্যাশ সংরক্ষণ না করার জন্য Advanced ট্যাবে Persistent bitmap caching অপশন ডিজেবল করে বাধা দিতে পারেন।
কখনো কখনো RDP ক্যাশ ব্যবহার করার সময় এটি দূষিত হতে পারে:
Bitmap Disk Cache Failure. Your disk is full or the cache directory is missing or corrupted. Some bitmaps may not appear.
এই কেসে, আপনাকে RDP ক্যাশ ডিরেক্টরি ক্লিয়ার করতে হবে অথবা Bitmap Caching অপশন ডিজেবল করতে হবে।
সেভ করা RDP ক্রেডেনশিয়াল ক্লিয়ার করুন
নতুন রিমোট RDP কানেকশন স্থাপনের সময়, পাসওয়ার্ড দেয়ার আগে যদি ব্যবহারকারী Remember Me অপশন চেক করে, তবে ইউজারনেম এবং পাসওয়ার্ড উইন্ডোজ ক্রেডেনশিয়াল ম্যানেজারে সেভ হয়। পরবর্তীতে একই কম্পিউটারে কানেক্ট করলে, RDP ক্লায়েন্ট আটোমেটিক্যালি পূর্বে সেভ করা পাসওয়ার্ড ব্যবহার করে রিমোট হোস্টে অথেন্টিকেশন করে।
আপনি ক্লায়েন্টের mstsc.exe উইন্ডো থেকে সরাসরি সেভ করা RDP পাসওয়ার্ড রিমুভ করতে পারেন। কানেকশন লিস্ট থেকে একই কানেকশন সিলেক্ট করুন, এবং Delete বাটনে ক্লিক করুন। তারপর সেভ করা ক্রেডেনশিয়াল ডিলিট করার কনফার্মেশন দিন।
RDP সেভ করা পাসওয়ার্ড কীভাবে কাজ করে সে সম্পর্কে আরো ডিটেইলস আর্টিকেলে লিংক দেখুন।
বিকল্পভাবে, আপনি উইন্ডোজ ক্রেডেনশিয়াল ম্যানেজার থেকে সরাসরি RDP সেভ করা পাসওয়ার্ড ডিলিট করতে পারেন। Control Panel\User Accounts\Credential Manager সেকশনে যান। Manage Windows Credentials সিলেক্ট করুন এবং সেভ করা পাসওয়ার্ডের লিস্টে কম্পিউটারের নাম খুঁজে বের করুন (নিচের ফরম্যাটে TERMSRV/192.168.1.100)। পাওয়া আইটেমটি এক্সপ্যান্ড করুন এবং Remove বাটনে ক্লিক করুন।
এক্টিভ ডিরেক্টরি ডোমেন এনভায়রনমেন্টে, আপনি স্পেশাল GPO – Network access: Do not allow storage of passwords and credentials for network authentication ব্যবহার করে RDP কানেকশনের জন্য পাসওয়ার্ড সেভ করা ডিজেবল করতে পারেন (আর্টিকেল দেখুন)।
রিমোট হোস্টে RDP-রিলেটেড ইভেন্ট লগ রিমুভ করুন
কানেকশন লগগুলো RDP/RDS হোস্ট সাইডেও সংরক্ষণ হয়। আপনি ইভেন্ট ভিউয়ার লগে RDP কানেকশন হিস্টরির তথ্য পাবেন:
- Security;
- Applications and Services Logs → Microsoft → Windows → TerminalServices-RemoteConnectionManager → Operational;
- TerminalServices-LocalSessionManager → Admin.
RDP কানেকশন লগ এনালাইসিস সম্পর্কে আর্টিকেলে আরো পড়ুন। আপনি RDP সার্ভারে ইভেন্ট লগগুলো wevtutil বা PowerShell দিয়ে ক্লিয়ার করতে পারেন।