前言
在使用linux搭建集群时,难免会需要实现不同服务器之间的免密登录,毕竟总是需要输入密码比较费时间,下面我就记录一下自己对免密登录的一些理解及实现。
一、免密登录是什么?
免密登录其实就是我们为了实现不同服务器之间进行互相通信而不需要认证可以直接进行通信的一种手段。其原理大致为: 我们在对应的服务器上面通过ssh-keygen -t rsa生成对应的公钥和私钥,然后将公钥拷贝到我们需要进行免密登录的服务器上,当我们在对该服务器进行登录时,该服务器会在授权key里面查找是否有我们对应的公钥,如果有的话我们就不用再进行密码登录,可以直接进行登录。
二、实现步骤
1.生成密钥对
假设我们需要有两台服务器分别为A和B,我们需要实现A对B的免密登录,那么我们就需要在服务器A上生成对应的公钥(id_rsa.pub)和私钥(id_rsa)。其具体命令为:
ssh-keygen -t rsa
2.拷贝公钥
当我们在服务器A上面生成了对应的公钥和私钥过后,需要将A的公钥拷贝到服务器B中,以便服务器A在对服务器B访问时能够在授权的key中找到服务器A的公钥。其具体命令为:
ssh-copy_id 主机名
总结
以上便是我对免密登录的理解,这里我只是使用了两台服务器来进行举例,可能我们会遇到多台服务器之间实现免密登录,其实都差不多,只是我们需要将对应的公钥拷贝到不同的服务器而已。如果我有什么解释不到位或有错误的地方欢迎大家留言。
|