جستجو برای:
  • صفحه اصلی
  • دوره ها
    • حساب کاربری
    • سبد خرید
  • مقالات
 
  • دانلودها
  • تدریس در ساینت
  • سبد خرید
ساینت
  • صفحه اصلی
  • دوره ها
    • آزمون ها
    • حساب کاربری
    • سبد خرید
    • پرداخت
    • استعلام گواهی‌نامه
  • مقالات
  • ساینت TV
  • لایسنس اسپلانک
  • درباره ما
  • اساتید
0
ورود / عضویت

بلاگ

ساینت مقالات امنیت شبکه راهنمای جامع PowerShell Remoting: مدیریت از راه دور ویندوز به‌صورت امن و کارآمد

راهنمای جامع PowerShell Remoting: مدیریت از راه دور ویندوز به‌صورت امن و کارآمد

1404/01/20
ارسال شده توسط ساینت
امنیت شبکه
166 بازدید
راهنمای جامع PowerShell Remoting
زمان مطالعه: 3 دقیقه

PowerShell Remoting یکی از قابلیت‌های کلیدی PowerShell است که به مدیران سیستم، مهندسان شبکه و متخصصان امنیت اجازه می‌دهد تا دستورات و اسکریپت‌های خود را روی سیستم‌های راه دور اجرا کنند. این قابلیت با استفاده از Windows Remote Management (WinRM) ارتباط بین سیستم‌های مختلف را از طریق شبکه فراهم می‌کند و امکان مدیریت مرکزی سرورها و کلاینت‌ها را بدون نیاز به ورود مستقیم به آن‌ها مهیا می‌سازد. در نتیجه، سازمان‌ها می‌توانند وظایفی مانند پیکربندی، نظارت، اجرای فرآیندهای خودکار و حل مشکلات را از طریق یک کنسول مرکزی انجام دهند.

با وجود اینکه PowerShell Remoting امکانات گسترده‌ای برای مدیریت از راه دور ارائه می‌دهد، اما پیکربندی نادرست آن می‌تواند مخاطرات امنیتی ایجاد کند. از این رو، درک نحوه فعال‌سازی، احراز هویت، مدیریت دسترسی و رفع مشکلات رایج در استفاده از این قابلیت اهمیت بالایی دارد. در این مقاله، به بررسی کامل PowerShell Remoting، روش‌های استفاده از آن، نکات امنیتی، اشکال‌زدایی و کاربردهای پیشرفته می‌پردازیم تا بتوانید با اطمینان بیشتری از این ابزار قدرتمند در محیط‌های سازمانی و عملیاتی استفاده کنید.

۱. مقدمه‌ای بر PowerShell Remoting

PowerShell Remoting از پروتکل WS-Management (WinRM) برای ارسال و دریافت داده‌ها بین کلاینت و سرور استفاده می‌کند. این پروتکل مبتنی بر SOAP است و امکان مدیریت از راه دور را به‌صورت ایمن فراهم می‌کند.

مزایای استفاده از PowerShell Remoting

  • اجرای دستورات روی چندین سیستم به‌صورت هم‌زمان
  • اجرای دستورات با دسترسی بالا و کنترل بهتر روی سیستم‌ها
  • ارسال و دریافت داده‌ها به‌صورت رمزگذاری‌شده
  • امکان اجرای اسکریپت‌های پیچیده و مدیریت خودکار سیستم‌ها

۲. فعال‌سازی PowerShell Remoting

بررسی وضعیت Remoting

ابتدا بررسی کنید که آیا PowerShell Remoting روی سیستم شما فعال است یا نه:

Test-WSMan

اگر سرویس WinRM فعال باشد، پیغام تأیید دریافت خواهید کرد؛ در غیر این صورت باید آن را فعال کنید.

فعال‌سازی Remoting

برای فعال‌سازی PowerShell Remoting، دستور زیر را در PowerShell با دسترسی Administrator اجرا کنید:

Enable-PSRemoting -Force

این دستور موارد زیر را انجام می‌دهد:

  • سرویس WinRM را فعال می‌کند.
  • یک فایروال rule ایجاد می‌کند تا ارتباط از راه دور مجاز شود.
  • Listenerهای WS-Management را پیکربندی می‌کند.

افزودن کامپیوترهای مجاز به لیست Trust

اگر سیستم‌های راه دور در یک دامنه قرار ندارند، باید آن‌ها را به لیست TrustedHosts اضافه کنید:

Set-Item WSMan:\localhost\Client\TrustedHosts -Value "192.168.1.*"

برای مشاهده لیست میزبان‌های مورد اعتماد:

Get-Item WSMan:\localhost\Client\TrustedHosts

۳. اجرای دستورات از راه دور

