SSH 出现 The authenticity of host xxx can't be established

本文介绍了解决SSH连接中出现的主机key变化警告的方法。一种方式是在连接命令中加入特定参数临时忽略验证,另一种方式是修改配置文件以永久禁用验证检查。

这个原因可能是本地主机的key发生了变化,因此每次SSH链接都会有提示,只需要在交互下输入yes即可。
当然如果长久的想解决问题,可以采用以下方法:
1、使用ssh连接远程主机时加上“-o StrictHostKeyChecking=no”的选项,去掉对主机的验证检查。

ssh  -o StrictHostKeyChecking=no  192.168.xxx.xxx

注:192.168.xxx.xxx 为本地ip地址:windows ipconfig查看,linux ifconfig查看

2、当然你也可以直接改配置文件信息,这样彻底去掉验证。
修改/etc/ssh/ssh_config文件(或$HOME/.ssh/config)中的配置,添加如下两行配置:

StrictHostKeyChecking no
UserKnownHostsFile /dev/null

注:不过采用第二种方法,容易造成潜在的危险。

原文链接:https://segmentfault.com/q/1010000006670515

### SSH连接主机真实性验证失败的解决方案 在使用SSH连接远程主机时,系统提示"The authenticity of host 'xxx' can't be established",这是SSH协议的安全机制在发挥作用。SSH协议通过密钥指纹验证目标主机身份,防止中间人攻击。以下是完整的解决方案: ### 1. 理解提示信息的本质 当首次连接某台主机时,SSH客户端会记录该主机的公钥指纹。如果后续连接时发现指纹不匹配,会提示安全警告[^1]。这种情况可能由以下原因导致: - 首次连接新主机 - 目标主机更换了SSH密钥 - 网络环境变化导致连接到不同主机 - 可能的中间人攻击 ### 2. 常规解决方案 对于首次连接的情况,可以输入`yes`确认并保存主机指纹[^3]。例如: ```bash The authenticity of host 'github.com (207.97.227.239)' can't be established. RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48. Are you sure you want to continue connecting (yes/no)? yes ``` ### 3. 解决指纹不匹配问题 如果出现指纹不匹配警告,可以采取以下措施: - **清理已知主机记录**:使用`ssh-keygen -R [hostname]`命令清除旧记录 - **手动验证指纹**:通过可信渠道获取目标主机指纹进行比对 - **更新known_hosts文件**:将新的主机指纹添加到`~/.ssh/known_hosts`文件中 ### 4. 特殊场景处理 对于GitHub等服务的连接问题: - **配置SSH config文件**:设置`Hostname`为`ssh.github.com`,`Port`为`443`[^4] - **测试连接**:执行`ssh -T git@github.com`验证配置 - **检查密钥权限**:确保私钥文件权限为`600`,目录权限为`700` ### 5. 自动化脚本处理 对于需要自动化连接的场景,可以使用以下方法: ```bash # 使用sshpass自动接受新主机 sshpass -p 'password' ssh -o StrictHostKeyChecking=no user@host # 批量清理known_hosts记录 ssh-keygen -f "/home/user/.ssh/known_hosts" -R "oldhost" ``` ### 6. 安全注意事项 - **禁用StrictHostKeyChecking**:仅在可信网络环境中使用`-o StrictHostKeyChecking=no` - **定期清理known_hosts**:维护一个干净的已知主机列表 - **使用证书颁发机构**:对于企业环境,建议部署SSH CA进行集中认证
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值