您的位置:首页 > 运维架构 > Linux

CentOS 6.0下SSH免密码登录配置

2014-10-24 11:32 555 查看
CentOS下装Hadoop的时候,到了配置SSH免密码登录配置这一步,怎么也不行。网上搜罗了不少办法,都不能解决。我开始用普通用户登录,多次配置不能成功。后来换做root身份,一下就行了!以前在Ubuntu下配置的时候普通用户也能成功的,为什么换成Centos后就不行了呢?

后来一个朋友提醒了我,应该是权限问题。Centos6.0启用了SElinux,在网络服务方面权限要求比较严格,我尝试着把SElinux关闭,重新配置,问题得到解决。下面是配置方法。

首先切换到root身份下,关闭SElinux:

[root@bogon ~]# vi /etc/selinux/config



设置SELINUX=disabled

然后重启。

本机免密码登录ssh

普通用户登录,输入命令:

ssh-keygen -t dsa

一直回车,然后:

cd ~/.ssh

cat id_dsa.pub >> authorized_keys

测试:ssh localhost

###



下面,多台互访

在做集群的时候是需要SSH互信的,另外也利于在另一节点操作方便

1.在Node1中生成公钥和私钥对

[root@<span style="font-family:'微软雅黑', sans-serif;">me</span>~]# ssh-keygen -t dsa
Generatingpublic/private rsa key pair.
Enterfile in which to save the key (/root/.ssh/id_dsa): 回车
Enterpassphrase (empty for no passphrase): 回车
Entersame passphrase again: 回车
Youridentification has been saved in /root/.ssh/id_dsa.
Yourpublic key has been saved in /root/.ssh/id_dsa.pub.

这期间一直按回车即可,这样公钥/私钥对就创建完毕

3.将公钥传送到Node2上,这样在Node1上就可以免密码登录Node2了

现在我们已经可以在Node1上免密码登录Node2了

如果出现

[root@Node2 .ssh]# scpid_rsa.pub Node1:.ssh/authorized_keys
-bash: scp: command not found
则是说明未安装openssh-clients

执行

yum install openssh-clients
注意:
scp
命令会将authorized_keys文件原来的密钥
覆盖掉
,要多台机器免密码互访,则再任建一文件
(vim 文件名,然后:wq退出),scp到新建的文件,然后用cat命令把新建的文件追加到authorized_keys文件 即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: