Docker进阶之路(七):配置docker-machine免密登录

一、前言

我们管理远程主机时,首先要从本地输入远程主机的地址,账号密码登录到远程主机后,才能对远程主机进行操作,为了避免每次都输入账号密码的麻烦,我们可以配置本地主机和远程主机的信任关系,从而实现免密登录

二、配置信任连接

如下图所示,通过client管理远程主机中的docker01,docker02,docker03,因此需要在client-server中建立一种信任关系
Docker进阶之路(七):配置docker-machine免密登录_第1张图片
1.在client中生成公私钥
执行如下命令,使用默认配置,直接回车

ssh-keygen -t rsa

Docker进阶之路(七):配置docker-machine免密登录_第2张图片

说明:-t rsa指定使用rsa加密算法,如上执行结果,会在/home/当前用户/.ssh目录下找到id_rsa(私钥)和id_rsa.pub(公钥)
Docker进阶之路(七):配置docker-machine免密登录_第3张图片
2. 将公钥Copy到远程主机
在client端,运行命令 ssh-copy-id 用户名@remoteip,将公钥copy到远程主机,如下

ssh-copy-id [email protected]

3. 检查远程主机公钥
在远程主机的/home/当前用户/.ssh目录下,会多出一个保存公钥字符串的authorized_keys文件,该文件内容与id_rsa.pub一致

ubuntu@ubuntu-virtual-machine:~$ ll /home/ubuntu/.ssh
总用量 16
drwx------  2 ubuntu ubuntu 4096 5月  24 22:57 ./
drwxr-xr-x 22 ubuntu ubuntu 4096 5月  24 22:57 ../
-rw-------  1 ubuntu ubuntu  411 5月  24 22:57 authorized_keys
-rw-r--r--  1 ubuntu ubuntu  222 5月  24 09:33 known_hosts

三、验证

经过以上配置后,就可在client端不输入密码直接登录远程主机

ubuntu@ubuntu-virtual-machine:~/.ssh$ ssh 192.168.130.129
Welcome to Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-128-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

0 个可升级软件包。
0 个安全更新。

Last login: Sun May 24 10:15:41 2020 from 192.168.130.138

ubuntu@ubuntu-virtual-machine:~$ exit
注销
Connection to 192.168.130.129 closed.

你可能感兴趣的:(Docker)