ssh远程连接报错WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! :本地ssh公钥不一致问题

这个错误的核心原因是:你的本地SSH客户端记录的 172.20.10.3 主机公钥,和当前该主机返回的公钥不一致(比如香橙派重装系统、更换SSH配置、IP被复用等),SSH为了防止中间人攻击,拒绝连接。

以下是Windows系统下的解决方法(优先推荐命令行方式,更快捷):

方法1:用ssh-keygen命令一键清理旧密钥(推荐)

  1. 打开Windows的cmdPowerShell(直接在开始菜单搜即可);

  2. 执行以下命令(替换IP为你的香橙派IP):

    bash 复制代码
    ssh-keygen -R 172.20.10.3

    这个命令会自动删除C:\Users\DengNM\.ssh\known_hosts文件中对应172.20.10.3的所有旧密钥条目;

  3. 重新执行SSH连接命令:

    bash 复制代码
    ssh orangepi@172.20.10.3

    此时会提示你是否信任新的主机密钥,输入yes回车,再输入密码即可正常连接。

方法2:手动编辑known_hosts文件(适合不想用命令行的情况)

  1. 打开文件资源管理器,输入路径C:\Users\DengNM\.ssh(如果看不到.ssh文件夹,需先显示隐藏文件:文件资源管理器→查看→勾选「隐藏的项目」);
  2. 找到known_hosts文件,用记事本/VSCode等文本编辑器打开;
  3. 找到第15行(错误提示里写的Offending ECDSA key in ...:15),删除这一行(如果不确定,也可以直接删除包含172.20.10.3的所有行);
  4. 保存文件后,重新执行SSH连接命令,按提示输入yes信任新密钥即可。

重要注意事项

  • 执行前请确认172.20.10.3确实是你自己的香橙派设备,而非陌生主机(避免真的遭遇中间人攻击);
  • 不要直接删除整个known_hosts文件(虽然也能解决问题,但会丢失所有已连接过的主机密钥记录,下次连接其他服务器都要重新确认)。
相关推荐
jerryinwuhan13 分钟前
《系统部署与运维》开篇 课程介绍
运维
我是谁??2 小时前
Ubuntu22.04更换清华源
linux·运维·服务器
Shell运维手记3 小时前
Linux 常用基础命令学习笔记
linux·运维·笔记·学习·算法·github
朴马丁3 小时前
国际与国产PLM在精细化工赛道的布局:2026年主要厂商技术特色
大数据·运维·人工智能·流程行业plm·化工新材料
Elastic 中国社区官方博客4 小时前
Elasticsearch:使用 AI Agent 来创建 workflow
大数据·运维·人工智能·elasticsearch·搜索引擎·自动化·全文检索
测试运维日常笔记5 小时前
Linux系统安装配置TigerVNC服务器完整指南
linux·运维·服务器
像风一样自由20205 小时前
加强版VScode结合remote-ssh远程连接服务器开发指南
服务器·vscode·ssh
喜欢的名字被抢了6 小时前
程序出问题怎么查,以及如何让它不掉线
java·运维·数据库
雾时之林6 小时前
Linux----cron定时服务
linux·运维·服务器
壹玖玖肆6 小时前
医院后勤智能运维系统实用性评测
运维