概述双跳访问复制文件没有CredSSP
你好,
我们拥有数百个虚拟机的大环境。 在我们的服务部署过程中,我们需要将一些文件从build drop复制到所有这些机器上。
所以,我们有:
用户机器,执行部署脚本
build立放置机器,文件在哪里
目标机器
Powershell被用作脚本语言。 就像是:
$buildDrop = \”\\sourceMachineBuild\” $machineTarget = \”targetMachine\” Invoke-Command -Computername $machineTarget -ArgumentList $buildDrop -ScriptBlock { Param( $buildDrop ) Test-Path $buildDrop # Will return False }
这种方法导致双跳问题 ,由于Credsspfunction,XP和2k3机器不支持这个问题 ,所以我无法解决这个问题 。 并且在用户机器上调用的复制导致性能瓶颈(数据通过用户机器)。
有没有办法让所有目标机器始终可见的build立下降? 可能会以某种方式将它们添加到受信任的位置或类似的东西?
提前致谢!
我找到了适合我们环境的解决方案。
没有Cred-ssp的情况下,不能通过双跳传输凭证,但是可以在目标机器上运行一些没有第一跳的凭证。
最简单的方法是使用带-s标志的psexec (在System帐户中运行远程进程),最终的字符串是这样的:
psexec \\someHost -s robocopy \”\\stagingHostStaging\” \”\\someHostC$Staging\” /MIR
你也可以用同样的方法启动一些PS脚本,只要确保在远程机器上允许脚本执行 :
psexec \\someHost -s \”\\stagingHostStagingScript.ps1\” SomeArg1 SomeArg2
检查这篇文章,了解psexec如何工作。 服务于某些主机
Credssp 是双跳问题的解决方案。
从等式中删除用户的桌面。 在您的构建服务器上建立一个适当的构建和部署服务器/服务/应用程序,并从那里管理所有的东西 RedGate有一个新的产品,可能会帮助你很大程度上, 部署经理
如果您使用的机器可以到达其他机器,只需使用机器复制文件即可:
$computers | % {copy \’\\serversharebuild\’ \”\\$_c`$Temp\”} $sb = {C:TempDosomething.txt args[0]} $computers | % {Invoke-command -comp $_ -scriptBlock $sb -argumentList $arg}
总结
以上是内存溢出为你收集整理的双跳访问复制文件没有CredSSP全部内容,希望文章能够帮你解决双跳访问复制文件没有CredSSP所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
请登录后查看评论内容