پس از فعال‌سازی Remoting، می‌توانید از سه روش اصلی برای اجرای دستورات روی سیستم‌های دیگر استفاده کنید.

۱. استفاده از Invoke-Command

این روش برای اجرای یک یا چند دستور روی یک یا چند سیستم استفاده می‌شود:

Invoke-Command -ComputerName 192.168.1.100 -ScriptBlock { Get-Process }

اجرای چندین دستور روی چندین کامپیوتر:

Invoke-Command -ComputerName PC1,PC2,PC3 -ScriptBlock { Get-Service }

۲. ایجاد یک Session دائمی (New-PSSession)

برای اجرای چندین دستور بدون نیاز به احراز هویت مجدد، می‌توان یک Session ایجاد کرد:

$session = New-PSSession -ComputerName 192.168.1.100
Enter-PSSession -Session $session

خروج از Session:

Exit-PSSession

حذف Session:

Remove-PSSession -Session $session

۳. کپی فایل از راه دور (Copy-Item)

می‌توان از PowerShell Remoting برای انتقال فایل بین سیستم‌ها استفاده کرد:

Copy-Item "C:\localfile.txt" -Destination "C:\remotePath\" -ToSession $session

۴. احراز هویت و امنیت در PowerShell Remoting

۱. احراز هویت با نام کاربری و رمز عبور

اگر در محیطی خارج از دامنه هستید، می‌توانید از روش زیر برای احراز هویت استفاده کنید:

$cred = Get-Credential
Invoke-Command -ComputerName 192.168.1.100 -Credential $cred -ScriptBlock { Get-Process }

۲. استفاده از SSH به‌عنوان جایگزین WinRM

در ویندوز ۱۰ و سرور ۲۰۱۹، می‌توان از SSH به‌جای WinRM استفاده کرد:

Enter-PSSession -HostName 192.168.1.100 -UserName admin

۳. پیکربندی امنیتی پیشرفته

  • فعال‌سازی احراز هویت SSL: برای رمزگذاری ارتباطات، باید گواهی SSL را تنظیم کنید.
  • محدود کردن اجرای دستورات: از Just Enough Administration (JEA) برای کاهش دسترسی کاربران استفاده کنید.
  • تنظیمات فایروال: اطمینان حاصل کنید که فقط پورت‌های 5985 (HTTP) و 5986 (HTTPS) باز هستند.

۵. اشکال‌زدایی و رفع مشکلات رایج

۱. مشکل WinRM cannot complete the operation

راه‌حل:

  • بررسی کنید که سرویس WinRM در حال اجرا است:
Get-Service WinRM
  • اگر غیرفعال است، آن را راه‌اندازی کنید:
Start-Service WinRM

۲. مشکل عدم اتصال در محیط‌های Workgroup

راه‌حل:

  • تنظیمات TrustedHosts را بررسی کنید و مقدار آن را به * تغییر دهید (در محیط‌های ایمن توصیه نمی‌شود):
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "*"
  • بررسی کنید که پورت 5985 باز باشد:
Test-NetConnection -ComputerName 192.168.1.100 -Port 5985

۳. مشکل عدم اجرای اسکریپت‌ها

اگر با پیام “execution policy prevents running scripts” مواجه شدید، اجرای اسکریپت‌ها را فعال کنید:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

۶. جمع‌بندی

PowerShell Remoting یک ابزار قدرتمند برای مدیریت و کنترل سیستم‌ها از راه دور است. با پیکربندی مناسب و رعایت نکات امنیتی، می‌توان از این قابلیت برای اجرای دستورات، انتقال فایل، و مدیریت سرورها به‌صورت مرکزی بهره برد.

نکات کلیدی:

✅ فعال‌سازی Remoting با Enable-PSRemoting -Force
✅ اجرای دستورات با Invoke-Command
✅ ایجاد Session دائمی با New-PSSession
✅ تنظیمات امنیتی برای جلوگیری از سوءاستفاده
✅ اشکال‌زدایی و رفع خطاهای رایج

استفاده از PowerShell Remoting در محیط‌های سازمانی می‌تواند بهره‌وری را افزایش داده و امنیت مدیریت سیستم‌ها را بهبود بخشد.

