Windows Remote Management

Last updated
WinRM (Windows Remote Management)
Developer(s) Microsoft
Operating system Microsoft Windows
Type Application programming interface
License Proprietary commercial software
Website docs.microsoft.com/en-us/windows/win32/winrm/portal

Windows Remote Management (WinRM) is the Microsoft implementation of the DMTF-standard WS-Management. It allows accessing or exchanging management information across a common network. Utilizing scripting objects or the built-in command-line tool, WinRM can be used with any remote computers that may have baseboard management controllers (BMCs) to acquire data. On Windows-based computers including WinRM, certain data supplied by Windows Management Instrumentation (WMI) can also be obtained. [1]

Contents

Components

winrs
Developer(s) Microsoft
Operating system Microsoft Windows
Type Command
License Proprietary commercial software
Website docs.microsoft.com/en-us/windows-server/administration/windows-commands/winrs

Common uses

PowerShell 6.0 PowerShell Core 6.0 icon.png
PowerShell 6.0

Ansible communicates with Windows servers over WinRM using the Python pywinrm package and can remotely run PowerShell scripts and commands. [4]

Thycotic's Secret Server also leverages WinRM to enable PowerShell remoting. [5]

SolarWinds Server and Application Monitoring software (SAM) utilizes a WinRM server on monitored servers for its PowerShell integration. [6]

CloudBolt leverages WinRM as part of Blueprints, Server Actions, and CB Plugins to execute remote scripts on Windows servers using the python pywinrm module. [7]

Security

WinRM uses Kerberos for initial authentication by default. This ensures that actual credentials are never sent in client-server communications, instead relying on features such as hashing and tickets to connect. [8] Although WinRM listeners can be configured to encrypt all communications using HTTPS, with the use of Kerberos, even if unencrypted HTTP is used, all communication is still encrypted using a symmetric 256-bit key after the authentication phase completes. Using HTTPS with WinRM allows for additional security by ensuring server identity via SSL/TLS certificates thereby preventing an attacker from impersonating it. [9]

References

  1. windows-sdk-content. "Windows Remote Management - Windows applications". docs.microsoft.com. Retrieved 2019-02-21.
  2. windows-sdk-content. "Windows Remote Management Glossary - Windows applications". docs.microsoft.com. Retrieved 2019-02-21.
  3. windows-sdk-content. "About Windows Remote Management - Windows applications". docs.microsoft.com. Retrieved 2019-02-21.
  4. "Windows Remote Management — Ansible Documentation". docs.ansible.com. Retrieved 2019-02-21.
  5. "Thycotic Support". thycotic.force.com. Retrieved 2019-02-21.
  6. "Create a WinRM HTTPS listener". SolarWinds Worldwide, LLC. Help and Support. 2016-03-24. Retrieved 2019-02-24.
  7. "Remote Scripts — CloudBolt 8.7 Documentation". docs.cloudbolt.io. Retrieved 2019-06-04.
  8. "How To: Configure WINRM for HTTPS". support.microsoft.com. Retrieved 2019-02-24.
  9. FoxDeploy (2017-02-08). "Is WinRM Secure or do I need HTTPs?". FoxDeploy.com. Retrieved 2019-02-24.