[玩转系统] 远程PowerShell |在 PowerShell 中连接远程系统的步骤
作者:精品下载站 日期:2024-12-14 04:47:24 浏览:15 分类:玩电脑
远程PowerShell |在 PowerShell 中连接远程系统的步骤
远程 PowerShell 简介
PowerShell 不仅可以帮助管理员在本地系统或服务器上运行命令来管理环境,还允许用户连接到远程服务器或计算机。 PowerShell 的主要优势之一在于其使用各种技术的远程计算能力。 PowerShell 远程处理允许用户使用远程连接在任何 Windows 系统上执行 PowerShell cmdlet 或执行脚本或执行任何其他操作。 PowerShell 核心支持并使用 Windows Management Instrumentation (WMI)、Secure Shell (SSH) 或 WS- Management 等技术在远程系统中执行任务。本文将详细介绍如何使用 PowerShell 在远程系统中执行命令以及建立与远程计算机的连接的各种方式。
连接到远程系统涉及的步骤
连接到远程系统的第一步是在目标计算机上启用 PowerShell 远程工具。上述内容是通过在管理模式下打开 Windows PowerShell 并运行以下 cmdlet 来实现的。
启用-PSRemoting-Force
上述 cmdlet 启动 WinRM 服务。这将允许传入系统的连接并创建防火墙规则来实现此目的。如果您不想在执行每个步骤时收到提示,请运行带有force参数的cmdlet。
如果源计算机和目标计算机位于同一域中,则仅需要执行上述步骤。
如果系统未连接到同一域,则需要执行更多步骤。在此之前,必须在源将连接的计算机上启用远程处理。
为了使 PowerShell 远程处理功能发挥作用,必须确保网络必须是专用网络而不是公共网络。
然后必须使用计算机上的受信任主机设置建立计算机(源和目标)之间的信任
上述步骤可以使用以下cmdlet来实现
Set-Item wsman:\localhost\client\trustedhosts
在受信任的主机旁边,我们应该指定需要以逗号分隔的方式列出连接的计算机的 IP 地址。如果您想允许所有计算机连接,则应使用通配符“*”。运行上述 cmdlet 后,必须重新启动 WinRM 服务才能使设置生效。可以使用以下 cmdlet 来实现
重新启动服务WinRM
- 这两个 cmdelt 都必须在所有源计算机和目标计算机上运行。
- 配置完成后,可以通过运行以下 cmdlet 来验证与远程计算机的连接:
Test-WsMan <RemoteCOMPUTERName>
- 指定必须在上述 cmdlet 中建立连接的计算机名称
- 如果连接成功,则返回目标系统的WiRM服务的状态。
在没有启用远程处理配置的情况下,很少有 cmdlet 可以在远程计算机上执行。这是因为这些 cmdlet 将计算机名称作为参数。这些类型的 cmdlet 具有特定的通信协议并且适用于所有 Windows 计算机。
以下是上述类型的一些 cmdlet
- Restart-Computer
- Get-WmiObject
- Get-WinEvent
- Test-Connection
要在我们的会话中查找此类 cmdlet,可以使用以下 cmdlet
代码:
Get-Command | where { $_.parameters.keys -contains "ComputerName" -and $_.parameters.keys -notcontains "Session"}
输出:
测试连接
要测试远程配置的状态,我们可以尝试使用以下 cmdlet 连接到远程计算机。 test-was man cmdlet 可用于检查 WinRM 服务是否正在目标计算机上运行。如果启用该服务,则会显示成功消息以及目标计算机详细信息,否则会引发错误消息。该 cmdlet 可以与目标系统的名称或 IP 地址一起使用。要测试本地 WinRM 服务的状态,可以使用 Test-WSMan。
测试-WSMan 10.20.20.22
测试-WSMan
连接和结束会话
要启动与远程计算机的会话,需要建立会话。建立会话后,命令提示符显示名称将更改为建立会话的计算机的显示名称。之后本地运行的命令将在远程计算机上执行,并将结果显示在本地计算机上。
输入-PSSession TestComputer。
要结束会话,请使用以下 cmdlet
退出-PSSession
在远程计算机上运行命令
在某些情况下,可能需要在多个远程系统上运行相同的命令。为每个会话建立一个会话并执行它们会很乏味。在这种情况下,可以使用 invoke-command cmdlet。此 cmdlet 可以将多个计算机名称或 IP 地址作为输入参数并执行这些命令并显示输出。
代码:
Invoke-Command -ComputerName testserver1, testserver2 -ScriptBlock {Get-UICulture}
输出:
运行脚本
还可以从本地系统在远程计算机上执行脚本。可以使用相同的调用命令来执行相同的操作。该脚本应该位于运行命令的本地系统上,也可以位于网络驱动器上。
Invoke-Command -ComputerName testServer01, testServer02 -FilePath c:\Scripts\test.ps1
在上面的命令中,脚本在提到的两台服务器上运行。
如果会话对象存储在变量中,则可以在它们上运行任何命令。由于会话被保存,因此一个命令的输入可以传递到另一命令。在这种情况下,会话不在本地计算机上。
$test=New-PSSession -ComputerName testServer01, testServer02
Invoke-Command -Session $test {$test1 = Get-HotFix}
可以使用 WSMan Provider 建立高级远程处理。
代码:
Write-Host "Welcome to the example of remoting in PowerShell"
Write-Host "The following cmdlet will be executed on two servers"
Invoke-Command -ComputerName testserver1,testeserver2 -ScriptBlock {Write-Host "Local system name is" $localhost}
Write-Host "Executing a script on remote server"
Invoke-Command -ComputerName Server01, Server02 -FilePath c:\Scripts\DiskCollect.ps1
Write-Host "script executed successfully"
Write-Host "Creating session example"
$cr=Get-Credential
$se = New-PSSession -Credential $cr -ComputerName testserver1,testserver2
Enter-PSSession $se
Write-Host "Session created"
Exit-PSSession
Remove-PSSession $sess
write-host "Session is closed"
输出:
结论
因此,本文详细介绍了 PowerShell 中的远程处理。它解释了如何建立连接以及连接到远程计算机之前需要完成的先决条件。它还通过各种示例解释了如何在远程系统上运行命令、如何执行脚本等。要详细了解更多信息,建议使用示例脚本。
猜你还喜欢
- 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 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[电视剧] 安眠书店/你 第五季 You Season 5 (2025) 【全10集】
[电视剧] 棋士(2025) 4K 1080P【全22集】悬疑 犯罪 王宝强 陈明昊
[软件合集] 25年6月5日 精选软件22个
[软件合集] 25年6月4日 精选软件36个
[短剧] 2025年06月04日 精选+付费短剧推荐33部
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[剧集] [央视][笑傲江湖][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
[电视剧] [突围] [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