ssh-add和ssh-agent
ssh-add 参数
|
-l |
查看代理中的私钥 |
| -L |
查看代理中私钥对应的公钥 |
|
-D |
移除所有代理中的私钥 |
|
-x |
锁定ssh代理 需要指定密码 |
|
-X |
解锁ssh代理 |
ssh-agent是代理,帮我们管理私钥,当创建的私钥与默认不一样的时候,通过ssh-agent管理
启动
ssh-agent $SHELL #创建一个子bash,ssh-agent运行在子bash中,子bash退出,代理关闭
eval `ssh-agent` #单独启动了一个 ssh-agent程序,关闭使用 ssh-agent -k
关闭
ssh-agent -k
当创建的私钥不是默认名称时,ssh无法直接登陆,ssh默认使用默认私钥
[root@2-128 .ssh]# ll /root/.ssh/
total 12
-rw------- 1 root test1 1679 Nov 18 20:31 id_rsatest
-rw-r--r-- 1 root test1 392 Nov 18 20:31 id_rsatest.pub [root@2-128 .ssh]# ssh-copy-id -i /root/.ssh/id_rsatest.pub -p1210 root@106.13.61.137 #当ssh登录时还是需要密码
[root@2-128 .ssh]# ssh -p1210 root@106.13.61.137
root@106.13.61.137's password: [root@2-128 .ssh]# #还需要指定私钥 [root@2-128 .ssh]# ssh -p1210 -i /root/.ssh/id_rsatest root@106.13.61.137
[root@bdserver ~]#
使用ssh-add将私钥添加到代理程序中,再次直接登录就ok了
[root@2-128 .ssh]# eval `ssh-agent`
Agent pid 26764 [root@2-128 .ssh]# ssh-add /root/.ssh/id_rsatest
Identity added: /root/.ssh/id_rsatest (/root/.ssh/id_rsatest)
[root@2-128 .ssh]#
[root@2-128 .ssh]# ssh -p1210 root@106.13.61.137
[root@bdserver ~]# logout
Connection to 106.13.61.137 closed.
5. keychain 管理ssh-agent
1.安装
cd /root && git clone https://github.com/funtoo/keychain.git
cd /root/keychain && make && mv keychain /usr/bin/ && source /etc/profile
2.keychain的一些参数
|
keychain -k mine |
只停止 keychain 启动的代理程序 |
|
keychain /root/.ssh/id_rsa |
添加私钥到代理 |
|
keychain --clear |
清理所有秘钥 |
|
keychain --clear /root/.ssh/id_rsa |
清理 id_rsa 这个私钥 |
3.配置环境变量使代理永久生效
将下面这句,配置到环境变量,我使用的是zsh
vim /root/.zshrc 配合到末尾即可
eval `keychain --eval --agents ssh id_rsa_mayun`
eval `keychain --eval --agents ssh id_rsa`
这里的意思是将id_rsa_mayun 和is_rsa 私钥 添加到ssh-agent中管理
注:
- 只要环境变量有效,ssh代理和添加的私钥就不会失效
- 使用这种方法,清理,添加秘钥均需要在环境变量中操作.好处是保证了代理的长期有效
ssh-add和ssh-agent的更多相关文章
- SSH 协议的 ssh StrictHostKeyChecking
项目的SFTP用到了这个参数: @Override public PooledObject<ChannelSftp> makeObject() throws Exception { JSc ...
- [SSH] Intro to SSH command
Create an ssh key: ssh-keygen Copy an SSH key to a remoate server: ssh-copy-id root@104.197.227.8 // ...
- ssh升级以及ssh: symbol lookup error: ssh: undefined symbol: EVP_aes_128_ctr错误处理
1.解压安装openssl包:(不能卸载openssl,否则会影响系统的ssl加密库文件,除非你可以做两个软连接libcryto和libssl) # tar -zxvf openssl-1.0.1.t ...
- 【转】linux下安装ssh服务器端及ssh的安全配置
一.在服务器上安装ssh的服务器端. $ sudo apt-get install openssh-server 2. 启动ssh-server. $ /etc/init.d/sshrestart 3 ...
- [SSH服务]——一个SSH无密码登陆实验
实验拓扑图 实验描述 机房内有两台服务器: (1)B服务器10.0.10.158,充当Web服务器,有普通用户user_00 (2)C服务器10.0.10.191,充当Mysql服务器,有普通用户us ...
- Hadoop SSH+IP、SSH+别名 免密登录配置
1.为什么要进行 SSH 无密码验证配置? Hadoop运行过程中需要管理远端Hadoop守护进程,在Hadoop启动以后,NameNode是通过SSH(Secure Shell)来启动和停止各个Da ...
- 第1章 ssh命令和SSH服务详解
基础服务类系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 本文对SSH连接验证机制进行了非常详细的分析,还详细介绍了ssh客户端工具的各种 ...
- 通过Obfuscated ssh避免时不时ssh连接不畅的问题【转】
众所周知的原因,为了能流畅的使用google.使用某些“不存在”的网站,我们一般都是需要通过某些不方便光明正大说明使用用途的技术.比如通过ssh tunnel,这是最简单的,也是用得最多的. 不过,这 ...
- Linux中ssh介绍与ssh+key密钥登陆部署
环境内核信息: [root@zabbix- ~]# uname -a Linux zabbix- -.el6.x86_64 # SMP Tue Mar :: UTC x86_64 x86_64 x86 ...
- Linux之间配置SSH互信(SSH免密码登录)
为简化SSH过程,采用证书方式,免去SSH登入时需要输入账号密码的过程,具体操作如下: 一.在SSH服务器所在机器上 1.以root用户登录,更改ssh配置文件 /etc/ssh/sshd_confi ...
随机推荐
- win10执行Tensorflow,总是会报错“DLL load failed: 找不到指定的模块”的解决方式----终极版方式
win10上运行tensorflow时报错,“DLL load failed: 找不到指定的模块”的解决方式 我只想说,当你们遇到这个问题的时候,以下终极版的方式出来了,非常感谢知乎 leo lv ! ...
- Unity C# Scoket Thread
关于 Scoket和Thread 也没什么要说的,网上有很多资料.但是需要注意的是 Scoket和Thread 都需要创建和杀死.不然一定会造成程序假死.好了上代码 服务器: using System ...
- iTerm2 都不会用,还敢自称老司机?(上)
对于需要长期与终端打交道的工程师来说,拥有一款称手的终端管理器是很有必要的,对于 Windows 用户来说,最好的选择是 Xshell,这个大家都没有异议.但对于 MacOS 用户来说,仍然毋庸置疑, ...
- 2018-05-04 圣杯布局 and 双飞翼布局,display:flex
看到一个神奇的布局,啥都不说了 直接贴代码 要让main在中间,left在左边,可以通过Flex容器下的项目的属性“order”属性来设置:对于order属性:定义项目的排列顺序,越小越靠前,默认为0 ...
- 单片机基础——使用GPIO输出点亮一个LED灯
1. 准备工作 硬件准备 开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接. 软件准备 需要安装好Keil - MDK及芯片对应的包,以便编译和下载生成的代码,可参考MDK安装教程 ...
- C++ for循环练习
#include <stdio.h> //题目:现有公鸡5元一只,母鸡3元一只,小鸡1元3只(小鸡不能单买 最少3只起卖),此时顾客有100元,请问有多少种购买方案. int main() ...
- frida(hook工具)的环境搭建
一.简介 frida 是一款基于 python+javascript 的 hook 框架,可运行在 android.ios.linux.win等各个平台,主要使用的动态二进制插桩技术. Frida官网 ...
- Python输出水仙花数,用逗号分隔
描述 "水仙花数"是指一个三位整数,其各位数字的3次方和等于该数本身. ...
- Jmeter Agent自动化
1.打开菜单栏-附件-系统工具-任务计划程序,新建PerformanceTest目录. 2.在PerformanceTest目录下新建一个基本任务. 3.完成. 这样,当我们在使用Jmeter进行分布 ...
- Python3学习之路~10.2 协程、Greenlet、Gevent
一 协程 协程,又称微线程,纤程.英文名Coroutine.一句话说明什么是线程:协程是一种用户态的轻量级线程. 协程拥有自己的寄存器上下文和栈.协程调度切换时,将寄存器上下文和栈保存到其他地方,在切 ...