SSH-KeyGen -认证密钥的生成、管理和转换_ssh-keygen -a_星光落入你灰蒙蒙的眼的博客-程序员宅基地

技术标签: Linux  运维  linux  ssh  服务器  centos  

ssh-keygen 为ssh生成、管理和转换身份验证密钥。ssh-keygen可以创建供ssh协议版本1使用的RSA密钥和供SSH协议版本2使用的RSA或DSA密钥。要生成的密钥类型是用-t选项指定的。如果不带任何参数调用,ssh-keygen将生成一个RSA密钥,用于ssh协议2连接。

ssh-keygen还用于生成用于 Diffie-Hellman 组交换 (DH-GEX) 的组。
通常,每个希望将 SSH 与 RSA 或 DSA 身份验证一起使用的用户都会运行一次,以在~/.ssh/identity~/.ssh/id_dsa~/.ssh/id_rsa中创建身份验证密钥。此外,系统管理员可以使用它来生成主机密钥,如/etc/rc所示。

通常,该程序会生成密钥并要求一个文件来存储私钥。公钥存储在同名但附加了“.pub”的文件中。该程序还要求输入密码。密码可以为空表示没有密码(主机密钥必须有一个空的密码),也可以是任意长度的字符串。密码短语类似于密码,不同之处在于它可以是包含一系列单词、标点符号、数字、空格或任何您想要的字符串的短语。好的密码短语长度为 10-30 个字符,不是简单的句子或其他容易猜到的(英文散文每个字符只有 1-2 位熵,并且提供了非常糟糕的密码短语),并且包含大小写字母、数字、和非字母数字字符。稍后可以使用-p选项更改密码。

没有办法恢复丢失的密码。如果密码丢失或忘记,则必须生成一个新密钥并将其复制到相应的公钥到其他机器。

对于 RSA1 密钥,密钥文件中还有一个注释字段,只是为了方便用户帮助识别密钥。注释可以说明密钥的用途或有用的信息。创建密钥时,注释被初始化为 ‘‘user@host’’,但可以使用-c选项进行更改。

生成密钥后,下面的说明详细说明了应将密钥放置在何处以进行激活。

问题

[root@master ~]# ssh 192.168.10.195
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:SJBJH6u/Qtn1fY+Fcw9sOxlqT6Wda8bWn+NBh40HgII.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /root/.ssh/known_hosts:63
ECDSA host key for 192.168.10.195 has changed and you have requested strict checking.
Host key verification failed.

-H Hash a known_hosts file
这将用指定文件中的哈希表示替换所有主机名和地址;原始内容被移动到带有. old后缀的文件中。ssh和sshd可能会正常使用这些散列,但是如果文件内容被泄露,它们不会泄露识别信息。此选项不会修改现有的散列主机名,因此在混合了散列和非散列名称的文件上使用是安全的。

-R hostname
从known_hosts文件中删除属于hostname的所有密钥。此选项对于删除哈希主机非常有用(请参见上面的-H选项)。

[root@master ~]# ssh-keygen -R 192.168.10.195
# Host 192.168.10.195 found: line 63
/root/.ssh/known_hosts updated.
Original contents retained as /root/.ssh/known_hosts.old

再次尝试登录,即可登录成功!

文件

Man手册
~//identity
包含用户的协议版本 1 RSA 身份验证身份。除用户外,任何人都不应读取此文件。生成密钥时可以指定密码;该密码将用于使用 3DES 加密此文件的私有部分。ssh-keygen不会自动访问此文件,但它作为私钥的默认文件提供。ssh 将在尝试登录时读取此文件。

~/.ssh/identity.pub
包含用于身份验证的协议版本 1 RSA 公钥。该文件的内容应添加到用户希望使用 RSA 身份验证登录的所有计算机上的~/.ssh/authorized_keys中。无需将此文件的内容保密。

~/.ssh/id_dsa
包含用户的协议版本 2 DSA 身份验证身份。除用户外,任何人都不应读取此文件。生成密钥时可以指定密码;该密码将用于使用 3DES 加密此文件的私有部分。ssh-keygen不会自动访问此文件,但它作为私钥的默认文件提供。ssh 将在尝试登录时读取此文件。

~/.ssh/id_dsa.pub
包含用于身份验证的协议版本 2 DSA 公钥。该文件的内容应添加到用户希望使用公钥身份验证登录的所有机器上的~/.ssh/authorized_keys中。无需将此文件的内容保密。

~/.ssh/id_rsa
包含用户的协议版本 2 RSA 认证身份。除用户外,任何人都不应读取此文件。生成密钥时可以指定密码;该密码将用于使用 3DES 加密此文件的私有部分。ssh-keygen不会自动访问此文件,但它作为私钥的默认文件提供。ssh 将在尝试登录时读取此文件。

~/.ssh/id_rsa.pub
包含用于身份验证的协议版本 2 RSA 公钥。该文件的内容应添加到用户希望使用公钥身份验证登录的所有机器上的~/.ssh/authorized_keys中。无需将此文件的内容保密。

/etc/ssh/moduli
包含用于 DH-GEX 的 Diffie-Hellman 组。

环境

   SSH_USE_STRONG_RNG

OpenSSL随机生成器的重新播种通常在/dev/urandom中完成。如果SSH_USE_STRONG_RNG环境变量设置为0以外的值,OpenSSL随机生成器将从/dev/random重新设定种子。读取的字节数由SSH_USE_STRONG_RNG值定义。最小为6个字节。不建议在没有硬件随机生成器的计算机上使用此设置,因为熵不足会导致连接被阻塞,直到有足够的熵可用。
Don’t strive for, then you are not even qualified to fail!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_50573146/article/details/126159702