اشتراک گذاری:
برچسب ها: Invoke-CommandJEANew-PSSessionPowerShell RemotingWindows PowerShellWinRMاجرای اسکریپت از راه دوراجرای دستورات راه دوراحراز هویت PowerShellامنیت PowerShellپورت 5985تنظیمات فایروال PowerShellرفع مشکلات PowerShell Remotingکپی فایل در PowerShellمدیریت از راه دور
در تلگرام
کانال ما را دنبال کنید!
در اینستاگرام
ما را دنبال کنید!
مطالب زیر را حتما بخوانید
  • reverse shell چیست
    آشنایی با Reverse Shell و اهمیت آن در امنیت سایبری

    338 بازدید

  • آشنایی با beats
    آشنایی با Beats: ابزارهای جمع‌آوری داده در اکوسیستم ELK

    142 بازدید

  • آشنایی با routersploite
    بررسی کامل Routersploit: ابزار تست نفوذ و ارزیابی امنیت روترها

    219 بازدید

  • همه چیز درباره +CompTIA A
    همه چیز درباره +CompTIA A: دروازه ورود به دنیای فناوری اطلاعات

    205 بازدید

  • امنیت در مجازی‌سازی
    بررسی امنیت در مجازی‌سازی: تهدیدات، چالش‌ها و راهکارها

    355 بازدید

  • vmware vcenter چیست
    آشنایی با VMware vCenter: معماری، نصب و بهترین شیوه‌های مدیریت زیرساخت مجازی

    217 بازدید

قدیمی تر حملات Typosquatting: تهدید پنهان دنیای سایبری و راه‌های مقابله با آن
جدیدتر آشنایی با Beats: ابزارهای جمع‌آوری داده در اکوسیستم ELK

دیدگاهتان را بنویسید لغو پاسخ

برای نوشتن دیدگاه باید وارد بشوید.

جدیدترین نوشته ها
  • تصاحب حساب کاربری (Account Takeover) چیست؟
  • بررسی سیاست منشأ یکسان (Same Origin Policy) و نقش آن در امنیت وب
  • مقایسه تخصصی بین WAF و Firewall با هدف درک کاربرد هرکدام
  • آشنایی با Reverse Shell و اهمیت آن در امنیت سایبری
  • HSTS (HTTP Strict Transport Security) چیست؟
  • آشنایی با Cipher Suite: سنگ‌بنای ارتباطات امن در شبکه‌های مدرن
  • ریورس پراکسی (Reverse Proxy) چیست؟
  • آشنایی با OWASP راهکاری کامل برای امنیت نرم‌افزارهای وب
  • راهنمای جامع SQLmap: ابزار قدرتمند برای شناسایی و بهره‌برداری از آسیب‌پذیری‌های SQL
  • بررسی حالت‌های مختلف استقرار FortiWeb: انتخاب بهترین Mode برای امنیت وب‌سایت‌ها
محصولات
  • دوره آموزش فورتی وب
    دوره آموزش FortiWeb
  • دوره آموزش ارزیابی آسیب پذیری های با Nessus
    دوره آموزش ارزیابی آسیب‌پذیری‌ها با ابزار Nessus
  • دوره آموزش FortiGate
    دوره آموزش فایروال FortiGate
  • دوره آموزش CISSP2021
    دوره آموزش CISSP
  • آموزش eve
    آموزش کامل شبیه‌ساز شبکه EVE-NG
  • دوره آموزش CEH
    دوره آموزش CEH | آموزش هک اخلاقی(عملی و سناریو محور)
جدیدترین دوره:
آموزش Nessus
درباره ساینت

مجموعه آموزشی ساینت ارائه دهنده به‌روز ترین آموزش‌های ویدئویی در زمینه امنیت شبکه و امنیت سایبری با بالاترین کیفیت می‌باشد.

دوره های امنیت

  • آموزش امنیت شبکه
  • مقالات امنیت شبکه
  • آموزش +Security
  • آموزش CISSP
  • آموزش eve
  • آموزش FortiGate
  • آموزش CEH
  • امنیت سایبری
  • آموزش امنیت
  • امنیت شبکه
  • امنیت لایه 2
  • مدارک سیسکو
  • آموزش Nessus
  • دوره CEH
اطلاع از فروش‌های ویژه!
برای اطلاع از جدیدترین دوره‌ها کارگاه‌ها و محصولات آموزشی و فروش‌های ویژه، همین الان ایمیل‌تان را وارد کنید تا به شما خبر بدهیم!

مجوزها
ساینت در زمینه آموزش امنیت و شبکه، تحت قوانین کشور ایران فعالیت می‌کند. استفاده از مطالب با ذکر منبع و لینک مستقیم مجاز است.
ورود
استفاده از موبایل
استفاده از آدرس ایمیل
آیا هنوز عضو نیستید؟ اکنون عضو شوید
ورود با گوگل
بازنشانی رمز عبور
استفاده از موبایل
استفاده از آدرس ایمیل
عضویت
قبلا عضو شدید؟ اکنون وارد شوید
ورود با گوگل

ورود

رمز عبور را فراموش کرده اید؟

هنوز عضو نشده اید؟ عضویت در سایت