Remoting是大家对于PowerShell v2期待已久的功能。因此,PowerShell功能达到了新的高度。下面内容节选自Manning出版社,介绍了如何启用remoting。选自第十章PowerShell深度解析,由Don Jones、Richard Siddaway与Jeffery Hicks撰写。
点击这里查看PowerShell v3的改进。 Remoting应该在任何能够接收连接的机器上启用,包括运行Windows操作系统的服务器或客户端版本的计算机。设置remoting最简单的方式是运行Enable-PSRemoting。这个命令执行以下几个任务: 1.启动(或重启)W……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
Remoting是大家对于PowerShell v2期待已久的功能。因此,PowerShell功能达到了新的高度。下面内容节选自Manning出版社,介绍了如何启用remoting。选自第十章PowerShell深度解析,由Don Jones、Richard Siddaway与Jeffery Hicks撰写。点击这里查看PowerShell v3的改进。
Remoting应该在任何能够接收连接的机器上启用,包括运行Windows操作系统的服务器或客户端版本的计算机。设置remoting最简单的方式是运行Enable-PSRemoting。这个命令执行以下几个任务:
1.启动(或重启)WinRM服务
2.设置WinRM服务器以后自动运行
3.创建WinRM监听器,用于所有本地IP地址端口5985上的HTTP流量监控
4.为WinRM监听器创建Windows防火墙例外。注意,如果网卡配置成“Public”类型,这种在Windows客户端版本上的配置将失败,因为防火墙拒绝在这些卡上创建例外。如果不成功,将网卡类型更改为如“Work”或“Private”,然后再次运行Enable-PSRemoting。或者,如果你有一些公共网卡,添加SkipNetworkProfileCheck参数启动PSRemoting。这样做能成功创建防火墙例外,只允许计算机本地子网的远程处理流量通过。
这个命令也设置以下四个端口中的一个或几个:
1.PowerShell 32-bit
2.PowerShell 64-bit
3.PowerShell Server Manager Workflow
4.PowerShell Workflow
图1列出了一些例子和端点配置。在32位机器上,这个端点被称为PowerShell而不是PowerShell32.
| PowerShell Version | PowerShell 32 bit | PowerShell 64bit | Server manager | PowerShell workflow |
Windows Server 2008 R2 | 2 | Y | Y | Y |
|
Windows 7 64 bit | 3 | Y | Y |
| Y |
Windows 8 32 bit client | 3 | Y |
|
| Y |
Windows 8 Server | 3 | Y | Y | Y | Y |
Windows 7 client 32 bit standalone | 2 | Y |
|
|
|
图1.端点配置实例
命令运行的时候会提醒你好几次,确认回复“Y” for “Yes”,便于每个步骤完全正确地运行。
One-to-one Remoting
使用remoting最直接的方式是叫做one-to-one remoting,这让你从本质上在远程计算机上提出交互式PowerShell提示。如果远程机器上启用了remoting,这最简单。
PS C:> enter-pssession -ComputerName Win8
[Win8]: PS C:UsersAdministratorDocuments>
注意,如果你想这样做,在计算机上启用remoting,只需要将本地主机作为计算机名使用。你的计算机将被“远程控制”,但你会获得完整的远程体验。
注意PowerShell提示的变化,包括你现在所连接的计算机名。在这里,就如同你站在物理计算机面前,可运行远程计算机包含的任何命令。下面是几点注意事项:
1.默认下,当PowerShell prompt包括任何计算机名的时候,你不能执行任何初始化Remoting连接的命令。
2.不能执行任何启动图形应用的命令。如果这样做,命令将冻结,点击Ctrl+C终止命令并重新获得控制权。
3.不能执行任何本来就拥有过自己的shell命令,如nslookup or netsh。
4.如果执行策略允许,那你可以在远程机器上运行脚本。
5.你没有连到交互式桌面会话,你的连接将被定义为“网络登录”,虽然你能连接到远程机器上的文件共享。由于连接的类型,Windows不会执行profile脚本,即使你连接到远程机器上的profile主文件夹。
6.你所做的在连接到同个机器上的用户是不透明的,即使他们交互登录到桌面控制台上。换句话说,你不能运行相同的应用,使得其跳到正在登录的用户前面。
7.你必须指定计算机名字,因为它会出现在Active Directory或本地受信任的主机列表上。你不能使用IP地址或DNS CNAME 别名。
用完远程机器,那就运行Exit-PSSession。这将回到本地提示符,关闭到远程机器的连接,释放远程机器的资源。如果关闭PowerShell窗口,这个也会自动发生。
[Win8]: PS C:UsersAdministratorDocuments> Exit-PSSession
PS C:>
我们使用Enter-PSSession的方式将一直与远程机器的PowerShell终端连接。在64位操作系统上,将是64位版本的PowerShell。稍后,我们将介绍如何连接到其他端点(请记得Enable-PSRemoting总共能创建四个端点。)
翻译
相关推荐
-
应用PowerShell进行SharePoint Online管理
在应用PowerShell在线管理SharePoint之前,管理员需要进行一系列准备工作,例如下载SharePoint Online Management Shell等。
-
两种方式将Windows容器部署到微软Azure中
想要创建并管理Windows Server容器吗?本文将会介绍如何利用本地Docker命令和PowerShell模块来实现以上目标。
-
PowerShell脚本示例及管理员参考指南
精明的Windows专业人士和管理员甚至也会做出比卷子袖子干事更加愚笨的事情,为了实现自动化任务,他们需要了解脚本语言以及所有PowerShell工具。
-
如何使用PowerShell管理Windows服务
管理员如何在本地或者远程计算机上操控服务,面对变几十台甚至几百台机器时,PowerShell就派上用场了。