大家都知道,密码是为了信息的安全,才设置的。但是有的时候,我们需要在系统之间来回切换,那么密码就显得很繁琐了,特别是针对集群系统。那么有没有针对指定用户在系统间的无密码登陆呢,答案当然是肯定的,下面我们就一起实现这一创举吧:
 
环境:
2台centos Linux 操作系统为:node1(192.168.0.1)和node2(192.168.0.2)
目标:
实现node1和node2互为无密码登陆
 
备注:无密码登陆有rsh和ssh之分,其实效果是一样的,只是ssh更安全一点,因为ssh传输的数据是经过加密处理的.
 
一:rsh无密码设置
步骤:
1、编辑/etc/hosts,/etc/hosts.equiv,~/.rhosts文件,实现主机名与IP之间的解析
     node1#vim  /etc/hosts
                  127.0.0.1     localhost
                  192.168.0.1   node1
                  192.168.0.2   node2
    node1#vim  /etc/hosts.equiv
                  localhost
                  node1
                  node2
    node1#vim  ~/.rhosts
                  localhost
                  node1
                  node2
2、启动服务
     node1#setup
      选择“系统服务”------>空格键选中rexec、rlogin、rsh这三个服务,确定后退出
3、将上面选中的三个服务添加到/etc/securetty这个配置文件中
     node1#vim /etc/securetty
            :
            :
       rexec
       rlogin
       rsh
4、在node2上也按照上面的步骤做,有的文件一样的话,可以复制嘛!但是要密码
5、验证:
      node1#rsh node2
      成功的话就会直接进入node2中,不需要密码会变成如下:
      node2#
      同时从node2也可以直接rsh到node1
二、SSH让root在node1和node2之间无密码登陆设置步骤(这个设置参考了网上的资料,并在实践中得到检验)
1、生成密钥
      node1#ssh-keygen  -t  rsa
      一路回车
2、将公钥~/.ssh/id_rsh.pub追加到目标节点中~/.ssh/authorized_keys中
     node1#cat  ~/.ssh/id_rsa.pub  | ssh root@node2   "cat  -  >>  ~/.ssh/authorized_keys "
3、在node1上验证
      node1#ssh  root@node2
     成功的话会直接登录到node2上
4、在node2上执行同样的操作即可让node2 ssh 到node1,否则node2到node1还是需要密码的
 
 
备注:上面追加文件中需要输入root密码一次,日后就不需要了。
至于rsh以及ssh的原理,同志们自己到百度上查吧》》》
 
要吃饭了,哈哈