当我使用PSEXEC.exe时,对于远程系统出现“拒绝访问”错误。
关于如何解决这个问题的任何想法?
Answers:
嗨,我在这里从许多在线来源中获取有关“访问被拒绝”的各种解决方案的摘要:可在此处找到大多数信息(包括所需的要求) -sysinternal帮助
正如有人提到的添加此注册表项,然后重新启动计算机:
reg添加HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ system / v LocalAccountTokenFilterPolicy / t REG_DWORD / d 1 / f
阅读此知识库文章以了解其功能以及为什么需要它
禁用防火墙(注意-这将使您失去防火墙保护)
netsh advfirewall将所有配置文件状态设置为关闭
如果目标用户的PW为空,并且您不想添加一个,请在目标上运行:
[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa]“ LimitBlankPasswordUse” = dword:00000000
这对我没有用,但是我在目标执行时已经在几个地方阅读过,对其他人也是如此
开始->运行-> secpol.msc->本地策略->安全选项->网络访问:共享>本地帐户的安全模型>经典-本地用户进行身份验证
如果已经在“经典”中:
从提升的命令提示符gpupdate \ force移至“仅来宾-..”运行从提升的命令提示符gpupdate \ force再次移至“经典-..”
这个解决了我的问题:
从提升的命令提示符“ net use”的目标上运行,查看输出图,并查看那里的远程列中列出的共享(我只删除了断开连接的共享-您可以全部尝试)运行“ net use [列表前的远程路径] / delete然后运行“ net use \ target \ Admin $ / user:[用户名]”,输入提示密码请求(如果为空PW,只需按Enter),中提琴应该可以工作。
祝你好运,希望这可以节省别人的时间。
我只是解决了一个相同的症状,通过创建注册表值HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system\LocalAccountTokenFilterPolicy
,并将其设置为1的更多详细信息,请点击这里。
REG_DWORD
关键。
code
Windows注册表编辑器版本5.00 [HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System]“ LocalAccountTokenFilterPolicy” = dword:00000001code
这对我来说有帮助:
cmdkey.exe /add:<targetname> /user:<username> /pass:<password>
psexec.exe \\<targetname> <remote_command>
PsExec拥有其启动程序具有的任何访问权限。它在常规Windows访问控制下运行。这意味着启动PsExec的任何人(无论是您,调度程序,服务等)在目标计算机上都没有足够的权限,或者目标计算机配置不正确。首先要做的是:
如果这不能解决您的问题,请确保目标计算机满足此处指定的最低要求。
您可以尝试命令
net use \\computername\ipc$ /user:adminname password
在使用psexec之前获得远程PC上的管理员权限。
我有同样的问题。经过努力,我找到了一个简单而完整的解决方案:
代码如下:
runas /user:[USERNAME] "psexec -e -h -s -u [USERNAME] -p [PASSWORD] \\[COMPUTERNAME] cmd /C [COMMAND1] & [COMMAND2]"
如果您想在另一台计算机上调试脚本,请运行以下模板:
runas /user:[USERNAME] "psexec -i -e -h -s -u [USERNAME] -p [PASSWORD] \\[COMPUTERNAME] cmd /C [COMMAND1] & [COMMAND2] & pause"
尝试在目标(远程)计算机上设置此密钥,然后重新启动计算机:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"LocalAccountTokenFilterPolicy"=dword:00000001
请参阅:http : //forum.sysinternals.com/topic10924.html和http://www.brandonmartinez.com/2013/04/24/resolve-access-is-denied-using-psexec-with-a-local-管理员帐户/
我发现PSEXEC(和其他PS工具)失败的另一个原因-如果某些东西(...说是病毒或木马)隐藏了Windows文件夹和/或其文件,则PSEXEC将失败,并显示“访问被拒绝”错误,PSLIST会出现错误“找不到处理器性能对象”,您将无法确定原因。
您可以加入RDP;您可以访问admin $共享;您可以远程查看驱动器内容等,但没有迹象表明文件或文件夹被隐藏是原因。
我将在昨天试图确定此奇怪问题的原因的几页上发布此信息,因此您可能会逐字逐字地在其他地方看到此信息-只是以为我会在其他人拔掉头发之前先说出这个词试图理解为什么性能计数器与PSEXEC运行有关。
对于可能偶然发现此问题的任何人。Windows 7上的Microsoft Windows最近发布了(2013年12月)安全更新,阻止了远程执行。请参阅http://support.microsoft.com/kb/2893294/en-us
我通过转到控制面板\程序\程序和功能\已安装的更新来卸载了安全更新。
在那之后它就起作用了。
以下工作有效,但仅在我将PSEXEC从Microsoft升级到2.1之后。
[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System]“ LocalAccountTokenFilterPolicy” = dword:00000001请参阅:http : //forum.sysinternals.com/topic10924.html
我有一个较旧的版本无法正常工作。我用它通过Dell kace做了一些USMT工作,请客:)
在Windows Server 2012 R2上,我无法从用户帐户运行
psexec -u administrator -p password \\machinename -h -s -d -accepteula cmd.exe
但是,如果您不带参数运行,则效果很好-h -s
。这就是为什么我用它来解决我的麻烦:
psexec -accepteula -u administrator -p password \\machinename %PathToLocalUtils%\psexec.exe -h -s -d cmd.exe
我仍然使用psexec
,即使在获胜10上也是如此psexec.exe
。在Windows 10的win32
文件夹中的替换为较旧的版本即可->我使用2.11.0.0版本。我使用的Windows 10版本只能在远程计算机上将.bat文件作为后台/隐藏进程运行。花了整整一天的时间来解决这个问题。
从上方将注册表项添加到远程计算机也有帮助:
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f
我尝试了很多方法,但无法使用psexec。它给出“拒绝访问”。将目标用户帐户类型从标准更改为管理员后,我通过psexec连接了计算机。
我研究了为什么需要管理员类型帐户的原因,然后我找到了这个答案。
您可以通过以下方式更改目标计算机的用户帐户:控制面板->用户帐户->更改帐户类型。如果登录了标准帐户,则必须输入管理员帐户和密码才能更改该帐户。
之后,我使用以下命令登录: psexec \\remotepcname -u remoteusername -p remotepassword cmd