掌握WinServer2008的WinRM远程管理

日期: 2008-09-11 来源:TechTarget中国 英文

  WinRM及WinRS更新包含在Windows Vista、Windows Server 2003 R2、Windows Server 2008及Server 2008 Core当中。这些强大的命令行管理工具提供系统管理员以改良的方式在Windows机器上进行远程管理及远程执行程序。不过,它们必须被启用,并且你将需要花一些时间知道它们的命令行功能特性。幸好,本文将提供全部的教程,你有必要今天开始使用这些工具!


  什么是Windows远程管理(WinRM)?


  Windows远程管理(WinRM)是Windows Server 2003 R2、Windows Vista和Windows Server 2008中一种新式的方便远程管理的服务。WinRM是远程管理应用的“服务器”组成部分,并且WinRS(Windows远程Shell)是WinRM的“客户端”,它在远程管理WinRM服务器的计算机上运行。然而,我们应该注意到两个计算机必须手动安装WinRS,还要使WinRM能够启动并从远程系统传回信息。


  WinRM基于Web服务管理(WS-Management)标准。这么说的意思是:WinRM使用HTTP协议(80端口)并且用SOAP来请求它工作。这样的好处在于HTTP请求能够非常容易的穿过防火墙进行收发。因而它的好坏在于:它使通过Internet管理远程Windows PC更为容易,或者它更容易适合Internet上存心不良的远程Windows攻击者。WinRM使用HTTP的其它好处在于:如果HTTP入站通讯被允许,就没有其它端口必需在服务器和客户端上被开放。


  WinRM是用于系统管理并基于开放标准API的新工具。因此,如果你在这之前不是很有兴趣学习此工具,其实在我的脑海里它实际上是“微软远程管理的新标准”,它非常值得了解。


  你可能已经熟悉WMI数据库。如果不是这样,WIM数据库包含了那台计算机上关于硬件和软件的各种各样的信息。几乎每个Windows系统管理程序都会调用到WMI数据库,以执行需要被在那个PC上执行的任何管理任务。


  WinRM将使用WMI数据库执行你或者你的系统管理包的任务,就像使用VBScript一样使用另一个编程接口的相似任务。与我在前面提及时相同,WinRM的好处是它使用80端口(HTTP)。并且有些特殊的代码甚至允许WinRM与IIS共享80入站端口,它们可能正共同运行在80端口上。


  WinRM支持多种验证方式,以阻止正连接上的任何人进行任何关于你PC客户端和服务器的管理任务。不过,如同被开放的其他任何端口一样,如果验证和加密被放置在了合适的时机,你就已经采取了全部合理的安全防范。


  你的系统管理软件供应商可能已经打算在他们产品的下一版本里调用WinRM,到时你可能不知不觉的已经通过另一应用程序在使用WinRM了。使用这个CLI工具,你能十分容易地从你想要执行的任何系统管理功能的WMI数据库中调出信息。


  WinRM命令行接口包括许多选项。此WinRM的帮助信息显示了在当前系统上WinRM没有“启用”或“监听”。


  怎样启用和使用WinRM?


  如果你正使用Windows 2008 Server,WinRM已经被安装但并未启用。这是一个很好的安全预防措施。在你机器上启用WinRM的简单方法就是在CMD中运行:


  winrm enumerate winrm/config/listener


  如果没有得到返回信息,WinRM未正常运行。配置WinRM自动启动并允许远程访问,可像以下这样使用winrm quickconfig命令:


  C:UsersAdministrator> winrm quickconfig


  WinRM is not set up to allow remote access to this machine for management.


  The following changes must be made:


  create a WinRM listener on HTTP://* to accept WS-Man requests to any IP on this machine.


  Make these changes [y/n]? y


  WinRM has been updated for remote management.


  created a WinRM listener on HTTP://* to accept WS-Man requests to any IP on this machine.


  C:UsersAdministrator>


  Once I configured the quickconfig, I reran the enumeration command with these results:


  C:UsersAdministrator> winrm e winrm/config/listener


  Listener


  Address = *


  Transport = HTTP


  Port = 80


  Hostname


  Enabled = true


  URLPrefix = wsman


  CertificateThumbprint


  ListeningOn = 10.253.15.98, 127.0.0.1, ::1, fe80::5efe:10.253.15.98%11, fe80::9583:2148:e1ef:6444%10


  C:UsersAdministrator>


  从这里,我们可以知道WinRM已经启动。


  顺便提一下,如果你想在任何时间禁用WinRM,你可以使用这样的命令:


  winrm delete winrm/config/listener?IPAdress=*+Transport=HTTP


  为了使用WinRM,与之连接的主机必需与WinRM主机是相同域的成员。如果情况不是这样,我建议你参考文章Remotely managing your Server Core using WinRM and WinRS里描述的不同安全情况。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