Linux多环境间添加信任关系的方式

项目上的开发和测试Linux环境非常多,少则数十多则上百,实际工作中实在懒得来回登录或打开各个环境,最好的方案就是给内网环境间添加一下信任关系,便于快速在环境之间切换,免去输入密码的烦恼

信任关系

两个不同的环境之间建立信任关系后,通过 ssh 命令可以免密码切换到对方环境中去

尤其在做批量自动化时非常实用,可以设立某个环境为 agent(执行机),利用 ssh/scp 完成远程指令执行或者按照升级包的快速投放

对于对公网开放的环境一般不要随便添加远程信任关系,是很危险的操作

本文主要适用于内网环境间的快速访问,下面是完整流程与偷懒流程

完整流程

  1. 以 mebugs 用户登录 10.10.10.10
  2. mkdir .ssh
    建立.ssh 目录
    如果系统显示 mkdir: cannot create directory .ssh: File exists
    表示目录.ssh 已经创建,则不需要重新创建
  3. cd .ssh
    进入.ssh 目录
  4. ssh-keygen -t rsa -b 2048
    建立公钥
    提示输入信息的地方,按回车即可
  5. cp id_rsa.pub id_rsa1.pub
    生成的文件 id_rsa.pub 复制一份为 id_rsa1.pub ,用以区分不同用户的密钥
  6. sftp [email protected]
    将 id_rsa1.pub 上传到(sftp 上传)mebugs 用户所在的.ssh 目录下
    1. mkdir .ssh
      同上,有就无所谓。
    2. cd .ssh
      进入.ssh 目录
    3. put id_rsa1.pub
      上传公钥
    4. quit
  7. ssh [email protected]
    远程登录,此时无信任关系需要输入密码。
  8. cd .ssh
    进入.ssh 目录
  9. cat id_rsa1.pub >> authorized_keys
    追加公钥到 authorized_keys 文件
  10. 如果需要添加双向信任关系
    在 10.10.10.20 下执行 4-9 步,将目标地址变成 10.10.10.10 的用户

快捷流程

举例 10.10.10.10 的 mebugs 用户与 10.10.10.20 的 mebugs 用户

  • 把 10 的 mebugs 用户的 rsa.pub 文件内容拷贝到 20 的 mebugs 用户的 authorized_keys 文件里面
  • 把 20 的 mebugs 用户的 rsa.pub 文件内容拷贝进 10 的 mebugs 用户的 authorized_keys 文件里面

完成...

  1. 同时登录 10.10.10.10 的 mebugs 用户与 10.10.10.20 的 mebugs 用户
  2. 分别进入两个用户的 cd .ssh
  3. vi id_rsa.pub 打开 id_rsa.pup 文件,全文 Copy
  4. vi authorized_keys 打开另一个环境的 authorized_keys,粘进去
  5. 反向操作 3/4 两步,如果不反向操作就是单向信任关系,互加了就是双向的。

偷懒流程缺陷?

哦!会有一些重复的垃圾数据以及不必要的信任关系,不建议(大力推荐)大家这么玩儿~

不必要的信任关系:

  • 比如 10 和 30 有信任关系
  • 20 不需要和 30 有信任关系
  • 但是 20 拷贝了 10 的内容
  • 20 有了 30 的单向信任关系

信任关系检查

在 10.10.10.10 的 mebugs 用户下

ssh [email protected]
​

按下回车:如果不用输入密码直接登陆进去,说明信任关系加入成功

更多推荐

章节目录