כיצד להפעיל ולהגדיר WinRM (ניהול מרחוק של Windows) באמצעות GPO


במאמר זה, נראה כיצד להפעיל ולהגדיר ניהול מרחוק של Windows (WinRM) במחשבי תחום באמצעות מדיניות קבוצתית (GPO). ניהול מרחוק של Windows הוא יישום של WS-Management Protocol לניהול מרחוק של שולחנות עבודה ושרתים של Windows. WinRM מאפשר לך לנהל מרחוק מחשבים באמצעות:

  • מנהל שרת (Windows Server)

  • התקשרות מרחוק של PowerShell (PSSession)

  • מרכז הניהול של Windows (WAC)

כיצד להפעיל באופן ידני WinRM ב- Windows?

שירות WinRM זמין בכל הגירסאות המודרניות של Windows. ב- Windows Server הוא מופעל כברירת מחדל, אך הוא מושבת במהדורות שולחן העבודה של Windows 11/10/8.1. כברירת מחדל, מאזין WinRM אינו מקבל חיבורים מרוחקים. כדי לבדוק זאת, הפעל את הפקודה הבאה בלקוח:

WinRM enumerate winrm/config/listener

תראה שגיאה המציינת כי WinRM אינו מוגדר:

WSManFault Message = The client cannot connect to the destination specified in the request. Verify that the service on the destination is running and is accepting requests. Consult the logs and documentation for the WS-Management service running on the destination, most commonly IIS or WinRM. If the destination is the WinRM service, run the following command on the destination to analyze and configure the WinRM service: "winrm quickconfig".
Error number: -2144108526 0x80338012

כדי להפעיל ולהגדיר את שירות WinRM ב- Windows, זה מספיק כדי להפעיל פקודה זו:

winrm quickconfig

או

Enable-PSRemoting -Force
WinRM has been updated to receive requests.
WinRM service type changed successfully.
WinRM service started.

פקודה זו תשנה את סוג ההפעלה של שירות WinRM לאוטומטי, תחיל הגדרות ברירת מחדל של WinRM ותוסיף חריגים עבור יציאות WinRM (TCP 5985 ו- 5986) לרשימת החריגים בחומת האש של Microsoft Defender.

קביעת תצורה של WinRM באמצעות מדיניות קבוצתית

באפשרותך להפוך את WinRM לזמין ולקבוע את תצורתו באופן אוטומטי במחשבי תחום באמצעות Windows GPO.

  1. פתח את מסוף ניהול המדיניות הקבוצתית (

    gpmc.msc

    ), בחר גורם מכיל של Active Directory (יחידה ארגונית) עם המחשבים שבהם ברצונך להפוך את WinRM לזמין, וצור GPO חדש: corpEnableWinRM;

  2. פתח את המדיניות כדי לערוך אותה;

  3. עבור אל תצורת מחשב -מדיניות > -> הגדרות Windows -> הגדרות אבטחה -> שירותי מערכת. אתר את שירות Windows Remote Service (WS-Management) והפעל אתחול אוטומטי עבורו;

  4. לאחר מכן עבור אל מדיניות מחשב -> העדפות -> הגדרות לוח הבקרה -> שירותים. בחר New -> Service. הזן את שם השירות WinRM ובחר את הפעולה הפעל מחדש את השירות בכרטיסיה שחזור;

  5. עבור אל תצורת מחשב -> מדיניות -> תבניות מנהליות -> רכיבי Windows -> ניהול מרחוק של Windows (WinRM) -> שירות WinRM. אפשר ניהול שרת מרוחק באמצעות WinRM לזמין. בתיבה מסנן Ipv4/IPv6, באפשרותך לציין כתובות IP או רשתות משנה, שבהן יש להאזין לחיבורי WinRM. אם ברצונך לאפשר חיבורי WinRM בכל כתובות ה- IP, השאר * כאן;

  6. צור כללי חומת האש של Windows Defender המאפשרים חיבורי WinRM ביציאות ברירת המחדל TCP/5985 ו- TCP/5986. עבור אל תצורת מחשב -> מדיניות -> הגדרות Windows -הגדרות אבטחה > -> חומת האש של Windows עם אבטחה מתקדמת -> חומת האש של Windows עם אבטחה מתקדמת -> כללי כניסה. בחר כלל מוגדר מראש של ניהול מרחוק של Windows;

    קבל מידע נוסף על אופן קביעת התצורה של כללי Windows Defender ופתיחת יציאות באמצעות GPO.

  7. עבור אל תצורת מחשב -> מדיניות -> רכיבי Windows -> Windows Remote Shell והפעל את אפשר גישה למעטפת מרוחקת.

