ssh无密码登陆的一个问题:DN到ND不需要密码登录,ND到DN需要密码登录


已经做的工作(a)(b)(c)
(a)
机器三台的hostname是:master116、master117、master118
(b)
先设置hosts,把对应的IP和hostname加进去:
192.168.0.116 master116
192.168.0.117 slave117
192.168.0.118 slave118
(c)
关闭防火墙
#chkconfig iptables off
#service iptables stop 或 #setenforce 0


PS:
使用#ssh-keygen -t rsa生成密钥  
-t表示密钥(type自)类型,其它参数如:-P '' 就表示空密码,也可以不用-P参数,这样就要三个回车;-p 22表示端口22


现在情况:
按照一般ssh无密码登陆的配置方法,authorized_keys文件已经将三台机器的公钥都加进去了,如下:


但问题是:
master116访问slave117和slave118还是需要密码!!!而slave117和slave118访问master116则不用密码!!!(另外,slave117访问slave118需要密码,反过来也是)。

好吧,以前从来没有遇见过这个问题,估计和重新刷掉的机器的ip配置之类的有关,anyway,开始解决:
在master116使用#ssh -v slave117调试,没有发现什么异样...下面一句
debug1: Unspecified GSS failure.  Minor code may provide more information
有怀疑,但是查了一下,好像只是为了解决ssh登陆慢的问题。


再来个(1)、(2)、(3)进行解决:
(1)
master116的.ssh权限是:

drwx------.  2 root root 4096 Feb  8 05:55 .ssh


slave117和slave118的.ssh(该目录为手动创建,不像master116是在生成密钥的时候自动生成的)权限都是:
drwxr-xr-x.  2 root root 4096 Feb  8 05:56 .ssh

在此情况下,slave117和slave118都是可以无密码登陆到master116的,反过来则需要密码。

难道被访问主机的权限必须是700?
于是将slave117和slave118的.ssh权限改为700
#chmod 700 .ssh
重启机器,还是不行!!!!!


(2)
再使用查看配置:
#cat /etc/ssh/sshd_config | more
不同的地方是,master116的配置把
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys
三行的注释是去掉的,现在,把slave117和slave118的sshd_config(not ssh_config)中的注释也去掉...
还是不行!!!


(3)
借鉴链接:http://lszb811.com/2014/12/30/SSH-%E5%8E%9F%E7%90%86%E4%B8%8E%E8%BF%90%E7%94%A8/ 
使用
$ ssh-copy-id root@slave117
解决问题,从此从master116再登录到slave117,再也不需要输入密码了。


问题又来了
为什么将公钥写入authorized_keys,复制到其它机器进行无密码登陆不行呢?(以前是可以的,这种情况还是第一次遇见)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值