分享

linux(ubuntu)ssh无密码互通、相互登录高可靠文档

pig2 发表于 2014-5-12 18:06:35 [显示全部楼层] 回帖奖励 倒序浏览 阅读模式 关闭右栏 10 50561
本帖最后由 nettman 于 2014-9-11 18:23 编辑
问题导读:
1.实现无密码登录的关键是什么?
2.生成key的命令有几种?
3.如何实现远程复制文件?





1、这里我们搭建一个由三台机器组成的集群:
172.16.77.15     aboutyun/123456      master
172.16.77.16     aboutyun/123456      slave1
172.16.77.17     aboutyun/123456      slave1
1.1 上面各列分别为IP、user/passwd、hostname

1.2   Hostname可以在/etc/hostname中修改,hostname,hosts的修改详细可以看ubuntu修改hostname
对于三台机器都需要修改:
下面是master的修改:通过命令
  1. vi /etc/hosts
复制代码
然后对你里面的内容修改

下面修改hostname
  1. vi /etc/hostname
复制代码
修改为master即可

上面hosts基本都一样,只不过hostname有所差别。


2、打通master到slave节点的SSH无密码登陆
这里面打通无密码登录,很多新手遇到了问题,这里安装的时候,具体的操作,可以查阅其他资料:
这是个人总结的哦命令,相信对你有所帮助
然后这里在展示一下,authorized_keys是什么样子的:

上面的原理,就是我把工钥放到里面,然后本台机器就可以ssh无密码登录了。如果想彼此无密码登录,那么就需要把彼此的工钥(*.pub)放到authorized_keys里面
然后我们进行下面步骤:
3.1 安装ssh
一般系统是默认安装了ssh命令的。如果没有,或者版本比较老,则可以重新安    装:
sudo apt-get install ssh
3.2设置local无密码登陆

具体步骤如下:
第一步:产生密钥
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
第二部:导入authorized_keys
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
第二部导入的目的是为了无密码等,这样输入如下命令:
  1. ssh localhost
复制代码
就可以无密码登录了。
下面展示一下hosts的配置,及无密码登录的效果
locahost的配置


无密码登录效果:

3.3设置远程无密码登陆

进入master的.ssh目录
scp authorized_keys aboutyun@slave1:~/.ssh/authorized_keys_from_master

进入slave1的.ssh目录
cat authorized_keys_from_master  >>  authorized_keys

至此,可以在master上面ssh slave1进行无密码登陆了。
【注意】:以上操作在每台机器上面都要进行。
这里在强调一下原理:
就是把工钥放到里面,然后本台机器就可以ssh无密码登录了。如果想彼此无密码登录,那么就需要把彼此的工钥(*.pub)放到authorized_keys里面

------------------------------------------------------------------------
根据上面的资料相信你能得到互通,这里展现一下效果:
上面是slave1无密码登录master

这里是master无密码登录slave1
------------------------------------------------------------------------

已有(11)人评论

跳转到指定楼层
hochikong 发表于 2014-5-13 12:34:41
好像出现了个错别字哟,是“公钥”而不是“工钥”

点评

小伙很认真  发表于 2014-5-13 12:39
回复

使用道具 举报

wmj007 发表于 2014-6-11 17:33:52
就是把工钥放到里面,然后本台机器就可以ssh无密码登录了。如果想彼此无密码登录,那么就需要把彼此的工钥(*.pub)放到authorized_keys里面    很好的理解这句话是这个无密码登录安装的核心,理解了就是融会贯通,否则换个就不会了,正在学习ing
回复

使用道具 举报

小熊007 发表于 2014-8-21 09:09:32
本帖最后由 小熊007 于 2014-8-21 09:10 编辑

想要具体理解的,详细理解的,参考马哥的这个ssh, 链接: http://pan.baidu.com/s/1mg3HKwg 密码: jl2x,在教你们一招,如果这个链接失效了,那就直接点,比如,http://pan.baidu.com/share/link?shareid=76297&uk=3238350839失效的话,把share/。。。。&uk.....改成share/home?uk。。。。知道了吧,就是把link?shareid=76297&这部分改成home? 就可以了
回复

使用道具 举报

break-spark 发表于 2014-10-24 16:25:19
写的不错,收藏下
回复

使用道具 举报

hery 发表于 2015-2-9 10:26:48
回复

使用道具 举报

hery 发表于 2015-2-10 09:50:06
回复

使用道具 举报

suzjst 发表于 2015-9-17 23:28:54
在使用ubuntu进行第一步产生秘钥:
第一步:产生密钥
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
这个命令执行之后,后续的使用ssh localhost死活执行不通过,要输入密码验证

之后直接执行:ssh-keygen -t dsa之后连续按两次回车就可以成功创建
回复

使用道具 举报

juedaiyuer 发表于 2015-11-6 11:51:49
楼主你的虚拟机网络设置用的是哪一个方法?涉及到多台虚拟机一起运行的时候,需要哪一种连接设置?
回复

使用道具 举报

pig2 发表于 2015-11-6 18:50:01
juedaiyuer 发表于 2015-11-6 11:51
楼主你的虚拟机网络设置用的是哪一个方法?涉及到多台虚拟机一起运行的时候,需要哪一种连接设置?

都可以的,可以选则nat
回复

使用道具 举报

12下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /5 下一条