![如何最好地找到由 SYSTEM 运行的 powershell 脚本的 openssh 凭据](https://linux22.com/image/1574680/%E5%A6%82%E4%BD%95%E6%9C%80%E5%A5%BD%E5%9C%B0%E6%89%BE%E5%88%B0%E7%94%B1%20SYSTEM%20%E8%BF%90%E8%A1%8C%E7%9A%84%20powershell%20%E8%84%9A%E6%9C%AC%E7%9A%84%20openssh%20%E5%87%AD%E6%8D%AE.png)
我有一个 powershell 脚本,格式如下
$commands = @"
echo "1 + 2" | bc
"@
$commands | ssh [email protected]
现在我正在做的是提前设置一次 ssh 密钥,但问题是我的脚本的调用者是在 SYSTEM 用户空间中运行的服务,这反过来意味着我的 ssh 密钥都没有生成或被administrator
使用user1234
。令人恼火的是,这实际上导致 powershell ssh 客户端挂起。
最好的解决方案是什么?有人能提供一些代码来帮助我开始吗?
- 我可以做一些 powershell
runas
foo 在用户之间切换,为我提供一种 ssh 的用户“硬点” - 我可以将 ssh 密钥从其默认位置移出
~/.ssh
,但我真的不知道这里什么是安全的,什么不是安全的 - 我可以以高昂的运营成本停止以 SYSTEM 用户身份使用服务,并尝试在每次进入办公室时以用户身份运行该服务。
非常感谢!