עדכן את הגדרות GPO בלקוחות שלך וודא ש- WinRM הוגדר באופן אוטומטי. באפשרותך להשתמש בכלי gpresult כדי לפתור בעיות בהגדרות מדיניות קבוצתית במחשבי לקוח.

בדיקת הגדרות WinRM וקישוריות PowerShell

כדי לבדוק שהגדרות WinRM במחשב מוגדרות באמצעות GPO, הפעל את הפקודה:

winrm e winrm/config/listener

הפקודה מציגה את הגדרות מאזין WinRM הנוכחיות. שים לב לסמל

Listener [Source="GPO"]

קו. משמעות הדבר היא שהגדרות WinRM הנוכחיות מוגדרות באמצעות GPO.

באפשרותך להשתמש ב- HTTPS כדי לאבטח את חיבורי WinRM/PowerShell Remoting שלך.

באפשרותך לרשום את התצורה המלאה של שירות WinRM באמצעות פקודה זו:

winrm get winrm/config

לאחר מכן נסה להתחבר למחשב מרוחק באמצעות WinRM. פתח את מסוף PowerShell והפעל את הפקודה הבאה:

Test-WsMan wsk-w10b01

אם WinRM זמין, תופיע התגובה הבאה:

wsmid : http://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity.xsd
ProtocolVersion : http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
ProductVendor : Microsoft Corporation
ProductVersion : OS: 0.0.0 SP: 0.0 Stack: 3.0

באפשרותך לחפש יציאת WinRM פתוחה (TCP/5985) במחשב המרוחק באמצעות PowerShell:

Test-NetConnection -ComputerName wsk-w10b01 -Port 5985

לאחר מכן תוכל לנסות להתחבר למחשב מרוחק באופן אינטראקטיבי באמצעות PSRemoting ו- cmdlet Enter-PSSession:

Enter-PSSession wsk-w10b01

במקרה זה, החיבור נוצר בהצלחה וקונסולת PS של המארח המרוחק מופיעה.

מלבד PSRemoting, באפשרותך להשתמש בפקודה Invoke-Command כדי לבצע פקודות וסקריפטים במחשב מרוחק:

Invoke-Command -ComputerName wsk-w10b01 -ScriptBlock {ipconfig /all}

אם חיבור PSRemoting נוצר, תראה את פלט ipconfig על המסך.

באפשרותך גם להפעיל פקודה במחשב מארח מרוחק באופן הבא:

winrs -r: wsk-w10b01 dir

במקרים מסוימים, ייתכן שתראה את השגיאה הבאה בעת התחברות באמצעות PSSession:

Enter-PSSession : Connecting to remote server wsk-w10BO1 failed with the following error message : Access is denied.
CategoryInfo : InvalidArgument: (wsk-w10b01:String) [Enter-PSSession], PSRemotingTransportException FullyQualifiedErrorId : CreateRemoteRunspaceFailed

בדוק את הרשאות החיבור הנוכחיות של WinRM:

Set-PSSessionConfiguration -ShowSecurityDescriptorUI -Name Microsoft.PowerShell

ודא שהחשבון שלך חבר בקבוצה Administrators או Remote Management Users (בדוק כיצד לאפשר חיבור WinRm למשתמשים שאינם מנהלי מערכת) ושיש להם הרשאות FullControl. כמו כן, ודא כי אין

Deny

כללים.

באפשרותך להגדיר WinRM ו- PSRemoting בסביבת קבוצת עבודה (ללא תחום Active Directory) בהתאם למדריך הבא.