PowerShell远程功能允许配置计算机接收远程命令。管理员可以在远程系统上运行命令。
Enable-PSRemoting cmdlet配置计算机接收PowerShell远程命令。PowerShell远程处理在Windows服务器平台上默认启用。但是,PSRemoting需要在其他版本的Windows上使用Enable-PSRemoting来启用。
在本文中,我将向您解释如何在Windows服务器系统上使用PowerShell Enable-PSRemoting功能。
PowerShell Enable-PSRemoting
命令: Enable-PSRemoting
描述: Configure computers to receive remote commands.
语法:
Enable-PSRemoting
[-Force]
[-SkipNetworkProfileCheck]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
参数:
-Force : 禁用所有用户提示。
-SkipNetworkProfileCheck :当计算机在公共网络上时,它在Windows客户端系统上启用psremoting。该参数使Windows客户端系统上的防火墙规则能够接收来自同一子网内计算机的远程命令。 enable – psremoting cmdlet启用防火墙规则
如果你想启用对所有公共网络命令的远程访问,使用 Set-NetFirewallRule
cmdlet在 NetSecurity
模块中可用。
-Confirm: 执行命令前提示确认
-whatIf:用于描述执行命令时的执行结果。
在本地系统上Enable-PSRemoting
PSRemoting功能在Windows Server 2012, Windows Server 2016或更新版本的Windows OS服务器系统上默认启用。
PowerShell提示: Enable-PSRemoting PowerShell功能没有在Windows客户端(如Windows 10或更早版本的Windows操作系统)默认启用。
运行Enable-PSRemoting cmdlet,使用**run作为管理员启动PowerShell。
PS C:\> Enable-PSRemoting
当我们运行Enable-PSRemoting PowerShell cmdlet命令时,它会在后台运行多个操作。
- 启动Windows Remote Management (WinRM)服务
- 设置WinRM服务启动类型为自动
- 创建监听器以接收任何IP地址
- 启用防火墙例外用于WS管理
- 创建PowerShell会话端点配置
- 启用所有会话配置。
- 设置所有会话配置,以允许远程访问
- 重启Windows Remote Management (WinRM)服务以应用上述更改。
Enable-PSRemoting
重启系统并设置防火墙规则以允许远程命令。
配置计算机接收命令,不需要确认提示
使用Enable-PSRemoting -Force参数抑制确认提示。
PS C:\> Enable-PSRemoting -Force
以上命令只能在非公共网络上运行。
如果你想在公网上Enable-PSRemoting
,你可以使用-SkipNetProfileCheck
参数
PS C:\> Enable-PSRemoting -SkipNetworkProfileCheck -Force
远程Enable-PSRemoting
PowerShell PSRemoting允许您通过在本地系统上启用PSRemoting在远程计算机上运行命令。然而,要在没有PSRemoting的情况下远程运行命令,使用PowerShell有不同的方法。
让我们通过示例来理解在远程计算机上启用psremoting。
使用PSexec在PowerShell中启用远程:
您可以使用PSexec实用程序在远程计算机上启用PSRemoting。
点击这里从微软网站下载PSexec实用程序和unzip文件 PSTool.zip到目录。
要运行PSexec.exe,以管理员身份打开PowerShell运行,并导航到PSTool文件夹,其中有PSexec.exe文件。
要在远程计算机上启用远程处理,请运行以下命令:
psexec.exe \\remoteserver1 -s powershell Enable-PSRemoting -Force
使用上面的命令,它将在远程系统上启用PSRemoting。
使用WMI
使用PowerShell Invoke-CimMethod
cmdlet通过DCOM连接到远程计算机。
WMI有一个Win32_Process
类,允许调用process。使用调用cimmethod ,它连接到远程计算机,启用PSRemoting命令。
使用组策略
在多台计算机上启用WinRM服务的最佳可行方法是使用组策略。使用组策略,您可以创建单个组策略,并一次性在大多数计算机上应用策略。
要使用组策略来启用WinRM服务,请按照以下步骤操作
- 开启WinRM服务
- 设置“WS-Management服务”为“自动启动”
- 配置并打开WinRM服务的防火墙端口
- 创建WinRM监听器
总结
我希望你会发现上面关于PowerShell Enable-PSRemoting有用。您可以在本地启用psremoting,并使用-Force参数配置计算机接收命令,而不提示。
远程启用PSRemoting使您可以在远程系统上运行命令,而不需要使用Psexec实用程序,WMI。通过使用组策略方法,一次在数千台计算机上应用策略来开启它。
作者:Arthur古德曼
链接:https://www.jianshu.com/p/f3fef1501eb0