大家都知道,密码是为了信息的安全,才设置的。但是有的时候,我们需要在系统之间来回切换,那么密码就显得很繁琐了,特别是针对集群系统。那么有没有针对指定用户在系统间的无密码登陆呢,答案当然是肯定的,下面我们就一起实现这一创举吧:
环境:
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的原理,同志们自己到百度上查吧》》》
要吃饭了,哈哈
转载于:https://blog.51cto.com/qiuzhenwushi/223568