id_rsa 、id_rsa.pub与数字签名与数字证书

一.在服务器上生成私钥与公钥

执行ssh-******命令,会在~目录(即HOME,该用户工作分支)下.ssh文件夹下生成两把钥匙id_rsa (私钥)与 id_rsa.pub(公钥)。如下图,为私钥输入密码的时候不回显,其实是输入进去的。当然两次密码输入不一致还是会让你重新输入的如下图:
id_rsa 、id_rsa.pub与数字签名与数字证书

二.证书登录与密码登录

ssh有密码登录和证书登录,初学者都喜欢用密码登录,甚至是root账户登录,密码是123456。但是在实际工作中,尤其是互联网公司,基本都 是证书登录的。内网的机器有可能是通过密码登录的,但在外网的机器,如果是密码登录,很容易受到攻击,真正的生产环境中,ssh登录都是证书登录。

1.客户端生成证书:私钥和公钥,然后私钥放在客户端,妥当保存,一般为了安全,防止有黑客拷贝客户端的私钥,客户端在生成私钥时,会设置一个密码,以后每次登录ssh服务器时,客户端都要输入密码解开私钥(如果工作中,你使用了一个没有密码的私钥,有一天服务器被黑了,你是跳到黄河都洗不清)。

2.服务器添加信用公钥:把客户端生成的公钥,上传到ssh服务器,添加到指定的文件中,这样,就完成ssh证书登录的配置了。(如下图)
id_rsa 、id_rsa.pub与数字签名与数字证书
服务器以及其他配置参考大佬博客:
https://blog.csdn.net/diyxiaoshitou/article/details/52471097
关于数字签名与数字证书的理解,参考下面的文章:
https://zhuanlan.zhihu.com/p/31477508
https://blog.csdn.net/qq_39832544/article/details/79345878