Windows支持OpenSSH了!sparkdev

从Win101809和WindowsServer2019开始Windows开始支持OpenSSHServer。本文介绍一下其基本的概念和配置方法,本文演示用的环境为Win101809(ssh客户端)和WindowsServer2019(ssh服务器)。

OpenSSH客户端程序默认已经被系统安装好了,打开Settings->Apps->Manageoptionalfeatures面板就可以看到:

而OpenSSHServer默认没有安装,需要用户手动安装。点击上图中的"Addafeature"按钮,然后选择OpenSSHServer,并点击"Install"按钮:

开启服务安装完成后打开服务管理器,把OpenSSHAuthenticationAgent服务和OpenSSHSSHServer服务都设置为自启动,并启动这两个服务:

监听端口启动服务后可以通过netstat命令查看SSHServer服务是不是已经开始监听默认的22号端口了:

防火墙规则在安装OpenSSHServer的时候会在防火墙的入站规则中添加一条记录让防火墙放行对22号端口的访问:

服务器端的配置文件目录服务器端的配置文件在C:\ProgramData\ssh目录中,注意C:\ProgramData是一个隐藏目录:

Windows系统中OpenSSH的安装目录为C:\Windows\System32\OpenSSH,不管是客户端程序还是服务器端程序都这这个目录中:

OpenSSH服务器端程序的默认配置文件sshd_config_default也在这个目录中。这个目录会被添加到PATH环境变量中:

因为SSH客户端所在的目录被添加到了PATH环境变量中,在PowerShell中可以直接执行OpenSSH客户端的命令,比如ssh:

连接远程Linux主机使用ssh命令连接一下Linux主机,笔者的Linux主机为Ubuntu16.04,可以连接,但是欢迎信息显示了两次:

查看ssh命令的版本为7.7.2.1:

在另外一台机器上用个老一点的版本(7.6.0.0)试了试:

没有发现重复输出欢迎信息的问题,判断可能是新版本引入的bug。

连接成功后默认的shell是WindowsCommandshell(cmd.exe)程序:

在Windows系统中,PowerShell已逐渐成为主流,我们可以把默认的shell设置为PowerShell。其实就是在运行OpenSSHServer的Windows系统的注册表中添加一个配置项,注册表路径为HKEY_LOCAL_MACHINE\SOFTWARE\OpenSSH,项的名称为DefaultShell,项的值为C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe。我们可以以管理员身份启动PowerShell,然后执行下面的命令完成注册表项的添加:

现在重新连接远程服务器,默认的shell已经变成了PowerShell:

ssh-keygen命令ssh-keygen命令用来生成公钥认证使用的秘钥对,创建的秘钥一般都和ssh客户端的配置一起保存在用户家目录下的.ssh目录中(与Linux系统中类似):

执行ssh-keygen命令:

默认情况下一路回车就可以了,使用默认的文件名称和存放目录:

遗憾的是Windows下目前还没有提供ssh-copy-id命令,需要手动把用户的公钥添加到远程主机系统中的用户的authorized_keys文件中。具体在运行OpenSSHServer的主机上的操作步骤如下:在用户家目录下创建.ssh目录打开PowerShell,进入用户的家目录,用mkdir命令创建.ssh目录:

创建authorized_keys文件并加入公钥在PowerShell中执行notepad.ssh\authorized_keys命令创建文本文件,把客户端的公钥复制到这个文件中并保存。把文本文件的名称修改为authorized_keys:

修改ssh服务的配置文件以管理员权限打开PowerShell,执行命令notepadC:\ProgramData\ssh\sshd_config。注释掉配置文件中的最后两行然后保存:

注意:一定不要用Repair-AuthorizedKeyPermission命令修复.ssh\authorized_keys文件的权限。也不要以下面的方式创建.ssh\authorized_keys文件:

echo"publickey">.ssh\authorized_keysecho$null>.ssh\authorized_keys总结OpenSSH的支持让系统管理员有了一个方便的工具来管理Windows系统,相信OpenSSH+PowerShell的组合将成为管理Windows系统的黄金搭档。本文只是介绍了一些入门的概念,但给人的感觉是Windows上的OpenSSH工具尚需打磨(问题挺多的,按照文档配置个公钥认证就把人搞吐了)。

THE END
1.如何在Windows11上安装OpenSSH服务器OpenSSH 是 SSH(安全外壳)协议的流行开源实现,现已作为 Windows 11 中的可选功能提供。只需单击几下,您就可以在 Windows 11 上安装 SSH 服务器。安装后,SSH 服务器允许您使用任何 SSH 客户端连接到 Windows 11 计算机。因此,言归正传,让我指导您完成在 Windows 11 上安装 OpenSSH 服务器的步骤。在 https://baijiahao.baidu.com/s?id=1772751839695745691&wfr=spider&for=pc
2.Windows安装ssh2PHPWindows安装ssh2 ssh2拓展下载,按自己的系统及PHP版本下载 我下载的是7.2版本的,php_ssh2-1.2-7.2-ts-vc15-x64.zip https://windows.php.net/downloads/pecl/releases/ssh2/ 把这两个文件php_ssh2.pdb,php_ssh2.dll放到php目录下的ext目录下https://download.csdn.net/blog/column/8864237/103276548
3.Windows安装OpenSSH支持SSH前言:在管理Linux服务器的时候,我们经常需要使用ssh客户端连接到服务器,或者进行向服务器传文件,特别是对运维或者系统管理员,如果使用Mac或者Linux桌面系统的同学就很容易,使用windows的同学,需要安装xShell、putty等工具,即使安装这些软件也不能直接使用scp,或者ssh-keygen生成密钥等操作。 https://www.jianshu.com/p/f8ba3e51d60e
4.windows安装openssh并通过生成SSH密钥登录Linux服务器Linux进入windows的命令行工具,输入ssh命令,出现下面信息即表示我们安装成功 四、利用ssh-keygen命令生成密钥对(公钥及对应的私钥) ssh-keygen具体参数如下: -a trials 在使用 -T 对 DH-GEX 候选素数进行安全筛选时需要执行的基本测试数量。 -B 显示指定的公钥/私钥文件的 bubblebabble 摘要。 https://www.jb51.net/article/148862.htm
5.在Windows下安装OpenSSHServer&部署秘钥腾讯云开发者社区Windows 11 打开设置选择应用-可选功能 选择查看功能,然后选择open ssh 服务器和open ssh 客户端,选择下一步即可 Windows 10 在设置中选择应用-应用和功能-可选功能 选择添加功能,然后选择open ssh 服务器和open ssh 客户端,选择安装即可 启动和设置开机自启 https://cloud.tencent.com/developer/article/2184419
6.windows中如何安装ssh服务器配置?Worktile社区第一步:安装OpenSSH 打开Windows设置,选择“应用”。 点击“应用和功能”选项卡。 在右侧的“应用和功能”搜索框中搜索“OpenSSH服务器”。 选择“OpenSSH服务器”并点击“安装”按钮。 等待安装完成。 第二步:配置SSH服务器 打开Windows设置,选择“应用”。 https://worktile.com/kb/ask/1283244.html
7.在Windows电脑上启动并配置SSH服务安装OpenSSH服务器: 在搜索框中输入“OpenSSH Server”,勾选该选项,然后点击“安装”。 Windows Server 打开“服务器管理器”: 通过“开始”菜单或搜索框打开“服务器管理器”。 添加角色和功能: 在“服务器管理器”中,点击“管理” > “添加角色和功能”。 https://developer.aliyun.com/article/1599625
8.Windows上的OpenSSH:安装配置和使用指南Windows 中的 OpenSSH 是一个可选功能(FoD),需要手动添加,它并不会随系统自动安装。本文将介绍如何在 Windows 11 或 Windows 10(1809 版本及以上)中安装、配置和使用 OpenSSH 客户端和服务器。 什么是 OpenSSH? OpenSSH 是一款用于安全远程连接和计算机管理的工具套件,它通过加密技术来保障通信安全,其主要功能包https://www.sysgeek.cn/openssh-windows/
9.在Windows上使用OpenSSH安装SFTP/SSH服务器二进制文件安装在%WINDIR%\System32\OpenSSH。配置文件 (sshd_config) 和主机密钥安装在%ProgramData%\ssh(仅在服务器第一次启动后)。 如果您想安装比 Windows 内置版本更新的 OpenSSH 版本,您可能仍需要使用以下手动安装。 在早期版本的 Windows 上 https://kb.tieten.cn/open.knowledge/view/737
10.windows7安装ssh命令51CTO博客已为您找到关于windows7安装ssh命令的相关内容,包含IT学习相关文档代码介绍、相关教程视频课程,以及windows7安装ssh命令问答内容。更多windows7安装ssh命令相关解答可以来51CTO博客参与分享和学习,帮助广大IT技术人实现成长和进步。https://blog.51cto.com/topic/windows7anzhuangsshmingling.html
11.在windows中安装opensshEnable OpenSSH for Windows Server 2025 Starting with Windows Server 2025, OpenSSH is now installed by default. You can also enable or disable thesshdservice in Server Manager. GUI PowerShell To enable SSHD using Server Manager: InServer Manager, on the navigation pane to the left, selectLocalhttps://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse
12.通过SSH远程登录Windows电脑的详细指南软件应用最近在整理关于SSH相关资料,刚好整理到一个比较简单的SSH远程连接windows电脑的场景,比较适合SSH初学者。 在本文档中,我将详细介绍如何在Windows电脑上设置SSH服务,并使用SSH客户端进行远程登录的相关操作。内容有点长,有兴趣的同学可以往下看。 二、在被远程的Windows上安装SSH服务器和内网穿透工具 https://post.m.smzdm.com/p/azo6pq25/
13.windows7安装sshd服务windwinywindows 7 下 openssh-server 不能运行,只好安装 cygwin 带的sshd服务器了 以前有安装好的cygwin基础软件包,不想重新下载,只下载了openssh-5.8p1-1.tar.bz2,解压 运行bash --login, 运行 ssh-host-config 产生服务器密钥、安装服务等 $ ssh-host-config http://blog.chinaunix.net/uid-9793706-id-333639.html
14.Releases·PowerShell/Win32Upstream changes fromOpenSSH 9.8p1. Security Fixes (all pertaining to Windows parity with pre-existing upstream behavior): [ssh-agent] validate a PKCS11 library path based on allow-list configurable via-P, with default allow-list set to$env:ProgramFilesand$env:ProgramFiles(x86)-https://msrchttps://github.com/PowerShell/Win32-OpenSSH/releases
15.windows如何开启ssh问答要在Windows上开启SSH服务,您可以按照以下步骤操作:1. 打开控制面板:可以通过开始菜单中的搜索栏输入"控制面板"来找到并打开控制面板。2. 在控制面板中,选择"程序",然后点击"启用或https://www.yisu.com/ask/8107218.html
16.新华三新华三发布全场景Wi-Fi7新品,涵盖高密、放装、面板、壁挂式、室外、工业级等多场景无线使用覆盖需求。 灵犀一体机 大模型场景化应用一站式交付,为大模型落地行业打通“最后一公里”。 了解更多 液冷解决方案 全栈产品能力、全面技术路线、全生命周期服务“三全”融合,助力数据中心绿色转型。 https://www.h3c.com/