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

【解决方案】在Windows11上配置SSH免密登录

要在 Windows 11 上实现 SSH 免密登录,关键在于将你 Linux 机器的 公钥(Public Key) 正确配置到 Windows 的 OpenSSH 服务器中。

Windows 的 OpenSSH Server 有一个特殊的权限机制,导致配置比 Linux 稍微复杂一点。请按照以下步骤操作:

第一步:获取你 Linux 机器的公钥

可以随时在终端运行 cat ~/.ssh/id_ed25519.pub 来查看它。

第二步:在 Windows 11 上配置公钥

你需要登录到那台 Windows 11 电脑上进行操作。

注意: Windows 对 管理员用户普通用户 的配置路径是不同的。

情况 A:如果你登录的是管理员账户(Administrator 组成员)

这是最常见的情况,也是最容易出错的情况。

  1. 找到文件:C:\ProgramData\ssh\administrators_authorized_keys
    • 如果文件夹 C:\ProgramData\ssh 不存在,请确保你安装了 OpenSSH Server。
    • 如果文件 administrators_authorized_keys 不存在,请创建一个(注意没有后缀名)。
  2. 粘贴公钥:使用记事本打开该文件,将第一步中的公钥粘贴进去,保存。
  3. 设置权限(关键步骤):此文件权限必须非常严格,否则 SSH 会拒绝读取。
    • 右键点击文件 -> 属性 -> 安全 -> 高级
    • 禁用继承 -> 选择“将已继承的权限转换为此对象的显式权限”。
    • 删除除了 SYSTEMAdministrators 以外的所有用户权限。
    • 确保 SYSTEM 和 Administrators 拥有“完全控制”权限。

情况 B:如果你登录的是标准普通用户

  1. 找到文件:C:\Users\你的用户名\.ssh\authorized_keys
    • 如果目录或文件不存在,请创建。
  2. 粘贴公钥:将公钥粘贴进去保存。
  3. 设置权限:确保只有 System、Administrators 和 你自己 对该文件有访问权限。

第三步:检查 SSH 配置文件 (sshd_config)

在 Windows 上打开 C:\ProgramData\ssh\sshd_config(需要管理员权限):

  1. 确保以下行没有被注释(去掉前面的 #):
    PubkeyAuthentication yes
    
  2. 关于管理员的特殊配置
    在文件底部,通常有这样一段默认配置:
    Match Group administratorsAuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
    
    这就是为什么管理员用户必须使用 C:\ProgramData\ssh\ 下的文件,而不能用用户目录下的文件。如果你希望管理员也能用用户目录下的 .ssh/authorized_keys,可以注释掉这几行,但推荐保持默认并按“情况 A”操作

第四步:重启 SSH 服务

在 Windows 的 PowerShell(管理员模式)中运行:

Restart-Service sshd

第五步:测试连接

回到你的 Linux 终端,尝试连接:

ssh <windows用户名>@<windows-ip>

现在应该可以直接登录而无需密码了。


如果仍然需要密码:
通常是因为权限问题。你可以查看 Windows 事件查看器(Event Viewer) -> 应用程序和服务日志 -> OpenSSH -> Admin/Operational,或者在 Linux 上使用 ssh -v <user>@<host> 查看详细的调试信息,看是在哪一步被拒绝的。

需要我解释如何查看调试日志吗?

http://www.rkmt.cn/news/110859.html

相关文章:

  • HuggingFace PyTorch图像模型训练与源码解析
  • LobeChat能否用于生成食谱?AI厨房助手上线体验
  • GitHub Copilot辅助编写TensorFlow代码:结合本地清华源环境
  • linux系统auditd日志审计 rsyslog远程同步配置模板(国产银河麒麟系统V10通用版)
  • Qwen-Image与CLIP融合实现精准图文匹配
  • Dify + HuggingFace镜像网站加速模型加载技巧
  • 虚拟机vmware linux的piix4_smbus : SMBus Host Controller not enabled
  • LobeChat能否实现AI茶艺师?茶叶品鉴与冲泡技巧指导
  • YOLO-v5论文的10大创新点解析
  • VSCode远程连接云端LLM实现低延迟交互
  • 模具温度控制机厂家哪家质量好?国内外优质品牌深度解析
  • UVa 1450 Airport
  • 从算法到载体的闭环:解构未来大算力目标追踪无人机集群软硬一体化供应商 - 品牌2025
  • [ROS实战] 零硬件成本调试户外导航:Python模拟GPS信号 + RViz加载高德地图实现“云”行走
  • 【JavaWeb】乱码问题_HTML_Tomcat日志_sout乱码问题
  • Fastapi打开swagger空白
  • 容器可观测新视角:SysOM 延时抖动监控助力定位业务抖动原因
  • 空气能十大品牌权威排名:引领行业创新与可靠的典范 - 资讯焦点
  • 27、深入了解 Samba 系统及相关组件配置
  • Toggle Sidebar1172 Panda and PP Milk
  • 盈尚环境工程(杭州)有限公司的售后服务如何?服务受客户认可吗 - 工业推荐榜
  • 少儿编程Scratch3.0教程——02动作积木(基础知识)
  • 2025年度远程控制软件真实横测:这才是办公与游戏的全能王?
  • 做 TikTok 达人筛选,粉丝数真的没你想象中重要
  • 23、活动目录、Kerberos 与安全:Samba 技术深度剖析
  • 少儿编程Scratch3.0教程——04 声音积木(项目练习)
  • 为什么YOLO被称为‘你只看一次’的革命性设计?
  • MiniCPM-V2.5微调CUDA依赖问题解决
  • 24、深入探索Samba:安全、权限与服务集成
  • 16、打造愉悦用户体验的网络环境配置指南