ssh-agent是ssh代理程序,使用ssh-agent可以方面管理私钥。

ssh-agent主要使用在如下两个场景:

1.使用不同的密钥连接不同主机,每次连接都要指定私钥;

2.当私钥设置了密码,每次使用认证时都需要输入密码,非常麻烦。

启动ssh-agent

启动ssh-agent有两种方法:

ssh-agent $SHELL

eval 'ssh-agent'

  • ssh-agent $SHELL

    这种方式会在当前shell中启动一个默认shell作为当前shell的子shell,ssh-agent程序会在子shell中运行。$SHELL变量名代表系统的默认shell,如果自己知道系统使用的是哪一种shell也可以直接指定,如ssh-agent bash,ssh-agent csh.退出当前子shell使用exit。使用pstree查看进程树。

  • eval 'ssh-agent'

    这种方式不会启动一个子shell,而是直接启动一个ssh-agent进程,使用ssh-agent -k来关闭代理。如果退出了当前bash,再使用ssh-agent -k无法关闭代理。当然,第一种方式可是可以使用ssh-agent -k来关闭代理的。

添加密钥

使用如下命令将私钥添加到代理中

ssh-add ~/.ssh/id_rsa_test

id_rsa_custom是指私钥,上述命令需要在已经启动了ssh-agent的状态下使用。

选择对应的私钥

这种情况是我们在创建密钥对时手动指定了密钥名称,而不是使用默认的名称。分为以下几步:

  • ssh-agent bash

    启动代理程序

  • ssh-add ~/.ssh/id_rsa_test

    添加密钥

  • ssh root@192.168.0.45

    连接远程机器

免去输入私钥密码

这种情况是我们在创建密钥对时指定了密钥的密码,解决过程分为几步。

  • ssh-agent bash

    启动代理程序

  • ssh-add ~/.ssh/id_rsa_test

    将密钥加入代理,此时会提示输入密钥的密码

  • ssh -i ~/.ssh/id_rsa_test root@192.168.0.45

    连接远程机器

相关命令

ssh-add -l	//查看代理中的私钥
ssh-add -L //查看公钥
ssh-add -d /root/.ssh/id_rsa_test //移除密钥
ssh-add -D //清空所有私钥
ssh-add -x //对代理进行加锁,加锁后仍然需要指定密钥或者密码等
ssh-add -X //对代理进行解锁

使用ssh-agent管理密钥的更多相关文章

  1. 第9章 使用ssh服务管理远程主机。

    章节简述: 学习使用nmtui命令配置网卡参数.手工将多块网卡做绑定.使用nmcli命令查看网卡信息和使用ss命令查看网络及端口状态. 完整演示sshd服务配置方法并详细讲述每个参数的作用,实战基于密 ...

  2. SSH应该使用密钥还是密码?

    关于SSH,几乎每个人都同意密钥要优于密码,更安全,并且更先进,但我并不同意这个观点. 虽然密钥的确可以更好,但它有着还没被意识到的严重风险,并且我认为比得到妥善管理的密码更不安全. 通常密钥更好的理 ...

  3. 五.ssh远程管理服务

    01. 远程管理服务知识介绍 1) SSH远程登录服务介绍说明 SSH是Secure Shell Protocol的简写,由 IETF 网络工作小组(Network Working Group)制定: ...

  4. Linux(11):期中架构(3)--- SSH远程管理服务 & ansible 批量管理服务

    SSH远程管理服务 1. 远程管理服务知识介绍 # 1.1 SSH远程登录服务介绍说明 SSH是Secure Shell Protocol的简写,由 IETF 网络工作小组(Network Worki ...

  5. ssh远程管理服务的介绍

    第6章 远程管理的介绍 6.1 服务的概念介绍 6.1.1 ssh和telnet服务的相同和不同点 ssh: 服务端口号为22 在数据传输的时候是加密的传输 一般在互联网中使用,可以使用root账号进 ...

  6. SSH远程管理

    目录 SSH远程管理 ssh功能 SSH相关命令 Xshell连接不上虚拟机 scp命令 SSH验证方式 优化 免交互expect[扩展] 免交互sshpass[扩展] 简易跳板机 小结 SSH远程管 ...

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

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

  8. 《Linux就该这么学》培训笔记_ch09_使用ssh服务管理远程主机

    <Linux就该这么学>培训笔记_ch09_使用ssh服务管理远程主机 文章最后会post上书本的笔记照片. 文章主要内容: 配置网络服务 远程控制服务 不间断会话服务 书本笔记 配置网络 ...

  9. SSH远程管理服务实战

    目录 SSH远程管理服务实战 1.SSH基本概述 2.SSH相关命令 3.Xshell连接不上虚拟机 4.scp命令 5.sftp命令 6.SSH验证方式 7.SSH场景实践 8.SH安全优化 9.交 ...

随机推荐

  1. Android性能优化之数据库优化

    本文为性能优化的第一篇——数据库性能优化,原理适用于大部分数据库包括Sqlite.Mysql.Oracle.Sql server,详细介绍了索引(优缺点.分类.场景.规则)和事务,最后介绍了部分单独针 ...

  2. iis不能访问html

    在iis中配置好虚拟目录后,打开目录下的一个html文件,发现不是按照预想的输出,查看源代码后发现代码是: <html><head></head><body& ...

  3. PostgreSQL老司机博客 经常翻翻收获不小

    德歌:https://github.com/digoal/blog/blob/master/README.md 唐成:http://blog.osdba.net/525.html 后面持续更新.../ ...

  4. java String 转 Long 两种方法区别

    Long.ValueOf("String")返回Long包装类型 包装类型: Byte,Integer,Short,Long,Boolean,Character,Float,Dou ...

  5. android代码设置EditText只输入数字、字母

     如何设置EditText,使得只能输入数字或者某些字母呢? 一.设置EditText,只输入数字: 方法1:直接生成DigitsKeyListener对象就可以了. et_1.setKeyLis ...

  6. mac 电脑学习笔记 -

    新买了个mac mini,第一次用mac,有点linux基础,借此机会记录一下自己的学习过程. 1.个人设置文件 .profile export LS_OPTIONS='--color=auto' # ...

  7. 第九集 经验风险最小化(ERM)

    实在写不动了,将word文档转换为PDF直接截图了... 版权声明:本文为博主原创文章,未经博主允许不得转载.

  8. linux C使用strerror来追查错误信息

    最近工作中有个需求:程序将文件进行处理,然后将处理完毕的文件挪走.我用了rename函数来挪动文件,可是在docker化的环境中,文件却无法挪动.不知道什么原因.现在,对程序进行调整,如果rename ...

  9. iOS6 自动布局 入门–Auto Layout

    目前为止,即使你的界面设计是在合理的复杂度内,你也必须要为之写许多代码来适应变化的布局.现在我相信你会很高兴听到这种情况将不会发生了-对于iPhone与iPad IOS6 带来了一个非常了不起的特征: ...

  10. Weblogic配置SSl使用Https

    一 .可以开启自带的SSL连接 启动weblogic,进入左侧菜单,点击左侧的安全领域-->点击myrealm-->点击角色和策略-->点击服务器AdminServer 点击保存,w ...