ssh-agent 使用指南

不知道你有没有遇到这样的状况,有二台以上的服务器(服务器系统是windows的不要往下看)须要管理,若是说你有这种状况,并且尚未用到 ssh-agent 的话,那么这篇文章就是为你而写。vim

假如你有三台服务器 s1.x.com s2.x.com s3.x.com,并且你都作好了登陆到每一台机器的免密码功能。就是经过本地机器直接运行 ssh sN.x.com (注意:N)均可以链接到相应的服务器了,那么问题就来了,若是你如今已经链接到 s1 这台机器上,但愿经过 s1 这台机器直接连到 s2 这台机器,而且不要输入密码,你测试了一下发现不行,为何呢?由于 s1 和 s2 这两台机器没有作免密码登陆功能,虽然咱们能够把本地的私钥上传到 s1 服务器上,让它链接 s2 的时候就使用这个私钥,可是这样子作太危险了啊,若是有人进了你的系统,你整个内网都是能够直接进入的,由于已经拿到了你的私钥了嘛。ssh-agent 就是一个让你不把私钥上传到服务器上,就能够完成刚才的功能的一个工具,让你在这些服务器之间来去自如。windows

step1. 开启 ssh-agent

$ eval ssh-agent
Agent pid XXX服务器

step2. 添加私钥

$ ssh-add ~/.ssh/id_rsa (若是生成密钥时是使用的默认的,那么就是这个了,若是不是的话就写你的私钥地址吧)ssh

step3. 告诉ssh 容许 ssh-agent 转发

  • 修改全局:$ echo "ForwardAgent yes" >> /etc/ssh/ssh_config
  • 修改我的

$ touch ~/.ssh/config
$ vim ~/.ssh/config
Host *
  ForwardAgent yes工具

step4. 修改每台服务器的 ssh 配置文件,让它们都对 ssh-agent 进行转发

到每台服务器上去按 step3 -> 全局,作一下。测试

如今你能够经过本地链接到任意一台服务器了,经过这台服务器再任意的链接到其它的服务器,之后就能够静静地享受这份快乐了!code

相关文章
相关标签/搜索