公司使用到阿里云.

需要使用 ssh-agent forward 来跳转.为了方便自己就写了这个脚本 1 #!/bin/sh 2 # auto start ssh-agent and add key

关于SSH-agent的使用,大家可以百度.一搜一堆..

简单的介绍下: P-B-C

你从P连接到C必须经过B,这个时候,你如果需要使用SSH-key的话, 要么将private key 放到B上边

ssh B,

ssh C

这样操作就需要比较复杂,key的安全也得不到保障,

这个时候我们就使用ssh-agent

eval `ssh-agent `

ssh-add  your private key

ssh -A B

ssh C

这样就可以省略了将key放在了B上的麻烦了

看起来也不简单,so,自己撸个脚本..

 #!/bin/sh
# auto start ssh-agent and add key
# author: Mo..
# QQ群:
if [ -f ~/.agent.env ];then
. ~/.agent.env >/dev/null
if ! kill - $SSH_AGENT_PID >/dev/null >&; then
echo " stale agent file found. Spawning new agent...."
eval `ssh-agent | tee ~/.agent.env `
if [[ $? -eq ]] ;then
echo "agent ok!"
fi
ssh-add '/root/.ssh/xxxxx' # your private key
if [[ $? -eq ]] ; then
echo "key add ok!"
fi
fi
else
eval ` ssh-agent |tee ~/.agent.env` >/dev/null >&
if [[ $? -eq ]] ;then
echo "agent ok!"
fi
ssh-add '/root/.ssh/xxxx' # your private key
if [[ $? -eq ]] ; then
echo "key add ok!"
fi
fi
echo "ali IP : 120.26.xxx.xxx"

#最后的echo IP 是我的forward iP  你也可以改成其他的

脚本使用:

  A.自动运行:

    直接放到/etc/profile.d,开机自动运行

  B.手动运行:

    source ali.sh

转载请保留原文完整,注明出处!谢谢!

有什么问题和建议可以留下来!一起讨论学习

ssh-agent自启动加key脚本的更多相关文章

  1. 【SSH项目实战三】脚本密钥的批量分发与执行

    [SSH项目实战]脚本密钥的批量分发与执行 标签(空格分隔): Linux服务搭建-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载, ...

  2. linux ssh 使用深度解析(key登录详解)

    SSH全称Secure SHell,顾名思义就是非常安全的shell的意思,SSH协议是IETF(Internet Engineering Task Force)的Network Working Gr ...

  3. 批量SSH key-gen无密码登陆认证脚本

    SSH key-gen无密码登录认证脚本 使用为了让linux之间使用ssh不需要密码,可以采用了数字签名RSA或者DSA来完成.主要使用ssh-key-gen实现. 通过 ssh-key-gen 来 ...

  4. SSH agent 的使用 - 资料摘录

    下面是一些ssh agent的资料简要摘录,网路上的相关的文章已经很多了: ssh 推荐的登录方式是使用私钥登录.但是如果生成私钥的时候,设置了口令(passphrase),每次登录时需要输入口令也很 ...

  5. 批量SSH key-gen无密码登陆认证脚本 附件脚本

    # 批量实现SSH无密码登陆认证脚本 ## 问题背景 使用为了让linux之间使用ssh不需要密码,可以采用了数字签名RSA或者DSA来完成.主要使用ssh-key-gen实现. 1.通过 ssh-k ...

  6. linux解析映射文件与自动加载脚本

    目录 一 :解析映射文件 1.解析文件的由来之主机名: 2.解析映射文件(DNS) 二:磁盘挂载文件 三:开机自动加载脚本 一 :解析映射文件 1.解析文件的由来之主机名: 无论是在局域网还是在INT ...

  7. 一步一步开发Game服务器(三)加载脚本和服务器热更新(二)完整版

    上一篇文章我介绍了如果动态加载dll文件来更新程序 一步一步开发Game服务器(三)加载脚本和服务器热更新 可是在使用过程中,也许有很多会发现,动态加载dll其实不方便,应为需要预先编译代码为dll文 ...

  8. Nginx启动、关闭、重新加载脚本

    #! /bin/sh # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: starts the nginx web ...

  9. JS 动态加载脚本 执行回调_转

    关于在javascript里面加载其它的js文件的问题可能很多人都遇到过,但很多朋友可能并不知道怎么判断我们要加载的js文件是否加载完成,如果没有加载完成我们就调用文件里面的函数是不会成功的.本文讲解 ...

随机推荐

  1. dede留言板BUG解决

    dede留言板刷新后空白BUG解决 DEDE留言板验证码留空或者不正确返回空白页面的解决方法 解决方法如下进入文件/plus/guestbook.php 找到代码ShowMsg("验证码不正 ...

  2. Python新手学习基础之数据类型——变量

    关于Python的变量是这样描述的: 变量是存储在内存里的一个值,通过变量名,我们可以访问到该变量的值. 上面这几行代码中,price,count和sum都是变量,Python是动态类型语言,变量是不 ...

  3. Okhttp3日志采集功能

    原文地址以示尊重:http://www.jianshu.com/p/d836271b1ae4 日志采集是一个APP必备的功能,可以方便开发人员快速定位问题,解决问题,那么我们在使用okhttp的时候应 ...

  4. DatePickerDialog 控制只选择年月或年或月

    etXyLevelDate.setOnTouchListener(selectDateTouchListener()); /** * @desc 选择日期操作 * @param @return * @ ...

  5. Android从相册读取图片

    Uri originalUri = data.getData();        //获得图片的uri  bm = MediaStore.Images.Media.getBitmap(resolver ...

  6. Java日志最佳实践

    http://www.ibm.com/developerworks/cn/java/j-lo-practicelog/

  7. cf D. Queue

    http://codeforces.com/contest/353/problem/D #include <cstdio> #include <cstring> #includ ...

  8. java集合经常出现空指针问题的解决方案

    我自己问自己这个问题的时候都把自己给雷住了,但是现实如此,经常写的程序就是出现空指针的错误. 如: public List add(){ List list=null; try { list=new ...

  9. 开始使用Logstash

    开始使用Logstash 本节将指导处理安装Logstash 和确认一切是运行正常的, 后来的章节处理增加负载的配置来处理选择的使用案例. 这个章节包含下面的主题: Installing Logsta ...

  10. BZOJ1638: [Usaco2007 Mar]Cow Traffic 奶牛交通

    1638: [Usaco2007 Mar]Cow Traffic 奶牛交通 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 571  Solved: 199 ...