烂泥:学习ssh之ssh密钥随身携带
在上一篇文章《烂泥:学习ssh之ssh无密码登陆》中,我们讲解了如何使用ssh密钥,免密码登陆服务器。
这篇文章我们再来讲解,如何把已经生成的密钥随身携带。
有关如何生成ssh密钥的详细步骤,可以查看上一篇文章《烂泥:学习ssh之ssh无密码登陆》。
一、生成密钥
现在我们通过xshell生成密钥,注意:本章节,我只进行截图,不做进一步的文章说明。
如下:







我们现在有了公钥和私钥:id_dsa_150518.pub、id_dsa_150518,把公钥id_dsa_150518.pub上传到需要连接的服务器192.168.1.9的ilanni用户的对应目录下。如下:
ifconfig eth0|grep 'inet addr'|awk '{print $2}'|cut -d: -f2
cat .ssh/authorized_keys

现在我们就可以把这个密钥id_dsa_150518随身携带,无论在什么地方都可以连接192.168.1.9服务器。
注意:我们现在所说的密钥,其实就是上面xshell生成的ssh私钥。
同时还要注意私钥id_dsa_150518,我们可以携带该私钥文件,也可以把该私钥的内容复制到其他文件中也行。如下:

注意:ssh私钥的内容在复制,不能缺少任何一个字符。
二、windows下连接ssh服务器
假如,我们现在到一个新的地方,使用的OS是windows,而ssh的私钥就在我们身边的话,我们就可以通过该私钥连接ssh服务器了。
在此,我们还是以使用xshell来连接ssh服务器为例,进行讲解。当然你也可以使用其他的ssh客户端软件,进行连接。
使用如下命令连接ssh服务器,如下:
ssh ilanni@192.168.1.9
此时xshell会弹出要你输入密码的界面。如下:

我们不选择Password选项,要选择Public Key选项。然后选择“浏览”--“文件”,如下:

找到我们携带的ssh的私钥文件id_dsa_150518,如下:

选择私钥文件,如下:


通过上图,我们可以很明显的看出在连接192.168.1.9服务器时,xshell确实没有提示我们要输入密码。
注意:如果你的私钥文件不是随身携带而是记住私钥内容的话,你也可以建立一个文件,比如ilanni.txt,把私钥的内容复制到ilanni.txt进去保存。
在连接ssh服务器选择密钥文件时,只需选择ilanni.txt文件即可。
三、linux下连接ssh服务器
在第二章节中,我们讲解了如何在windows下通过ssh的私钥连接ssh服务器。在这章节,我们再来讲解如何在linux下,通过ssh私钥连接ssh服务器。
先把ssh的私钥上传到linux主机上或者在linux主机上新建一任意文件,把私钥的内容复制到该文件中,然后使用如下命令进行连接:
ssh -i id_dsa_150518 ilanni@192.168.1.9

通过上图,我们可以很明显的看出,连接ssh服务器192.168.1.9还是需要输入用户密码的。
是我们的操作不对还是怎么回事呢?
如果你仔细看上述的提示的话,你会发现这个是因为ssh私钥用户权限的设置太大,不安全造成的。
ssh为了安全起见,对私钥文件的权限一般要设置为600,即用户自己对该私钥文件具有读写权限,其所在的用户组及其他用户组对私钥文件不具有任何权限。
我们现在只需要把ssh私钥文件的权限设置为600即可,如下:
chmod 600 id_dsa_150518

再次使用ssh -i id_dsa_150518 ilanni@192.168.1.9命令进行连接,如下:

通过上图,我们可以很明显的看出,现在我们已经进入到192.168.1.9这台服务器中,而且是没有输入密码的。
注意:上述命令中的-i参数用于指定ssh私钥文件。
有关ssh命令的相关参数使用方法,可以参考ssh的帮助。如下:
ssh --help

