前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >不同版本服务器间 SSH 免密码登录失败

不同版本服务器间 SSH 免密码登录失败

作者头像
章鱼猫先生
发布2023-09-25 16:36:22
3370
发布2023-09-25 16:36:22
举报
文章被收录于专栏:BioIT爱好者BioIT爱好者

今天从服务器 A(CentOS 7.3)配置 SSH 无密码登录服务器 B(CentOS Steam 9),发现执行以下常规操作后无法实现:

代码语言:javascript
复制
$ ssh-keygen
$ ssh-copy-id -i ~/.ssh/id_rsa.pub shenweiyan@66.xx.xx.xx  # ssh-copy-id user@rhel-9-server-IP
$ ssh shenweiyan@66.xx.xx.xx

SSH 免密码登录不起作用

后来,更换 ecdsa 算法,问题才解决:

代码语言:javascript
复制
$ ssh-keygen -t ecdsa
$ ssh-copy-id -i ~/.ssh/id_ecdsa.pub shenweiyan@66.xx.xx.xx

ssh-keygen 更换 ecdsa 算法

根本原因就在于 SHA-1 已经在 RHEL9 中弃用了!

从 RHEL9 的官网文档《1.0.2. Crypto-policies, RHEL core cryptographic components, and protocols(加密策略、RHEL 核心加密组件和协议)》可以看到 SHA-1 已经在 RHEL9 中弃用了!

In RHEL 9, SHA-1 usage for signatures is restricted in the DEFAULT system-wide cryptographic policy. Except for HMAC, SHA-1 is no longer allowed in TLS, DTLS, SSH, IKEv2, DNSSEC, and Kerberos protocols. Individual applications not controlled by the RHEL system-wide crypto policies are also moving away from using SHA-1 hashes in RHEL 9.

在 RHEL 9 中,用于签名的 SHA-1 用法在 DEFAULT 系统范围的加密策略中受到限制。除 HMAC 外,TLS、DTLS、SSH、IKEv2、DNSSEC 和 Kerberos 协议中不再允许使用 SHA-1。不受 RHEL 系统范围的加密策略控制的单个应用程序在 RHEL 9 中也不再使用 SHA-1 hashes。

参考资料

  • RHEL6 ssh 到 RHEL9 的 no hostkey alg 错误,语雀
  • How can I use a legacy ssh-rsa key on CentOS 9 Stream?,Server Fault
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-09-24 10:25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 BioIT爱好者 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 参考资料
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档