linux服务器之间ssh免密码访问配置

linux | 2019-09-13 10:02:39

linux服务器之间ssh免密码访问配置

1. 在主机1生成密钥

[grid@linuxidc ~]$ ssh-keygen -t rsa


我们在主机1中创建一个密钥,由于所有设置都是用的默认的,因此直接三个回车

我们可以查看一下当前用户主目录下的.ssh文件夹


[grid@linuxidc ~]$ cd ~/.ssh

[grid@linuxidc .ssh]$ pwd

/home/grid/.ssh

[grid@linuxidc .ssh]$ ll

total 12

-rw-------. 1 grid grid 1675 Jul 22 13:38 id_rsa

-rw-r--r--. 1 grid grid  393 Jul 22 13:38 id_rsa.pub

-rw-r--r--. 1 grid grid  402 Jul 22 12:35 known_hosts

可以发现下面有两个文件:id_rsa和id_rsa.pub其中id_rsa.pub是公钥,id_pub是私钥


2.本机免密登陆

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys


3. 将主机1公钥分发到主机2下

我们可以直接使用ssh-copy-id 主机名命令将公钥拷贝到对方的主机下,例如:

[grid@linuxidc ~]$ ssh-copy-id tiny02

grid@tiny02's password:

Now try logging into the machine, with "ssh 'tiny02'", and check in:


  .ssh/authorized_keys


to make sure we haven't added extra keys that you weren't expecting.

实际上ssh-copy-id 命令就是将当前主机id_rsa.pub中的内容,追加到目标主机上的~/.ssh/authorized_keys文件上,如果该文件不存在,则创建


4. 登录到主机2

我们现在就可以登录主机2了

# ssh root@tiny02




登录后即可回复 登录 | 注册
    
关注编程学问公众号