繁体   English   中英

从域上的服务器在非域目标上远程执行脚本

[英]Executing a script remotely on non-domain Target from server on Domain

我陷入一个非常具体的问题:

我的基础架构:

  1. 组织域中服务器上的驱动程序脚本–根据用户登录使用委派的凭据
  2. 目标VM –不在组织域上–需要传递的不同本地凭据
  3. 共享网络驱动器,其数据应可由“ 2”访问-与“ 1”相同的凭据

我需要做什么:

  1. 从域上的服务器触发驱动程序脚本
  2. 将目标虚拟机还原到某些现有快照(使用PowerCLI)
  3. 使用与域相关的凭据在目标VM上映射驱动器
  4. 执行放置在共享网络驱动器上的一些powershell脚本(此脚本内部访问同一位置上的某些.dat和.bin文件)

我的问题是我无法使用Invoke-Command连接到目标VM以执行驱动器映射脚本。 我得到的错误是:

WinRM cannot process the request. The following error with errorcode 0x8009030e occurred while using
Negotiate authentication: A specified logon session does not exist. It may already have been terminated.
Possibly because:
-Kerberos accepts domain user names, but not local user names.
But I do not have any domain user names, as the VM is not on domain

我试过的

  1. ScriptBlock中具有脚本路径的Invoke-Command
  2. 新的PSSession
  3. 将驱动器映射添加为登录时的启动脚本–但是,除非我在每次快照还原后手动登录到目标VM,否则此方法不起作用

使用的先决条件:

  1. 在驱动程序VM和目标VM上均启用PSRemoting
  2. IP被添加为两个主机上的受信任主机
  3. WinRM配置为处理请求
  4. ExecutionPolicy不受限制
  5. 防火墙已禁用

而不是映射驱动器...为什么不对远程计算机运行文件

Invoke-Command -ComputerName $targetVm `
               -Credential $credentials `
               -FilePath Z:\example\file.ps1

尝试使用test-wsman remotemachine来检查remote是否正在运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM