将文件从pssession返回到其调用者

问题描述 投票:1回答:1

如果答案是否定的,那么在安全方面最有意义,但我的问题来自以下内容:

PS> $s = new-pssession -sshtransport -host host -user me
PS> copy-item $filename -tosession $s ${params}
PS> enter-pssession $s
[host]: PS /home> process-data $filename >process.out
[host]: PS /home> copy-item ...

在这里,我想知道这个交互式提示是否有办法将文件“返回”到我的原始会话。只是让你做一些事情:

copy-item $filename -tosession $Host

看起来很冒险,我可能不希望远程脚本能够从我的系统中提取东西。

有没有一种机制让调用者可以使用文件?像Receive-Job这样的东西,我该如何提供文件呢?

powershell
1个回答
1
投票

由于双跳,您无法在远程会话中将文件从远程会话传输到会话,但是一旦启动了远程会话,您就可以检索该文件:

PS> $s = New-PSSession -SSHTransport -Host host -User me
PS> $filename | Copy-Item -ToSession $s -Destination /home/
PS> Enter-PSSession -Session $s

[host]: PS> process-data $filename >process.out
[host]: PS> Exit-PSSession

PS> Copy-Item -FromSession $s -Path /home/process.out -Destination C:\Temp\

当在*Session上使用Copy-Item参数时,它使用WinRM来处理文件传输,而不是SMB。这更安全。

© www.soinside.com 2019 - 2024. All rights reserved.