到此有关ssh密钥随身携带的全部内容就结束了。
烂泥:学习ssh之ssh密钥随身携带的更多相关文章
- 烂泥:学习ssh之ssh无密码登陆
本文由秀依林枫提供友情赞助,首发于烂泥行天下 最近一个月没有写过文章,主要是刚刚换的新工作.新公司服务器OS使用的是ubuntu server版,和以前熟悉的centos还是有很多不同的. 刚好这几天 ...
- ssh服务、密钥登陆配置
环境内核信息: [root@zabbix-01 ~]# uname -a Linux lodboyedu-01 2.6.32-696.el6.x86_64 #1 SMP Tue Mar 21 19:2 ...
- ssh&scp指定密钥
scp时指定密钥: scp -P22 -r -i ~/.ssh/dongjing-shanghai.pem root@kiri_pro01:/data/backup/back_from_japan ...
- Linux学习笔记 | 配置ssh
目录: SSH的必要性 将默认镜像源修改为清华镜像源 Linux安装ssh软件 使用putty软件实现ssh连接 Windows下安装winscp SSH的必要性 一般服务器都位于远程而非本地,或者及 ...
- SSH管理多密钥
生成密钥对 ssh-keygen -t rsa -b 4096 -C "your_email@example.com" # 默认情况下在~/.ssh目录下生成id_rsa和id_r ...
- Linux系统学习 八、SSH服务—SSH远程管理服务
1.SSH简介 ssh(安全外壳协议)是Secure Shell的缩写,是建立在应用层和传输层基础上的安全协议.传输的时候是经过加密的,防止信息泄露,比telnet(明文传递)要安全很多. ftp安装 ...
- 吴裕雄--天生自然JAVA SPRING框架开发学习笔记:SSH框架(Struts2+Spring+Hibernate)搭建整合详细步骤
在实际项目的开发中,为了充分利用各个框架的优点,通常都会把 Spring 与其他框架整合在一起使用. 整合就是将不同的框架放在一个项目中,共同使用它们的技术,发挥它们的优点,并形成互补.一般而言,在进 ...
- 第1章 ssh和SSH服务(包含隧道内容)
本文对SSH连接验证机制进行了非常详细的分析,还详细介绍了ssh客户端工具的各种功能,相信能让各位对ssh有个全方位较透彻的了解,而不是仅仅只会用它来连接远程主机. 另外,本人翻译了ssh客户端命令的 ...
- man ssh翻译(ssh命令中文手册)
本文为命令ssh的man文档翻译,翻译了90%的内容,剩余是一些没必要翻译的东西,请见谅. 如此文有所疑惑,希望我的另一篇文章能解惑: SSH(1) BSD Ge ...
随机推荐
- 第 29 章 CSS3 弹性伸缩布局[下]
学习要点: 1.新版本 主讲教师:李炎恢 本章主要探讨 HTML5 中 CSS3 提供的用来实现未来响应式弹性伸缩布局方案,这里做一个初步的了解. 一.新版本 新版本的 Flexbox 模型是 201 ...
- InfluxDB学习之InfluxDB的HTTP API写入操作
HTTP API也有两种操作:写入和查询,本文就先给大家介绍一下 InfluxDB的HTTP API的写入操作方式. 在InfluxDB学习的上一篇文章:InfluxDB学习之InfluxDB ...
- Erlang垃圾回收机制的二三事
声明:本片文章是由Hackernews上的[Erlang Garbage Collection Details and Why ItMatters][1]编译而来,本着学习和研究的态度,进行的编译,转 ...
- orcl的小技巧和分页
1Oracle中查看所有用户语句 select * from dba_users 1.修改用户的密码 alter user 用户名 identified by 密码; 2.如何查询stuInfo表中自 ...
- jQuery 浮动标签插件,帮助你提升表单用户体验
浮动标签模式(Float Label Pattern)是最新流行的一种表单输入域的内容提示方式,当用户在输入框输入内容的时候,原先占位符的内容向上移动,显示在输入的内容的上面.这里推荐的这款 jQue ...
- Ionic - 先进的 HTML5 移动开发框架和 SDK
Ionic 是开源的 HTML5 移动开发框架,基于 HTML.JavaScript.CSS 构建漂亮的,跨平台的混合模式 App,能够和 AngularJS 很好的集成.目前最佳支持的平台是 iOS ...
- mysql行转列、列转行示例
最近在开发过程中遇到问题,需要将数据库中一张表信息进行行转列操作,再将每列(即每个字段)作为与其他表进行联表查询的字段进行显示. 借此机会,在网上查阅了相关方法,现总结出一种比较简单易懂的方法备用. ...
- MySQL索引类型 btree索引和hash索引的区别
来源一 Hash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 ...
- [deviceone开发]-viewShower和listView
一.简介 viewshower里嵌套listview,实现复杂的列表效果. 二.效果图 三.相关下载 http://source.deviceone.net/source-detail.html?do ...
- html框架—多对话框(相同id)处理
一个网站的数据大多数都是异步刷新的,这没什么好说的,然后现在很多前后端框架,大家都知道框架很好用,不用自己写样式,只要利用框架上的语法就能做出漂亮的动态的效果来,而用框架的话大多数的动态效果都是动态生 ...