当前位置: 首页 > news >正文

不用微软商店!5分钟搞定Win10 OpenSSH离线安装(附GitHub下载指南)

绕过微软商店:Win10 OpenSSH离线安装全攻略

每次在Windows 10的可选功能里尝试安装OpenSSH时,那个转圈圈进度条是不是总让你提心吊胆?微软商店的安装方式不仅速度慢,还经常莫名其妙失败。作为技术爱好者,我们完全有更高效的选择——直接从GitHub获取官方OpenSSH离线包进行安装。这种方法不仅速度快,还能避免微软商店的各种不可靠因素。

1. 为什么选择离线安装OpenSSH?

Windows 10虽然内置了通过"可选功能"安装OpenSSH的途径,但实际体验往往不尽如人意。常见问题包括:

  • 下载速度缓慢,有时甚至完全无法连接微软服务器
  • 安装过程中出现未知错误,导致整个流程失败
  • 无法控制安装的具体版本,自动更新可能带来兼容性问题

相比之下,GitHub上的官方OpenSSH离线包提供了以下优势:

版本可控性:你可以自由选择特定版本进行安装,避免自动更新带来的意外安装速度:本地安装比在线下载快得多,特别适合网络环境不稳定的情况可重复性:安装包可以保存下来,方便在多台机器上部署相同环境透明度:开源代码让你清楚知道自己在安装什么,没有隐藏的附加组件

2. 准备工作:获取正确的安装包

2.1 访问官方GitHub仓库

OpenSSH的Windows移植版由PowerShell团队维护,官方仓库地址为:

https://github.com/PowerShell/Win32-OpenSSH/releases

提示:请务必从上述官方地址下载,避免使用第三方来源的安装包,以防安全风险。

2.2 选择适合的版本

在Releases页面,你会看到类似这样的文件列表:

文件名适用系统说明
OpenSSH-Win64.zip64位Windows推荐大多数现代PC使用
OpenSSH-Win32.zip32位Windows老旧设备可能需要

选择与你的系统架构匹配的版本下载。如果不确定系统类型,可以按Win+R输入msinfo32查看"系统类型"。

3. 安装步骤详解

3.1 解压文件到指定目录

下载完成后,将ZIP文件解压到C:\Program Files\OpenSSH目录。如果该目录不存在,需要手动创建。

操作步骤:

  1. 右键点击下载的ZIP文件,选择"全部解压缩"
  2. 指定解压路径为C:\Program Files\OpenSSH
  3. 确保解压后的文件结构正确,应该包含以下关键文件:
    • install-sshd.ps1
    • ssh.exe
    • sshd.exe
    • scp.exe

3.2 以管理员权限运行PowerShell

安装OpenSSH需要管理员权限,按以下步骤操作:

  1. 在开始菜单搜索"PowerShell"
  2. 右键点击"Windows PowerShell",选择"以管理员身份运行"
  3. 使用cd命令切换到OpenSSH目录:
cd "C:\Program Files\OpenSSH"

3.3 执行安装脚本

在PowerShell中运行以下命令开始安装:

powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1

这个命令做了以下几件事:

  • 设置执行策略为Bypass,允许运行脚本
  • 执行install-sshd.ps1安装脚本
  • 注册OpenSSH服务到Windows服务管理器

注意:如果遇到执行策略错误,可以先运行Set-ExecutionPolicy RemoteSigned -Scope CurrentUser临时修改策略。

4. 配置与优化

4.1 启动SSH服务

安装完成后,需要手动启动服务:

Start-Service sshd

检查服务状态确认是否运行正常:

Get-Service sshd

4.2 设置开机自启

为了避免每次重启后手动启动服务,可以配置为自动启动:

Set-Service sshd -StartupType Automatic

4.3 防火墙配置

Windows防火墙可能会阻止SSH连接,需要添加允许规则:

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

5. 验证安装

5.1 本地连接测试

在PowerShell中尝试连接到本地SSH服务:

ssh localhost

首次连接会提示保存主机密钥,输入yes继续。如果看到登录提示,说明安装成功。

5.2 远程连接测试

从另一台设备尝试连接:

ssh username@your-windows-ip

替换username为你的Windows用户名,your-windows-ip为Windows机器的IP地址。

6. 常见问题解决

6.1 连接被拒绝

如果遇到"Connection refused"错误,检查:

  • SSH服务是否正在运行(Get-Service sshd)
  • 防火墙是否允许端口22的入站连接
  • 是否使用了正确的IP地址

6.2 认证失败

确保使用正确的Windows用户名和密码。注意:Windows OpenSSH默认使用Windows账户系统进行认证。

6.3 服务启动失败

查看详细错误信息:

Get-WinEvent -LogName Application -MaxEvents 100 | Where-Object {$_.Source -like "OpenSSH*"} | Format-List

常见原因包括:

  • 端口22被其他程序占用
  • 缺少必要的依赖项
  • 权限问题

7. 高级配置选项

7.1 修改默认端口

如果担心安全风险,可以更改SSH监听端口。编辑C:\ProgramData\ssh\sshd_config文件,找到并修改:

