繁体   English   中英

如何使用 SSH 远程解锁 Windows 工作站?

[英]How can I remotely unlock a Windows workstation using SSH?

我正在Windows 10工作站上运行OpenSSH服务器,我从Linux连接到该工作站并用于运行 PowerShell 脚本,例如在主机上运行进程管理员和查询系统信息。

我知道由于session 0 隔离中存在 OpenSSH 的sshd服务,某些操作(例如远程启动主机上用户可见的 gui 应用程序)受到限制。 通过使用schtasks.exe将我想要执行的任何任务安排为任务并立即运行该任务,我已经能够自由地解决这个问题。

  • 我可以用rundll32.exe user32.dll,LockWorkStation锁定工作站
  • 我可以查询工作站是否被Get-Process logonui锁定
  • 我将如何解锁系统? 我需要一些可以通过单击客户端计算机上的按钮来自动化的东西。

我试过这个名为Logon.exe的第三方实用程序,但无济于事。 我不相信它与 Windows 10 兼容。

我什至尝试使用带有 PowerShell 的SendKeys()在锁屏时发送密码击键,然后按 Enter,以及使用 AutoHotKey 脚本来执行相同操作。 虽然击键会导致锁屏唤醒,但两种方法似乎都无法在密码输入字段中创建任何输入。

这是参考的 Microsoft Doc: https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse

下载


获取-WindowsCapability-在线|? 名称 - 类似 'OpenSSH*'


安装。 确保安装 SSH 服务器,因为它允许其他人连接到您。


安装 OpenSSH 客户端

Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0


安装 OpenSSH 服务器

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0


配置。 注意入站流量规则。 超级需要。


启动 sshd 服务

启动服务 sshd


可选但推荐:

设置服务-名称 sshd -StartupType '自动'


确认防火墙规则已配置。 它应该由安装程序自动创建。

获取-NetFirewallRule -Name ssh


应该有一个名为“OpenSSH-Server-In-TCP”的防火墙规则,应该启用它

如果防火墙不存在,则创建一个

New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22


最后,这是您的连接方式


ssh 用户名@服务器名


享受

PS。 我尝试了格式化。 我不想大胆,它只是不断发生队长。 互联网决定今天要大胆一些……

暂无
暂无

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

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