Linux ssh-keygen命令:创建SSH密钥。

Linux ssh-keygen命令 功能描述

使用ssh-keygen命令可以生成、管理和转换SSH认证密钥。使用SSH v1(SSH协议版本1)创建RSA密钥,使用SSH v2(SSH协议版本2)创建RSA或DSA密钥。使用-t选项指定生成密钥的类型。如果不带任何选项,使用ssh-keygen命令会生成用于SSH v2连接的RSA密钥。

Linux ssh-keygen命令 语法

ssh-keygen [选项]

选项含义:
命令中各选项的含义如表所示。

选项含义
-N<新密语>提供新的密语
-V详细模式
-P<密语>提供旧密语
-b<位数>指定创建密钥的位数。对于RSA密钥,最小尺寸为768位,默认值是2048位。DSA密钥必须刚好1024位
-C<注释>提供新的注释
-F <主机名>搜索在known hosts文件中指定的主机名,列出发现的任何事件
-f<文件名>指定密钥文件的文件名。
-t <类型>指定密钥创建的类型。SSH1可能的值为rsal,SSHv2可能的值是rsa或dsa
-r<主机名>显示指定主机公钥文件的SSHFP指纹资源记录
-R<主机名>从known hosts文件中删除所有属于指定主机名的密。这个选项主要用于删除经过哈希的主机的密钥
-e读取OpenSSH的私钥或公钥文件,并以RFC 4716 SSH公文件格式在标准输出上显示出来
-p请求更改私钥文件的密码短语,而不是创建一个新的私钥
-q安静模式
-B显示指定的公钥和私钥文件的bubblebabble摘要
-y读取OpenSSH专有格式的公钥文件,并将OpenSSH公钥显示在标准输出上
-c请求改变私钥和公钥文件的注释。仅支持RSA1密钥操作
-g在使用-r选项显示指纹资源记录的时候使用通用的DNS格式
-i读取未加密的SSHv2兼容的私钥/公钥文件,然后在标准输出显示OpenSSH兼容的私钥/公钥
-H对known hosts文件进行哈希计算。这将把文件中的所有主机名/IP地址替换为相应的哈希值。原来文件的内容将会添加一个“.old”后缀后保存。这些哈希值只能被ssh和sshd使用。这个选项不会修改已经经过哈希的主机名/IP地址,因此可以在部分公钥已经哈希过的文件上安全使用
-l显示公钥文件的指纹数据。它也支持RSA1的私钥。对于RSA和DSA密钥,将会寻找对应的公钥文件,然后显示其指纹数据

Linux ssh-keygen命令 示例

显示主机rhel的公钥文件的SSHFP指纹资源记录

[root@rhel ~]# ssh-keygen -r rhel
rhel IN SSHFP 1 1 bdd55e705c1e38de7b4c7d570acbe9e8efde3d66
rhel IN SSHFP 2 1 bec42963f462f58ae0dc974e153f7d5dcf72e4cd

创建ssh认证密钥,指定密钥文件为/root/.ssh/known_hosts

[root@rhel ~]# ssh-keygen -f /root/.ssh/known_hosts
Generating public/private rsa key pair.
Enter passphrase(empty for no passphrase):                     //输入密码
Enter same passphrase again:                               //再次输入密码
Your identification has been saved in /root/.ssh/known_hosts.
Your public key has been saved in /root/.ssh/known_hosts.pub.
The key fingerprint is:
05:28:4b:ce:58:9d:e8:1d:1b:9d:53:68:ac:d6:f7:95 root@rhel
The key's randomart image is:
+--[ RSA 2048]----+
|    o=.+.     |
|   =*B.      |
|  B+B..   . |
|  . ==...  E  |
|    .  S. . .   |
|          .   |
|              |
|              |
|              |
+-----------------+

创建RSA密钥

[root@rhel ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key(/root/.ssh/id_rsa):       //直接按回车键使用默认文件保存密钥
Created directory '/root/.ssh'.
Enter passphrase(empty for no passphrase):             //输入密码
Enter same passphrase again:                       //再次输入密码
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
ad:23:c6:c6:c0:54:63:00:be:d6:40:3f:1c:4f:c7:f4 root@rhel
The key's randomart image is:
+--[ RSA 2048]----+
|  o.o.=oo       |
|oo*o..      |
|  o=.  E     |
|  *.  .      |
|  o+  S.     |
|.  +  .      |
|     *o       |
|    o. .      |
|              |
+-----------------+

点赞(0)

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿
发表
评论
返回
顶部