windows安装openssh及error1067解决

一、 用powershell安装openssh  ——参考

1. 到Github下载官方release包,一般选新版本的

2. 解压到C:\Program Files\OpenSSH,建议放在此目录下。并在解压目录下用管理员打开power shell

3. 根据下面命令安装sshd服务

powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1    # 安装sshd服务
netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22    # 开放22号端口
sc config sshd start= auto                         # 设置开机自启动
net start sshd                               # 启动sshd服务

 

在最后一条命令执行,遇到错误

OpenSSH SSH Server 服务正在启动 .
OpenSSH SSH Server 服务无法启动。

系统出错。

发生系统错误 1067。

进程意外终止。

 

二、 问题1067解决  ——参考

原因: C:\ProgramData\ssh\目录下的文件的权限有问题,可以用 icacls filename 查看文件的所有者。该目录下文件正确的所有者应该为:

All the key files in this folder should ONLY be owned by following 2 system users:

  1. BUILTIN\Administrators
  2. NT AUTHORITY\SYSTEM

解决:OpenSSH的发行包中有解决该权限问题的工具FixHostFilePermissions.ps1,在OpenSSH目录下用power shell执行命令

cd 'C:\Program Files\OpenSSH-Win64'
.\FixHostFilePermissions.ps1

解决完权限问题后,重新执行 net start sshd即可顺利启动服务,用ssh从远程连接Windows。

posted @ 2022-01-13 10:37  谷小雨  阅读(5441)  评论(0编辑  收藏  举报