SSH Agent Forwarding概念与示例
在使用ssh-copy-id拷贝公钥及ssh-agent添加passphrase一文中,我们已经知道ssh-agent可以免除输入passphrase的麻烦,本文演示其另一功能,SSH agent forwarding。
假设有3台机器,客户机,位于公网的跳板机和位于内网的目标机。
为了访问内网的目标机,通常需要将目标机的私钥放置在跳板机上。而SSH agent forwarding可以实现以下的功能:
- 跳板机上无需放置目标机的私钥
- 跳板机通过访问客户机上的ssh-agent获取私钥
注意,前提是客户机可以访问跳板机,也就是具有访问跳板机的私钥
因此在客户机上需要启动ssh-agent,并添加目标机的私钥。
# 以下操作均位于客户机
$ eval `ssh-agent`
Agent pid 17808# 可以指定key的路径,例如ssh-add -k /tmp/id_rsa
$ ssh-add
Identity added: /c/Users/yyxiao/.ssh/id_rsa (/c/Users/yyxiao/.ssh/id_rsa)$ ssh-add -l
2048 SHA256:VSjsgy1rieKeqZqSOf/ubyXilTwdwURLZOPcuxaA3pU /c/Users/yyxiao/.ssh/id_rsa (RSA)
客户机和跳板机均需要允许SSH Agent Forwarding,或者说ssh和sshd都需要允许SSH Agent Forwarding。
客户机的配置可以在ssh_config文件中配置,或者使用-A选项。sshd的配置需要以下选项,默认是允许的:
AllowAgentForwarding yes
下面我们来验证这个过程:
# 在客户机上,以-A选项登录跳板机
$ ssh -A opc@130.61.120.167
Last login: Wed Nov 4 09:12:15 2020 from 202.45.129.203# 在跳板机上,确认没有存私钥文件id_rsa
[opc@instance-20201027-1039 ~]$ ls -l ~/.ssh
total 12
-rw-------. 1 opc opc 398 Oct 27 02:40 authorized_keys
-rw-------. 1 opc opc 1672 Nov 4 03:16 id_rsa.orig
-rw-r--r--. 1 opc opc 342 Nov 4 03:23 known_hosts# 在跳板机上,登录目标机成功
[opc@instance-20201027-1039 ~]$ ssh 10.0.1.14
Last login: Wed Nov 4 09:09:12 2020 from instance-20201027-1039.sub07281614200.training.oraclevcn.com
SSH Agent Forwarding概念与示例相关推荐
- SSH Agent Forwarding原理
转载自:http://blog.pkufranky.com/2012/08/ssh-agent-forwarding-guide/ ssh-agent的manual写得倒是挺详细,可看了好几次都没怎么 ...
- ssh密钥代理转发(ssh agent forwarding)
之前一直用SecureCRT登陆服务器A然后再跳到服务器B,某日突然需要从另一台可信任的机器C用ssh登陆,ssh的key已经复制好,所以登陆A没有问题,但是登陆B会出现Pubkey Unauthor ...
- An Illustrated Guide to SSH Agent Forwarding
很怕某天这个网页就打不开了,先备份下来. 转自:http://www.unixwiz.net/techtips/ssh-agent-forwarding.html 再次声明,本文转自:http://w ...
- LWN:限制SSH agent密钥!
关注了就能看到更多这么棒的文章哦- Restricting SSH agent keys By Jake Edge January 5, 2022 DeepL assisted translation ...
- jenkins用ssh agent插件在pipeline里实现scp和远程执行命令
现在ssh agent的认证,已不支持明文用户密码,而只能用加密方式实现. 所以我先在jenknis和nginx服务器之后,实现ssh免密码rsa证书登陆. 私钥放jenkins,公钥放nginx.然 ...
- ssh X11 Forwarding(本地共享远程服务器界面)
ssh -X untrusted ssh -Y trunsted在Client端显示运行在服务器(Server)上的图像化界面.可以通过SSH X11 Forwarding来实现. X11中的X指X协 ...
- SSH agent refused operation
SSH agent refused operation 今天用ubantu16.0桌面版配置ssh免密码登录自己的时候,出现了这个灵异事件,最后终于找到了问题 首先,打开这个文件的权限 chmod 7 ...
- Java中的流(概念和示例)
首先,流是什么? 流是个抽象的概念,是对输入输出设备的抽象,Java程序中,对于数据的输入/输出操作都是以"流"的方式进行.设备可以是文件,网络,内存等. 流具有方向性,至于是输入 ...
- 【集合论】等价关系 ( 等价关系概念 | 等价关系示例 | 等价关系与闭包 )
文章目录 一.等价关系 二.等价关系示例 三.等价关系与闭包示例 一.等价关系 等价关系概念 : AAA 集合是非空集合 , A≠∅A \not= \varnothingA=∅ , 并且 RRR ...
- ansible——playbook剧本概念及示例
目录 一.playbook 1.1 yaml基本语法规则 1.2 yaml支持的数据结构 二.Inventory中变量 2.1 inventor 变量参数 三.playbook示例 3.1 为每个 ...
最新文章
- 请重新认识你作为程序员的价值
- 详解:Linux Chrony 设置服务器集群同步时间
- smb(ms17-010)远程命令执行之msf
- phpvirtualbox+Virtualbox完整虚拟化环境部署
- mysql 回滚段_史上最牛分析MySQL索引机制的实现!不接受反驳
- 教你实现splash欢迎页面延迟跳转的6种方法
- 前端学习(3219):对props进行限制
- 苹果本Win10双系统开启CPU虚拟化
- 询问区间内最大值-最小值
- linux系统中rsync的安装和使用,以及配置rsync开机启动
- postgresql数据库进行等保测评(审计) 需要修改的参数
- ubuntu20.04修改mac地址
- php 分页样式css样式,thinkphp5分页CSS样式代码
- mysql释放所有_mysql表空间释放情况汇总
- 如何将视频上传到网站服务器,如何将本地视频上传到云服务器
- 没有银弹-软件工程中的根本和次要问题
- 计算机用word做贺卡,新年马上就要到了用WORD2000做贺卡 -电脑资料
- “SCSA-S学习导图+”系列:文件包含
- MXNet作者李沐:我在CMU读博的这五年
- 多宫格视频是什么软件_抖音上的四/多宫格视频是怎么做出来的?多宫格视频一个接一个播放的制作技巧...