智能推荐

Flink与RabbitMQ Connector_flink 使用rabbitmq作为数据源-程序员宅基地

RabbitMQ连接器许可证Flink下的RabbitMQ连接器位于一个maven依赖” RabbitMQ AMQP Java Clien”上,由Mozilla Public License v1.1 (MPL 1.1) 许可。Flink本身不重写” RabbitMQ AMQP Java Clien”中的源码,也不对其进行打包成二进制文件。 用户基于flink的rabbitMQ连接器(即Rab..._flink 使用rabbitmq作为数据源

EntityUtils 工具类_entityutils 工具类 按某字段分组list-程序员宅基地

EntityUtils 工具类 EntityUtils对象是org.apache.http.util下的一个工具类,用官方的解释是为HttpEntity对象提供的静态帮助类package org.apache.http.util;import java.io.IOException;import java.io.InputStream;import java.io.InputSt..._entityutils 工具类 按某字段分组list

仿照微信的效果,实现了一个支持多选、选原图和视频的图片选择器_ios 仿微信视频图片浏览-程序员宅基地

前段时间空余时间比较多,打算尝试做一个图片选择器出来,仔细对比了很多自定义了图片选择器的应用,感觉最喜欢微信的界面效果,当然微博的功能更强大,还支持了LivePhoto,所以打算模仿微信的界面效果,瞄着微博的功能去做一个图片选择器出来。一. TZImagePickerController简介这个图片选择器还没达到我理想中的效果,但是最近工作开始忙起来了,所以有一些功能放在以后加入吧_ios 仿微信视频图片浏览

python-numpy.pad函数使用-程序员宅基地

在卷积神经网络中,为了避免图片边缘像素点不能有效得到使用,同时,在卷积之后,图片被不断压缩的情况,我们有一个重要的操作叫做padding,翻译为填充,主要是通过在图片周围填充一定量的像素点来避免上述两种问题的产生。如上图所示,红色区域为原始图像,我们需要将其周围做好填充,使其成为一个更大的图画,避免卷积结束后出现像素点的损失,从而避免了神经网络无法加深的问题。 在python的nump...

【Java】常见的注解_cache和虚拟存储系统都是基于什么原理设计的?_星拱北辰的博客-程序员宅基地

本文分享Java中常见的注解Annotation_cache和虚拟存储系统都是基于什么原理设计的?

typora 有道云笔记_有道云—目前最好用的免费笔记-程序员宅基地

本文共859字。阅读时间约3分钟大家好,我是咸鱼小编俗话说,"好记性不如烂笔头",各位小伙伴在工作中或者学习中掌握了新的内容的时候是用超强的大脑记录在案,还是随手做好笔记,有空没有就翻出来温习下?今天小编要和大家推荐一个本人非常喜欢的免费云笔记:有道云笔记。如果说小编之前推荐的pocket是船的话,那么今天推荐的这个有道云笔记就是这条船上的舵!这款云笔记究竟好在哪儿,为啥值得小编这么强力..._有道云笔记和typora最好用

随便推点

android markdown 笔记,安卓-纯纯写作 | 快速笔记 & Markdown-程序员宅基地

用户界面框架和更新体验纯纯写作用户界面框架和更新体验非常喜欢这次V14的更新,已经安装测试版体验。滑动切换markdown预览是我最喜欢的功能,可以让用户一键切换写作和阅读模式。非常顺滑,Markdown渲染直接生效,也方便用户阅读体验。建议:本次更新的重点着重在一键切换Markdown渲染,但实际解决的确是阅读和写作飞速切换功能。是否考虑将非Markdown写作的文档也加入阅读切换选择?另外,在..._纯纯写作 预览markdown

POJ2531 Network Saboteur-程序员宅基地

题目:http://poj.org/problem?id=2531题目大意:给你N个点,然后以矩阵形式给你了 Cij 的权值, 然后让你把这N个点,分成两部分,使 值最大。思路:显然对于深搜极差的我体验感极差,首先分为 0,1 集合,在1里面就减,在0里面就加,结合代码理解一下dfs(1,0),然后在for里面搜索情况,可以自己模拟一下样例就很清楚了。如果把一个数放入1中,权值变小...

rust 入门笔记: rustlings(推荐一些学习rust语法的一些非常好的小练习)-程序员宅基地

rustlings推荐一个学习rust非常好的repo:Small exercises to get you used to reading and writing Rust code! - 学习rust语法的一些非常好的小练习This project contains small exercises to get you used to reading and writing Rust code. This includes reading and responding to compiler m_rustlings

网络安全工具100套_小V讲网安的博客-程序员宅基地

它可以作为TCP中继(单次触发:one-shot或者daemon(Internet中用于邮件收发的后台程序))、作为基于daemon的动态Sockes化(socksifier)、作为Unix平台上sockets的shell接口、作为IP6中继、将面向TCP的程序重定向成串行线路(Serial Line)程序、或者建立用来运行客户端或服务器带有网络连接的shell脚本相关安全环境(su和chroot)。它可以作为UNIX的一个核心模块,也可以不嵌入核心,强烈推荐将其作为UNIX的核心模块。_网络安全工具

K-means算法_kmeans-程序员宅基地

K-means算法笔记_kmeans

Java操作hdfs的文件增删改查-程序员宅基地

package cn.itcast.hadoop.hdfs;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.net.URI;import org.apac...

推荐文章

热门文章

相关标签