[玩转系统] 如何启用 PSRemoting(本地和远程)
作者:精品下载站 日期:2024-12-14 13:05:13 浏览:14 分类:玩电脑
如何启用 PSRemoting(本地和远程)
尽管在 Windows 上,PSRemoting 默认启用,但并非始终启用。如果您需要测试是否启用 PSRemoting 或在 Windows 上启用 PSRemoting,本教程适合您。
本教程将引导您通过多种不同的方式在运行 Windows 的本地和远程计算机上启用 PSRemoting。
让我们开始吧!
启用 PSRemoting 有很多作用
如果您第一次了解 PowerShell Remoting,您可能会认为启用只是一个命令。也许您看到了一些对 Enable-PSRemoting
PowerShell cmdlet 的引用,并认为一旦运行它,它就会在某个地方发生一些翻转。你错了。
当您听说启用 PSRemoting 时,必须在后台执行许多任务才能实现这一点。由于 PowerShell Remoting 依赖于其他系统才能正常运行,因此它具有一些依赖性。
例如,在 Windows 上,当您运行不带参数的 Enable-PSRemoting
cmdlet 时,它将执行以下所有任务:
- WinRM 服务已启动并设置为自动启动。
- 在默认 WinRM 端口 5985 上为 HTTP 流量创建侦听器。
- 启用 WS-Management 的防火墙例外。
- 向 WS-Management 注册 PowerShell 会话配置。
- 启用 PowerShell 会话配置。
- 设置 PowerShell 远程会话以允许远程访问。
- 重新启动 WinRM 服务器以应用所有更改。
您是否很高兴不必手动完成所有这些工作?如果 Enable-PSRemoting
cmdlet 可以完成这一切,为什么要提到这一点呢?因为有时会出现某些问题无法正常工作的情况,您需要对发生的情况进行故障排除。
Windows 上的默认 PSRemoting 设置
由于 PSRemoting 诞生于 Windows,因此默认情况下启用它,但并非普遍启用,也不适用于所有 Windows 操作系统版本。
在所有 Windows 客户端操作系统上,PSRemoting 始终处于禁用状态。
在 Windows Server 上,PSRemoting 有时会启用,但并非始终启用,具体取决于 Windows 运行的网络配置文件。下面您将找到一个方便的表格,可帮助您确定您的 Windows 操作系统是否启用了 PSremoting。
Operating SystemNetwork ProfilePSRemotingWindows Server 2008 R2Domain/PrivateDisabledWindows Server 2008 R2PublicDisabledWindows Server 2012 & NewerDomain/PrivateEnabledWindows Server 2012 & NewerPublicEnabled within the same subnet另一方面,Linux 则很简单。 PSRemoting 根本就不是一个东西!默认情况下甚至没有安装 PowerShell。如果您想在 Linux 上运行 PSRemoting,则必须对其进行设置。
说得够多了,让我们向您展示如何实际开始使用 PSRemoting!
先决条件
如果您打算按照本节中的示例进行操作,请确保您具备以下条件:
- Windows Server 2008 R2 或更高版本的计算机
- 本地管理员组中的本地或 Active Directory 域用户
本地启用 PSRemoting
启用 PSRemoting 最简单的方法之一是使用内置的 Enable-PSRemoting
命令。正如您在上面了解到的,此命令是配置许多不同服务以适应 PowerShell 远程处理的快捷方式。
使用 Enable-PSRemoting
Cmdlet
当您在不带任何参数的情况下运行此命令时,它将根据您运行的操作系统采取不同的操作。在任何当前的 Windows 操作系统上,都会发生相同的基本步骤。 PSRemoting 已启用,WinRM HTTP 侦听器已创建,并且防火墙规则已启用。主要区别在于公共网络的处理方式。
在服务器操作系统(如 Windows Server 2019)上,公共网络的防火墙规则允许来自同一网络上其他设备的远程连接。在客户端操作系统(例如 Windows 10)上,您将收到一条错误消息,指出您是公共网络。
如果您不确定 Windows 在什么网络配置文件下运行,请运行以下命令:
Get-NetConnectionProfile
您应该只在受信任的网络上使用 PSRemoting,因为它本质上是运行一个 Web 服务器来侦听远程连接。
如果您同意在除私有或域之外的网络配置文件上运行 PSRemoting,则可以使用 SkipNetworkProfileCheck
跳过网络配置文件检查范围。使用此参数将打开 Windows 防火墙上的 WinRM 端口。
Enable-PSRemoting -SkipNetworkProfileCheck
使用 SkipNetworkProfileCheck
参数将打开 Windows 防火墙,以便在当前网络配置文件上进行 PowerShell 远程处理,但仅允许来自同一子网上的计算机的远程连接。
可以与 Enable-PSRemoting
一起使用的两个参数协同工作。它们是-Force
和-Confirm
参数。您可以使用 -Force
跳过运行 Enable-PSRemoting
命令通常会出现的所有提示。您还可以使用 -Confirm:$false
来获得相同的结果。
使用 winrm Quickconfig
命令
在创建 Enable-PSRemoting
cmdlet 之前,winrm Quickconfig
命令曾经是设置 PSRemoting 的流行方法,但它仍然占有一席之地。如果您仅运行 winrm Quickconfig
,它将启用 WinRM 服务、创建 HTTP 侦听器并启用防火墙规则。这些都是 Enable-PSRemoting
已经完成的事情,但这不会将计算机设置为能够处理远程 PowerShell 会话。
winrm
命令派上用场的地方是设置 HTTPS 侦听器。虽然您可以手动执行此操作,但如果您有 HTTPS 侦听器的适当证书,则只需运行 winrm Quickconfig -transport:https
即可配置 HTTPS 侦听器和 HTTPS 防火墙规则。
远程启用 PSRemoting
到目前为止,您已经了解了可以通过在本地计算机上运行命令来启用 PSRemoting。这让我们陷入了先有鸡还是先有蛋的情况。 PSremoting 允许您在远程计算机上运行命令,但是如何在没有 PSRemoting 的情况下远程运行命令?
三种方式; PSexec 实用程序、WMI 和组策略。
使用 Psexec
PSExec 是一个方便的实用程序,允许您像 PSRemoting 一样运行远程命令。但是,PSexec 使用不同的通信方法,您可以利用它来发挥自己的优势!
借助 PSexec,您可以使用以下命令从本地计算机运行 Enable-PSRemoting
。下面的命令调用 psexec 并连接到 ServerB 服务器。然后,它启动 PowerShell 进程并使用 -Force
开关执行 Enable-PSRemoting
命令以跳过通常的提示。
.\psexec.exe \ServerB -h -s powershell.exe Enable-PSRemoting -Force
此选项适用于需要在远程系统上启用 PSRemoting 的一次性实例,但对于必须在许多系统上启用 PSRemoting 并且需要下载 psexec 的情况则不太适用。
使用WMI
有时 PSexec 不起作用。许多安全软件都会阻止 psexec,但不用担心,您也有 WMI!
使用 PowerShell 和 Invoke-CimMethod
cmdlet。使用 Invoke-CimMethod
cmdlet,您可以指示 PowerShell 通过 DCOM 连接到远程计算机并调用方法。
幸运的是,WMI 有一个 Win32_Process
类,允许您调用进程。通过针对 Win32_Process
调用 Create
方法,Invoke-CimMethod
连接到远程计算机,调用 PowerShell 并运行 Enable-PSRemoting
如下所示。
下面的示例为会话连接创建一个哈希表,其中指定了服务器名称、凭据和协议。然后在下面的哈希表中,正在设置 Invoke-CimMethod
的参数。一旦运行这些,就会通过 DCOM 协议创建 CIM 会话,该协议启动 PowerShell 进程,然后运行 Enable-PSRemoting
命令。
$SessionArgs = @{
ComputerName = 'ServerB'
Credential = Get-Credential
SessionOption = New-CimSessionOption -Protocol Dcom
}
$MethodArgs = @{
ClassName = 'Win32_Process'
MethodName = 'Create'
CimSession = New-CimSession @SessionArgs
Arguments = @{
CommandLine = "powershell Start-Process powershell -ArgumentList 'Enable-PSRemoting -Force'"
}
}
Invoke-CimMethod @MethodArgs
如果您在域环境中使用此命令,并且执行命令的用户在目标服务器上具有管理权限,则可以排除 Credential=Get-Credential
行。
使用组策略
最后,可以说是在各种计算机上启用 WinRM 的最佳选择是通过组策略。使用组策略时,您可以创建单个组策略对象并同时在数千台计算机上应用该策略。
所有计算机必须位于 Active Directory 域中才能使用组策略。
要使用组策略同时在多台计算机上启用 WinRM,您将需要设置三个不同的配置项:
- 启用 WinRM 服务。
- 打开 WinRm 的 Windows 防火墙端口。
- 创建 WinRM 侦听器并允许与其连接。
首先,通过 RDP 连接到域控制器,或者更好的是,在加入域的工作站上安装远程服务器管理员工具 (RSAT) 包。您现在应该可以使用组策略管理控制台 (GPMC)。
启用WinRM服务
要在所有目标计算机上启用 WinRM 服务:
- 打开 GPMC 并创建一个 GPO。在新 GPO 中,导航至计算机配置 —> Windows 设置 —> 安全设置 —> 系统服务
- 选择Windows 远程管理(WS-Management)。
- 在配置面板中,选中定义此策略设置复选框。
- 选择自动单选按钮将 WinRm 服务设置为在启动时自动启动。
- 单击“确定”确认设置。
打开Windows防火墙端口
接下来,您需要在所有目标计算机上打开 WinRM 端口。仍在编辑上面创建的 GPO 时:
- 导航至计算机配置 —> Windows 设置 —> 安全设置 —> 具有高级安全性的Windows Defender 防火墙。
2. 单击新建入站规则以创建新的入站规则。
3. 在第一页上选择预定义,然后选择Windows 远程管理,如下所示。
4. 在下一页上,选中域/专用网络规则复选框,除非您知道您的环境中使用公共网络并且需要允许来自它们的远程连接。
5. 在下一页上保留默认值允许连接,然后单击“完成”以创建规则。
创建 WinRM 侦听器和筛选器列表
添加到 GPO 的最后一个配置项是创建 WinRM 侦听器广告,允许连接到该 WinRM 侦听器。此设置为 HTTP 创建 WinRM 侦听器,并允许从指定的 IP 或 IP 范围连接到它。
仍在编辑 WinRM GPO 时:
- 导航至计算机配置 —> 管理模板 —> Windows 组件 —> Windows 远程管理 (WinRM) —> WinRM 服务。
2. 对于允许通过 WinRM 进行远程服务管理设置,选择启用。
3. 在允许通过 WinRM 进行远程服务器管理设置下,为 IPv4 过滤器和 IPv6 过滤器提供星号 (*
)如下所示。
请注意,如果您提前知道哪些主机将连接到所有目标计算机,则可以在每个过滤器列表中指定多个主机,并用逗号分隔。
4. 单击确定确认最新的GPO 设置。
应用 GPO
此时,GPO 应该已创建并准备就绪。您现在必须执行的最后一个任务是将此 GPO 应用于您希望启用 WinRM 的所有目标计算机。在本教程中,您将不会学习如何将 GPO 分配给目标计算机。
如果您不知道如何将 GPO 分配给 Active Directory 中的一组计算机,您应该查看这篇文章。
下一步
在本教程中,您学习了如何以多种不同的方式启用 PSRemoting。如何启用 PSRemoting 在很大程度上取决于您的环境,我希望我已经在这里介绍了您的场景。
现在,利用您所学到的知识,走出去并开始在您的环境中使用 PSRemoting!
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[短剧] 2025年05月31日 精选+付费短剧推荐58部
[软件合集] 25年5月31日 精选软件66个
[电影] 黄沙漫天(2025) 4K.EDRMAX.杜比全景声 / 4K杜比视界/杜比全景声
[风口福利] 短视频红利新风口!炬焰创作者平台重磅激励来袭
[韩剧] 宝物岛/宝藏岛/金银岛(2025)【全16集】【朴炯植/悬疑】
[电影] 愤怒的牦牛 (2025) 国语中字 4k
[短剧合集] 2025年05月30日 精选+付费短剧推荐56部
[软件合集] 25年5月30日 精选软件26个
[软件合集] 25年5月29日 精选软件18个
[短剧合集] 2025年05月28日 精选+付费短剧推荐38部
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[美图] 2W美女个美女小姐姐,饱眼福
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag