RDP সুরক্ষা: পোর্ট, পাসওয়ার্ড, সীমাবদ্ধতা
ব্রুট-ফোর্স থেকে রিমোট ডেস্কটপ কীভাবে রক্ষা করবেন: অ্যাড্রেসের অ্যালাউলিস্ট, পোর্ট পরিবর্তন, অ্যাকাউন্ট লকআউট, এবং লগইন লগ পরীক্ষা।
আপডেট: ২৩ আগস্ট, ২০২৬
স্বয়ংক্রিয় স্ক্যানার কয়েক ঘণ্টার মধ্যেই ইন্টারনেটে উন্মুক্ত পোর্ট 3389 খুঁজে বের করে। এরপর আসে Administrator অ্যাকাউন্টের বিরুদ্ধে পাসওয়ার্ড ব্রুট-ফোর্সিং — Windows মেশিন হারানোর সবচেয়ে সাধারণ উপায়। সুরক্ষা কয়েকটি সহজ স্তরে গড়ে ওঠে।
প্রথম স্তর: কে সংযোগ করতে পারবে
সবচেয়ে কার্যকর পদ্ধতি হলো শুধু আপনার নিজের ঠিকানাগুলোকে RDP-তে অনুমতি দেওয়া। Windows ফায়ারওয়ালে ডিফল্ট নিয়ম সবাইকে 3389-এর অনুমতি দেয়; এটি বদলে দিন।
Set-NetFirewallRule -DisplayGroup "Remote Desktop" -RemoteAddress 203.0.113.5,198.51.100.0/24
ফলাফল যাচাই করতে:
Get-NetFirewallRule -DisplayGroup "Remote Desktop" | Get-NetFirewallAddressFilter
যদি আপনার ডাইনামিক হোম ঠিকানা থাকে, তবে একটি বিকল্প হলো শুধু একটি সহায়ক নোড থেকে অ্যাক্সেস রাখা, অথবা একটি VPN সেট আপ করে RDP সম্পূর্ণ বন্ধ করে দেওয়া। নিয়মে ভুল করলেও বেরোনোর জরুরি পথ সবসময় থাকে: প্যানেলের /hosting/vds/m/<id>-এ “Console” ট্যাব, “Screen” মোড।
দ্বিতীয় স্তর: অ্যাকাউন্ট ও পাসওয়ার্ড
- তৈরি করার সময় দেওয়া পাসওয়ার্ড বদলে দিন এবং এটি লম্বা রাখুন — অন্তত 16 অক্ষর।
- “Remote Desktop Users” গ্রুপে নিজের জন্য একটি আলাদা অ্যাকাউন্ট তৈরি করুন, এবং বিল্ট-ইন
Administrator-এর নাম বদলে দিন:Rename-LocalUser -Name Administrator -NewName adm-local। সব ব্রুট-ফোর্স প্রচেষ্টার অর্ধেকইAdministratorনামটিকে লক্ষ্য করে। - ব্যর্থ প্রচেষ্টার পর লকআউট চালু করুন:
net accounts /lockoutthreshold:5 /lockoutduration:30 /lockoutwindow:30
- NLA চালু আছে কিনা যাচাই করুন — সেশন তৈরির আগে প্রমাণীকরণ:
Set-ItemProperty "HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name UserAuthentication -Value 1
তৃতীয় স্তর: পোর্ট ও মনিটরিং
পোর্ট বদলানো সুরক্ষা নয়, তবে এটি গণ-স্ক্যানারগুলোকে আটকে দেয় এবং লগ পরিষ্কার রাখে:
Set-ItemProperty "HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name PortNumber -Value 34567
New-NetFirewallRule -DisplayName "RDP custom" -Direction Inbound -Protocol TCP -LocalPort 34567 -Action Allow -RemoteAddress 203.0.113.5
Restart-Service TermService -Force
এরপর ADDRESS:34567-এ সংযোগ করুন। 3389-এর পুরোনো নিয়মটি নিষ্ক্রিয় করুন।
কে আপনার দরজায় কড়া নাড়ছে তা লক্ষ্য করুন:
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4625} -MaxEvents 20 |
Select-Object TimeCreated, @{n='User';e={$_.Properties[5].Value}}, @{n='IP';e={$_.Properties[19].Value}}
ইভেন্ট 4625 হলো ব্যর্থ লগইন, 4624 হলো সফল লগইন। বিদেশি ঠিকানা থেকে 4625 ইভেন্টের অবিরাম স্রোত মানে আপনি কখনো ঠিকানা ফিল্টার চালু করেননি।
সাধারণ ভুল
- শুধু পোর্ট বদলানোর ওপর নির্ভর করা। স্ক্যানার এক দিনের মধ্যেই যেকোনো পোর্টে RDP খুঁজে বের করবে; আসলে কাজে দেয় অ্যালাউলিস্ট।
- পুরোনো ক্লায়েন্টের সাথে সামঞ্জস্যের জন্য NLA নিষ্ক্রিয় করা। তখন যে কেউ লগইন স্ক্রিনে পৌঁছে মেশিনে লোড দিতে পারে।
- অন্য ব্যবহারকারীদের কথা ভুলে যাওয়া। কে লগইন করতে পারবে তা যাচাই করুন:
Get-LocalGroupMember "Remote Desktop Users"। - নিজেকে লক আউট করে আতঙ্কিত হওয়া। প্যানেলের কনসোল সবসময় কাজ করে, আর যদি নিয়ম সবকিছু ভেঙে দেয়, তবে রিকভারি ডিস্ক সাহায্য করবে।
অ্যাকাউন্ট, অধিকার ও গ্রুপ নিয়ে আরও বিস্তারিত আছে Users and rights in Windows Server নিবন্ধে, এবং সাধারণ ফিল্টার সেটআপ আছে Windows Firewall-এ।