免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 29854 | 回复: 12
打印 上一主题 下一主题

[最简单的] ssh安全的免密码自动登录,scp... [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-05-21 19:17 |只看该作者 |倒序浏览
[最简单的] ssh安全的自动登录
2005-5-21 by wwy
###########################

A为本地主机(即用于控制其他主机的机器) ;
B为远程主机(即被控制的机器Server), 假如ip为172.24.253.2 ;
A和B的系统都是Linux

在A上的命令:
# ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码)
# ssh root@172.24.253.2 "mkdir .ssh;chmod 0700 .ssh" (需要输入密码)
# scp ~/.ssh/id_rsa.pub root@172.24.253.2:.ssh/id_rsa.pub (需要输入密码)

在B上的命令:
# touch /root/.ssh/authorized_keys2 (如果已经存在这个文件, 跳过这条)
# cat /root/.ssh/id_rsa.pub  >;>; /root/.ssh/authorized_keys2 (将id_rsa.pub的内容追加到 authorized_keys2 中)

回到A机器:
# ssh root@172.24.253.2 (不需要密码, 登录成功)

如果能保护好自己的私钥, 这种方法相对在shell上输入密码, 要安全一些

#########################################################################

深入一点点:

从表面上简单的理解一下登录的过程,
首先 ssh-keygen -t rsa 命令生成了一个密钥和一个公钥, 而且密钥可以设置自己的密码
可以把密钥理解成一把钥匙, 公钥理解成这把钥匙对应的锁头,
把锁头(公钥)放到想要控制的server上, 锁住server, 只有拥有钥匙(密钥)的人, 才能打开锁头, 进入server并控制
而对于拥有这把钥匙的人, 必需得知道钥匙本身的密码,才能使用这把钥匙 (除非这把钥匙没设置密码), 这样就可以防止钥匙被了配了(私钥被人复制)

当然, 这种例子只是方便理解罢了,
拥有root密码的人当然是不会被锁住的, 而且不一定只有一把锁(公钥), 但如果任何一把锁, 被人用其对应的钥匙(私钥)打开了, server就可以被那个人控制了
所以说, 只要你曾经知道server的root密码, 并将有root身份的公钥放到上面, 就可以用这个公钥对应的私钥"打开" server, 再以root的身分登录, 即使现在root密码已经更改!

如果想控制n个机器, 那就需要n对钥匙(密钥和公钥), ssh-keygen 命令可以随意更改钥匙对的名字, 比如:
[root@wwy .ssh]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_rsa_192.168.102.12
......

这样私钥和公钥的名字分别就是:
id_rsa_192.168.102.12 和 id_rsa_192.168.102.12.pub
然后将 id_rsa_192.168.102.12.pub 文件的内容, 追加到sever的 ~/.ssh/authorized_keys2 文件中,

最后, 在本地用ssh命令的 -i 参数指定本地密钥, 并登录:
# ssh -i /root/.ssh/id_rsa_192.168.102.12 192.168.102.12

如果密钥设置了密码, 就用密钥的密码登录, 没设密码, 就直接登录进去了

scp也是一样的
如:
scp -i /root/.ssh/id_rsa  ./xxx 192.168.102.158:/home/wwy/bak

论坛徽章:
0
2 [报告]
发表于 2005-05-21 21:40 |只看该作者

[最简单的] ssh安全的免密码自动登录,scp...

一定要把那个文件命名为authorized_keys2吗?
我的是authorized_keys也行啊~~~

论坛徽章:
0
3 [报告]
发表于 2005-05-22 00:34 |只看该作者

[最简单的] ssh安全的免密码自动登录,scp...

ssh的版本不同.新版的就用authorized_keys.楼主的文章应该不是原创的.

论坛徽章:
0
4 [报告]
发表于 2005-05-22 09:21 |只看该作者

[最简单的] ssh安全的免密码自动登录,scp...

ssh的版本不同.新版的就用authorized_keys.楼主的文章应该不是原创的.


嗯, 算是我的学习笔记吧

上面的是我看别的文章后小改了一点写上去的,
而后面的"深入"是我自己的浅显理解, 希望能对初学者有帮助  : )

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
5 [报告]
发表于 2005-05-22 10:21 |只看该作者

[最简单的] ssh安全的免密码自动登录,scp...

支持一下.

论坛徽章:
0
6 [报告]
发表于 2005-05-22 11:55 |只看该作者

[最简单的] ssh安全的免密码自动登录,scp...

这个精华里有,RedHat的文档里也有........

不过还是支持一下 :P

论坛徽章:
0
7 [报告]
发表于 2005-06-03 00:25 |只看该作者

[最简单的] ssh安全的免密码自动登录,scp...

记录自己看到的好的帖子,才感觉进步的滋味,

论坛徽章:
0
8 [报告]
发表于 2005-06-03 20:08 |只看该作者

[最简单的] ssh安全的免密码自动登录,scp...

回到A机器:
# ssh root@172.24.253.2 (不需要密码, 登录成功)
~~~~~~~~~~~~
难道这里不需要“-i id_rsa”么?  (使用私钥)

论坛徽章:
0
9 [报告]
发表于 2005-06-03 21:35 |只看该作者

[最简单的] ssh安全的免密码自动登录,scp...

原帖由 "UMBRO" 发表:
回到A机器:
# ssh root@172.24.253.2 (不需要密码, 登录成功)
~~~~~~~~~~~~
难道这里不需要“-i id_rsa”么?  (使用私钥)


在这里默认是 -i /root/.ssh/id_rsa

论坛徽章:
0
10 [报告]
发表于 2005-06-03 23:30 |只看该作者

[最简单的] ssh安全的免密码自动登录,scp...

你要管理多台服务器并不需要n对密钥,一个就够了。为什么,证书要那么多干什么,反正都放在一个地方,要被偷就全被偷了,所以多证书没有太大意义。一般情况下不建议不用密码保护密钥的,如果实在不能输密码,就用keyagent了。
putty也支持的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP