Windows下安装openSSH
Windows下安装openSSH
简介:OpenSSH 是安全 Shell (SSH) 工具的开放源代码版本,Linux 及其他非 Windows 系统的管理员使用此类工具跨平台管理远程系统。 OpenSSH 在 2018 年秋季已添加至 Windows,并包含在 Windows 10 和 Windows Server 2019 中。
本文介绍三种安装方式:
方式1:使用 Windows 设置
来安装 OpenSSH
方式2:使用 PowerShell
安装 OpenSSH
方式3:下载OpenSsh
安装包进行安装
方式1\2:适用于 Windows Server 2019、Windows 10(2018秋季之后发行的版本)、Windows Server 2022、Windows 11
方式3 适用(除Windows 2000、XP 或 2003外)所有版本,安装时请选择合适的安装包版本。
附录:
OpenSSH:手册页:https://www.openssh.com/manual.html
openssh下载地址:https://www.mls-software.com/opensshd.html
一、使用 Windows 设置来安装 OpenSSH
可以使用 Windows Server 2019
和 Windows 10
(2018秋季之后发行的版本) 设备上的 Windows 设置安装这两个 OpenSSH
组件。
若要安装 OpenSSH
组件:
- 打开“设置”,选择“应用”>“应用和功能”,然后选择“可选功能” 。
- 扫描列表,查看是否已安装
OpenSSH
。 如果未安装,请在页面顶部选择“添加功能”,然后:- 查找“
OpenSSH
客户端”,再单击“安装” - 查找“
OpenSSH
服务器”,再单击“安装”
- 查找“
设置完成后,回到“应用”>“应用和功能”和“可选功能”,你应会看到已列出 OpenSSH
。
#1、开启服务命令
net start sshd
#2、关闭服务
net stop sshd
#默认端口为22
备注:
安装
OpenSSH
服务器将创建并启用一个名为OpenSSH-Server-In-TCP
的防火墙规则。 这允许端口 22 上的入站 SSH 流量。 如果未启用此规则且未打开此端口,那么连接将被拒绝或重置。
二、使用 PowerShell 安装 OpenSSH
若要使用 PowerShell 安装 OpenSSH,请先以管理员身份运行 PowerShell(win+x
快捷键进行打开)。 为了确保 OpenSSH 可用,请运行以下 cmdlet:
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'
如果两者均尚未安装,则此操作应返回以下输出:
Name : OpenSSH.Client~~~~0.0.1.0
State : NotPresent
Name : OpenSSH.Server~~~~0.0.1.0
State : NotPresent
然后,根据需要安装服务器或客户端组件:
# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
# Install the OpenSSH Server
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
这两者应该都会返回以下输出:
Path :
Online : True
RestartNeeded : False
启动并配置 OpenSSH 服务器
若要启动并配置 OpenSSH 服务器来开启使用,请以管理员身份打开 PowerShell,然后运行以下命令来启动 sshd service
:
# Start the sshd service
Start-Service sshd
# OPTIONAL but recommended:
Set-Service -Name sshd -StartupType 'Automatic'
# Confirm the Firewall rule is configured. It should be created automatically by setup. Run the following to verify
if (!(Get-NetFirewallRule -Name "OpenSSH-Server-In-TCP" -ErrorAction SilentlyContinue | Select-Object Name, Enabled)) {
Write-Output "Firewall Rule 'OpenSSH-Server-In-TCP' does not exist, creating it..."
New-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
} else {
Write-Output "Firewall rule 'OpenSSH-Server-In-TCP' has been created and exists."
}
三、下载OpenSsh
安装包进行安装
openssh下载地址:https://www.mls-software.com/opensshd.html
若系统为Windows 2000、XP 或 2003,请选择mls-software.com。
选择
客户端-安装ssh客户端命令行工具(如果您想连接到其他ssh服务器)
服务器-安装ssh服务器命令行应用程序(如果您想为其他人提供一个ssh服务器来连接)
开始菜单快捷方式-一些开始菜单快捷键
注意:
需要解释的屏幕是“选择执行SSHD的帐户”。SSH守护程序(SSHD)可以作为Local_System或SSHD_Server运行。如果您使用的是Windows Server(2003/2008/2008R2/等),您可能必须将其作为SSHD_Server运行,但所有其他服务器都应该能够将其作为Local_System运行。为您填写的默认密码是“D0ntGu3$$M3”——我建议您更改它!您可以稍后使用“服务控制面板”对此进行更改。
此密码不是连接ssh服务时的密码
默认端口为22,若您更改其他端口后,连接时请添加
-p 端口
安装完成后:
OpenSSH将开始为您的系统安装和配置自身。 此时,openssh 已针对您的系统进行设置和配置。 试试这个,打开一个命令提示符(cmd.exe)并尝试: ssh -v(适用于OpenSSH 6.3及更低版本) ssh -V(适用于OpenSSH 6.4及更高版本),
若无法查询,建议重启电脑尝试。
#启动服务
net start opensshd
#终止服务
net stop opensshd
使用管理员方式启动
备注:安装后程序会提示给默认密码,此密码不作为ssh连接时的登录密码,
连接密码为系统登录密码,连接名为系统当前账号名
连接到 OpenSSH 服务器
安装后,可从使用 PowerShell 安装了 OpenSSH 客户端的 Windows 10 或 Windows Server 2019 设备连接到 OpenSSH 服务器,如下所示。 请务必以管理员身份
运行 PowerShell:
ssh username@servername
#例如
ssh Administrator@127.0.0.1
连接后,会收到如下所示的消息:
The authenticity of host 'servername (127.0.0.1)' can't be established.
ECDSA key fingerprint is SHA256:(<a large string>).
Are you sure you want to continue connecting (yes/no)?
选择“是”后,该服务器会添加到包含 Windows 客户端上的已知 SSH 主机的列表中。
系统此时会提示你输入密码。 作为安全预防措施,密码在键入的过程中不会显示。
连接后,你将看到 Windows 命令行界面提示符:
domain\username@SERVERNAME C:\Users\username>
若连接后无前面的用户名称,则连接失败,请检查安装的
Openssh
的版本是否过低或者过高导致的与系统不兼容
更多推荐
所有评论(0)