1. 机器准备
hostname | ip |
---|---|
local-server | 192.168.1.201 |
app-node1 | 19.168.1.21 |
2. hosts配置
两台机器分别配置hostname
- 192.168.1.201机器
hostnamectl set-hostnam local-server
- 192.168.1.21机器
hostnamectl set-hostnam app-node1
- 配置hostname映射
201、21机器都配置
vim /etc/hosts
追加配置如下:
192.168.1.201 local-server
192.168.1.21 app-node1
配置hosts是为了方便在使用ssh连接的时候可以直接使用hostname直接连接,就不用ip地址了。
3. 生成密钥对
201机器上生成密钥对
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
4. 追加本机公钥到追到指定机器的 .ssh/authorized_keys 里
201机器上追加公钥到21机器上
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.21
此时,在201机器上ssh连接21机器第一次连接需要输入密码,后续再连接就不需要密码了。 如果需要21机器反过来连接201机器也要免密,那么在21机器上也生成密钥对,并将公钥追加到201机器即可。
命令如下:
ssh root@app-node1
这里能用主机名直接连接是因为在第3.3步骤中配置了hostname-ip映射。
完毕。