centos6.5配置SSH免密码登录


创建新用户:useradd hadoop
设置密码:passwd hadoop输入自己想要的密码即可,之后su hadoop切换用户
修改主机名:vim /etc/sysconfig/network,加入hostname master,注销系统之后即可看到修改成功
修改hosts文件:vim /etc/hosts 192.168.56.101 master 192.168.56.102 slave1
ssh免登录,查看ssh:
[hadoop@master ~]$ rpm -qa|grep ssh
openssh-server-5.3p1-94.el6.x86_64
libssh2-1.4.2-1.el6.x86_64
openssh-clients-5.3p1-94.el6.x86_64
openssh-5.3p1-94.el6.x86_64
openssh-askpass-5.3p1-94.el6.x86_64
发现我已经都安装了,如果有没安装的,那么使用yum install ssh(缺少的即可)
修改/etc/ssh/sshd_config
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys
启用这三行,然后重启service sshd restart
现在开始配置无密码登录
[hadoop@master ~]$ cd /home/hadoop/
[hadoop@master ~]$ ssh-keygen -t rsa 一路回车 [hadoop@master ~]$ cd .ssh/
[hadoop@master .ssh]$ cp id_rsa.pub authorized_keys
[hadoop@master .ssh]$ chmod 600 authorized_keys
把authorized_keys复制到其他要无密的机器上 [hadoop@master ~]$ scp authorized_keys root@192.168.56.102:/home/hadoop/.ssh 要以root权限过去,否则会出错
设置.ssh目录权限
chmod 700 -R .ssh 如果你想要每台机子都无密码登录,那么把每台机子产生的密钥添加到文件中(这是在受控端机子上面执行的) cat id_rsa.pub >> .ssh/authorized_keys
现在可以从master免登录到slave1,那么如果想从slave1免登录到master,也需要在slave1上执行
scp authorized_keys root@192.168.56.101:/home/hadoop/.ssh/ 将文件拷贝到master之后,在master上面执行: cat id_rsa.pub >> .ssh/authorized_keys
这样既可以从master到slave1,也可以从slave1到master,均是免密码登录
比如我配置成功之后的界面如下
[hadoop@master ~]$ clear
[hadoop@master ~]$ ssh slave1
Last login: Mon Nov 3 13:33:02 2014 from 192.168.56.101
[hadoop@slave1 ~]$ ssh master
Last login: Mon Nov 3 13:33:06 2014 from 192.168.56.102
[hadoop@master ~]$
如果遇到登录失败的情况:我用的是centos版本是6.5,centos6.5对网络管理相当严格,需要在原来的基础上关闭selinux, 到/etc/selinux/config下,把SELINUX=enforcing修改为SELINUX=disabled,重启机器,ok。

相关内容