ssh 免密码登录

ssh 无密码登录要使用公钥与私钥。linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例。

有机器hadoop1(192.168.1.191),hadoop2(192.168.1.192)。现想A通过ssh免密码登录到B。

我是这样做的,现在机器A上做免密码登录,即在Hadoop1上能够免密码登录自己(ssh Hadoop1)

1.在hadoop1下生成公钥/私钥对,使用如下

[root@hadoop1 ~]$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa      //-t  加密类型 -f 密钥文件存放路径


-P表示密码,-P '' 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车。
它在/root下生成.ssh目录,.ssh下有id_dsa和id_dsa.pub。

2.把hadoop1机下的/root/.ssh/id_dsa.pub复制/root/.ssh/authorized_keys文件里,我用scp复制。

[root@hadoop1 ~]$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 
id_dsa.pub                                    100%  223     0.2KB/s   00:00


3.然后免密码登录hadoop1

[root@hadoop1 ~]# ssh hadoop1

Last login: Fri Nov 13 22:53:23 2015 from hadoop1


4.如果要免密码登录hadoop2,可以将hadoop1下/root/.ssh拷贝到hadoop2的/root下面

[root@hadoop1 ~]#scp -r /root/.ssh  root@hadoop2:~/

 

5.然后就可以免密码登录到hadoop2了,第一次可能还是要输入密码

[root@hadoop1 ~]# ssh hadoop2

Last login: Fri Nov 13 22:53:23 2015 from hadoop2


小结:登录的机子可有私钥,被登录的机子要有登录机子的公钥。这个公钥/私钥对一般在私钥宿主机产生。上面是用rsa算法的公钥/私钥对,当然也可以用dsa(对应的文件是id_dsa,id_dsa.pub)

想让A,B机无密码互登录,那B机以上面同样的方式配置即可。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值