如何生成SSH服务器的ed25519公钥SHA256指纹

2024-03-15 23:59

本文主要是介绍如何生成SSH服务器的ed25519公钥SHA256指纹,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

最近搭建ubuntu服务器,远程登录让确认指纹,研究一番搞懂了,记录一下。

1、putty 第一次登录服务器,出现提示:

 

让确认服务器指纹是否正确。

其中:箭头指向的 ed25519 :是一种非对称加密的签名方法,还有其他签名方法。

          箭头指向的  SHA256 :是信息摘要(哈希)算法,对一长串信息进行转换处理,产生256个二进制位(32字节)的摘要数据。 这个摘要数据就是信息的指纹(fingerprint)  ,

     用指纹(信息摘要)几乎可以唯一的表示一串信息, 原始信息稍作改变,摘要(指纹)就会改变。

    这里的意思是,putty收到了远端的 ssh-ed25519 公钥, 这个公钥比较长,用SHA256算法生成了简短摘要(指纹: 上面红框里,冒号后面的文字内容),让用户判断指纹是否和想访问的服务器的指纹相符。

     服务器是刚搭建好的,暂时也不知道其ssh-ed25519 公钥指纹。需要到服务器端操作生成下:

     服务器端ssh公钥私钥保存在  /etc/ssh/ 目录下:输入:

        ls -1 /etc/ssh/ssh_host*  

     可以查看,输出如下:

/etc/ssh/ssh_host_ecdsa_key
/etc/ssh/ssh_host_ecdsa_key.pub
/etc/ssh/ssh_host_ed25519_key
/etc/ssh/ssh_host_ed25519_key.pub
/etc/ssh/ssh_host_rsa_key
/etc/ssh/ssh_host_rsa_key.pub
带.pub后缀的是公钥,文件名里有ed25519的是前述SSH登录时用到的公钥,用如下指令生成其SHA256 摘要:

      ssh-keygen -E sha256 -lf /etc/ssh/ssh_host_ed25519_key.pub

注:去掉 -E 参数指定摘要算法,缺省 sha256, 不用 -E sha256 输出相同,即:

      ssh-keygen  -lf /etc/ssh/ssh_host_ed25519_key.pub

输出如下:

上图中SHA256冒号后的一串文字就是ed25519公钥摘要(指纹), 和前面让确认的指纹进行对比,完全相同,证明SSH登录访问的服务器是预期的服务器。

批量生成指纹的方法:

 for f in /etc/ssh/*key.pub; do ssh-keygen -E sha256 -lf $f; done

注:可简化为:

 for f in /etc/ssh/*key.pub; do ssh-keygen -lf $f; done

附加:

    1、计算SHA1摘要(指纹):

      ssh-keygen -E sha256 -lf   文件名

     2、批量计算SHA1摘要(指纹):

     for f in /etc/ssh/*key.pub; do ssh-keygen -E sha1 -lf $f; done

    

    3、计算md5摘要(指纹):

      ssh-keygen -E md5 -lf   文件名

     4、批量计算md5摘要(指纹):

     for f in /etc/ssh/*key.pub; do ssh-keygen -E md5 -lf $f; done

这篇关于如何生成SSH服务器的ed25519公钥SHA256指纹的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/813690

相关文章

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

Python从Word文档中提取图片并生成PPT的操作代码

《Python从Word文档中提取图片并生成PPT的操作代码》在日常办公场景中,我们经常需要从Word文档中提取图片,并将这些图片整理到PowerPoint幻灯片中,手动完成这一任务既耗时又容易出错,... 目录引言背景与需求解决方案概述代码解析代码核心逻辑说明总结引言在日常办公场景中,我们经常需要从 W

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

C#使用Spire.XLS快速生成多表格Excel文件

《C#使用Spire.XLS快速生成多表格Excel文件》在日常开发中,我们经常需要将业务数据导出为结构清晰的Excel文件,本文将手把手教你使用Spire.XLS这个强大的.NET组件,只需几行C#... 目录一、Spire.XLS核心优势清单1.1 性能碾压:从3秒到0.5秒的质变1.2 批量操作的优雅

Python使用python-pptx自动化操作和生成PPT

《Python使用python-pptx自动化操作和生成PPT》这篇文章主要为大家详细介绍了如何使用python-pptx库实现PPT自动化,并提供实用的代码示例和应用场景,感兴趣的小伙伴可以跟随小编... 目录使用python-pptx操作PPT文档安装python-pptx基础概念创建新的PPT文档查看

Linux查询服务器 IP 地址的命令详解

《Linux查询服务器IP地址的命令详解》在服务器管理和网络运维中,快速准确地获取服务器的IP地址是一项基本但至关重要的技能,下面我们来看看Linux中查询服务器IP的相关命令使用吧... 目录一、hostname 命令:简单高效的 IP 查询工具命令详解实际应用技巧注意事项二、ip 命令:新一代网络配置全

Python开发简易网络服务器的示例详解(新手入门)

《Python开发简易网络服务器的示例详解(新手入门)》网络服务器是互联网基础设施的核心组件,它本质上是一个持续运行的程序,负责监听特定端口,本文将使用Python开发一个简单的网络服务器,感兴趣的小... 目录网络服务器基础概念python内置服务器模块1. HTTP服务器模块2. Socket服务器模块

在ASP.NET项目中如何使用C#生成二维码

《在ASP.NET项目中如何使用C#生成二维码》二维码(QRCode)已广泛应用于网址分享,支付链接等场景,本文将以ASP.NET为示例,演示如何实现输入文本/URL,生成二维码,在线显示与下载的完整... 目录创建前端页面(Index.cshtml)后端二维码生成逻辑(Index.cshtml.cs)总结

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详