Port 2222

然后重启服务:

Restart-Service sshd

别忘了更新防火墙规则允许新端口。

7.2 启用公钥认证

相比密码认证,公钥认证更安全。配置步骤:

  1. 在客户端生成密钥对:
ssh-keygen -t rsa
  1. 将公钥(~/.ssh/id_rsa.pub)内容添加到Windows服务器的C:\ProgramData\ssh\administrators_authorized_keys文件中

  2. 确保文件权限正确:

icacls.exe "C:\ProgramData\ssh\administrators_authorized_keys" /inheritance:r /grant "Administrators:F" /grant "SYSTEM:F"
  1. 在sshd_config中确保以下设置:
PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys
  1. 重启SSH服务使更改生效

7.3 日志配置

OpenSSH的日志默认存储在Windows事件日志中。要启用详细日志,编辑sshd_config:

LogLevel DEBUG3

查看日志:

Get-WinEvent -LogName Application -MaxEvents 100 | Where-Object {$_.Source -like "OpenSSH*"}

8. 维护与更新

8.1 备份配置

建议定期备份以下重要文件:

  • C:\ProgramData\ssh\sshd_config
  • C:\ProgramData\ssh\administrators_authorized_keys
  • C:\Program Files\OpenSSH整个目录

8.2 升级OpenSSH

当GitHub发布新版本时,升级步骤:

  1. 下载新版ZIP包
  2. 停止SSH服务:Stop-Service sshd
  3. 备份现有安装目录
  4. 解压新版本覆盖旧文件
  5. 重新运行安装脚本
  6. 启动服务:Start-Service sshd

8.3 卸载OpenSSH

如果需要完全移除:

cd "C:\Program Files\OpenSSH" .\uninstall-sshd.ps1

然后手动删除C:\Program Files\OpenSSHC:\ProgramData\ssh目录。

http://www.jsqmd.com/news/660361/

相关文章:

  • 射频萌新看过来:手把手用Matlab+ADS复现Cripps的LMBA论文仿真
  • 无需GPU!DeepSeek-R1-Distill-Qwen-1.5B在Mac上的完美运行方案
  • 深耕深圳二十余年 李雪波律师经济纠纷办案实战履历 - 律界观察
  • TMSpeech:Windows平台终极实时语音识别工具完整指南
  • 终极指南:5分钟掌握Translumo实时屏幕翻译神器
  • Windows任务栏透明化终极指南:如何用TranslucentTB打造个性化桌面体验
  • 别再只调参了!深入理解PCL点云滤波:体素与统计滤波背后的数学与视觉影响
  • 培洋机械:济南进口机械设备回收公司 - LYL仔仔
  • Linux系统中调用其他文件中的函数
  • 仓颉语言深度前瞻:华为自研编程语言如何改变鸿蒙开发?
  • 2026靠谱的自控厂家推荐,深度剖析浙江西也纳自控售后响应与性价比 - 工业设备
  • 用Python和NumPy手把手复现DCO-OFDM与ACO-OFDM:从DFT对称性到可见光通信仿真
  • CardEditor:3步完成桌游卡牌批量生成的终极指南
  • 终极指南:如何用UnityLive2DExtractor轻松提取Live2D模型资源
  • BilibiliCommentScraper:突破性全量评论数据采集的3倍效率提升方案
  • 分期乐额度回收:闲置额度秒变现,应急资金快周转首选 - 米米收
  • 技术驱动,构建广州AI搜索时代GEO品牌知识资产壁垒 - 时事观察官
  • Python3+Socket实战:从零部署UR10e机械臂与Robotiq85夹爪的TCP/IP控制
  • 告别WiFi密码硬编码!用WiFiManager库给你的NodeMCU天气时钟配网(ESP8266保姆级教程)
  • 【STM32CubeMX】STM32H7-RTOS-SPI-W5500:从零构建嵌入式网络通信核心
  • 从‘盲猜’到‘感知’:聊聊永磁同步电机控制中负载观测器的那些事儿(附转动惯量辨识技巧)
  • 给爸妈买手机电脑,别再被屏幕参数忽悠了!5分钟搞懂LCD、OLED到底怎么选
  • JPEXS Free Flash Decompiler:让被遗忘的Flash内容重获新生的终极指南
  • 2026南宁涉外法律服务律师资质鉴别全指南 - 律界观察
  • Claude Opus 4.7国内使用全攻略:价格不变,能力翻倍(2026最新)
  • 如何用DXVK让老旧Windows系统焕发新生:从卡顿到流畅的完整指南
  • 东莞高新技术企业认定哪个服务好
  • ThinkBook 14 2024款在Ubuntu 20.04上搞定RTX 3050驱动的保姆级避坑指南
  • 2026年如何挑选外胎?这几家优质厂家值得关注,电动两轮车轮胎/外胎/轻型电动车轮胎/真空胎,外胎生产厂家找哪家 - 品牌推荐师
  • Cadence 16.6 导入网表避坑指南:从DRC检查到Z-Copy布线区设置全流程