环境搭建-CentOS服务器之间设置免密码登录
在做大数据项目分布式开发时会用到Hadoop组件,Hadoop集群由Namenode节点和Datanode节点组成,在运行启动集群操作时,需要从Namenode节点登录到Datanode节点,执行相关启动脚本,因此需要配置免密码登录。
1.使用root账户修改shhd_config配置文件
执行命令【vi /etc/ssh/sshd_config】
去掉RSAAuthention yes前面的#
去掉PubkeyAuthentication yes前面的#
然后运行命令【service sshd restart】生效配置
2.使用rsa非对称加密生成**
进入用户目录,运行命令【ssh-****** -t rsa】生成**
进入【.ssh】目录,会发现生成了如下几个文件:
authorized_keys:存放远程免密登录的公钥,主要通过这个文件记录多台机器的公钥
id_rsa:私钥文件
id_rsa.pub:公钥文件
3.将公钥添加到需要远程登录机器的authorized_keys文件中
在添加之前先做一个测试,现在通过【ssh localhost】命令试试本机有没有免密码登录
出现需要输入密码界面,证明还没有免密,需要将公钥添加到authorized_keys中,运行文件追加命令【cat id_rsa.pub >> authorized_keys】。
再通过【ssh localhost】命令试试本机有没有免密码登录:
测试通过,现在就可以将公钥添加到需要远程登录机器的authorized_keys文件中,然后就实现了Namenode节点到Datanode节点的免密码登录。