如何免密登陆多台服务器 以及 服务器设置别名

主机远程登陆服务器 常见的一种方法是:
1. 在主机命令端口运行: ssh-keygen -t rsa 一路回车确定 不需要别的操作
目的是为了产生密钥,同时呢 在 /root/.ssh 文件夹下产生id_rsa和 id_rsa.pub 两个文件
2.将 生成的公钥复制到服务器上
在主机命令端口运行: ssh-copy-id -i ~/.ssh/id_rsa.pub 服务器用户名@服务器ip
输入密码之后就可以实现远程登陆呢
之前只会这一种,突然间工作中多了两台服务器,想要同时远程登陆3台服务器,同样上面的操作,生成复制,发现出现错误了, 只能远程登陆最后进行的一台服务器错误在哪呢

说一点个人的理解:
生成密钥产生的两个文件分别的作用
在我看来:id_rsa和 id_rsa.pub就是一套锁, id_rsa是锁, id_rsa.pub是钥匙
每运行一次产生命令相当于换了一套锁, 钥匙 锁全换。
我想用以前的钥匙,打开我新换的锁,所以我上面的会出现错误。

因此我只需要运行第二步 将公钥复制到服务器即可

公钥在哪显示呢:
在主机上: 在~/.ssh/id_rsa.pub里面
在服务器上: 在 /root/.ssh/authorized_keys(没有在目录中创建) 文件中 只要保证这两个一样就可以达到远程登陆的目的

新加一点: 实现免密登陆之后,是否会出现混乱, 该如何管理

  1. 在root/.ssh目录下 创建config 配置文件, 不需要加后缀
  2. 编辑config文件:
# 可以设置多个
Host   spider1         # 设置别名
HostName  127.0.0.1               # 服务器ip地址
identityFile ~/.ssh/id_rsa   # 主机上的 锁 所在文件
User root  # 用户

设置好之后就可以实现:ssh spider1 以root用户免密登陆到127.0.0.1服务器上

你可能感兴趣的:(如何免密登陆多台服务器 以及 服务器设置别名)