这太疯狂了,我从PowerShell开始。当然,我需要远程进行管理员工作。
一个简单的
dir \\server\share\folder
只是拒绝工作,我得到这个错误
Get-ChildItem : Cannot find path '\\server\share\folder' because it does not exist.
+ CategoryInfo : ObjectNotFound: (\\server\share\folder:String) [Get-ChildItem], ItemNotFoundException
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand
对我来说,很明显这是一个访问权限问题。而且我们在公司确实有一个域名。我在VNC上使用完全相同的用户帐户登录到服务器,并且可以看到UNC路径。但是每当我尝试通过远程连接从桌面复制文件时。只是行不通!!!
我可以做很多其他事情,因此我很确定自己已经建立了联系。
最佳答案
要使其正常工作,必须同时配置本地计算机和远程计算机。
在远程服务器上,运行以下命令:
Enable-WSManCredSSP -Role server
如果您运行
Get-WSManCredSSP
cmdlet并获得以下输出,您将知道事情已正确配置:在本地计算机上,从管理PowerShell提示符下,您需要允许在PowerShell中进行凭据委派。运行以下命令:
Enable-WSManCredSSP -Role Client -DelegateComputer <REMOTE_COMPUTER_NAME>
您可以使用*为
REMOTE_COMPUTER_NAME
启用所有服务器。当您运行Get-WSManCredSSP并获取以下输出时,您将知道此配置正确:
在本地计算机上,更新组策略以允许将您的凭据委派给远程服务器。
然后,当您需要在远程服务器上运行命令时,您将无法使用任何* -PSSession命令,因为CredSSP无法使用缓存的凭据。您必须使用
Invoke-Command
启动 session ,并使用CredSSP作为Authentication参数的值,如下所示:Invoke-Command -ScriptBlock { # remote commands here } `
-ComputerName <REMOTE_COMPUTER_NAME> `
-Authentication CredSSP `
-Credential <USERNAME>
关于powershell - 哪种安全设置阻止了远程PowerShell 2.0访问UNC路径,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8362057/