生成 CA 的密钥
# 生成 CA 的密钥
证书登录的前提是,必须有一个 CA,而 CA 本质上就是一对密钥,跟其他密钥没有不同,CA 就用这对密钥去签发证书。
虽然 CA 可以用同一对密钥签发用户证书和服务器证书,但是出于安全性和灵活性,最好用不同的密钥分别签发。所以,CA 至少需要两对密钥,一对是签发用户证书的密钥,假设叫做user_ca
,另一对是签发服务器证书的密钥,假设叫做host_ca
。
使用下面的命令,生成user_ca
。
# 生成 CA 签发用户证书的密钥
$ ssh-keygen -t rsa -b 4096 -f ~/.ssh/user_ca -C user_ca
1
2
2
上面的命令会在~/.ssh
目录生成一对密钥:user_ca
(私钥)和user_ca.pub
(公钥)。
这个命令的各个参数含义如下。
-t rsa
:指定密钥算法 RSA。-b 4096
:指定密钥的位数是4096位。安全性要求不高的场合,这个值可以小一点,但是不应小于1024。-f ~/.ssh/user_ca
:指定生成密钥的位置和文件名。-C user_ca
:指定密钥的识别字符串,相当于注释,可以随意设置。
使用下面的命令,生成host_ca
。
# 生成 CA 签发服务器证书的密钥
$ ssh-keygen -t rsa -b 4096 -f host_ca -C host_ca
1
2
2
上面的命令会在~/.ssh
目录生成一对密钥:host_ca
(私钥)和host_ca.pub
(公钥)。
现在,~/.ssh
目录应该至少有四把密钥。
~/.ssh/user_ca
~/.ssh/user_ca.pub
~/.ssh/host_ca
~/.ssh/host_ca.pub
上次更新: 2023/10/17, 16:39:02 访问次数: 0