CentOS 6.0下SSH免密码登录配置

来源:互联网 发布:java class 查看工具 编辑:程序博客网 时间:2024/06/04 01:13

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

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

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

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

CentOS 6.0下SSH免密码登录配置

设置SELINUX=disabled

然后重启。


本机免密码登录ssh


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

ssh-keygen -t dsa

一直回车,然后:

cd ~/.ssh

cat id_dsa.pub >> authorized_keys

测试:ssh localhost

###

CentOS 6.0下SSH免密码登录配置



下面,多台互访



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

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

[root@<span style="font-family:'微软雅黑', sans-serif;">me</span>~]# ssh-keygen -t dsaGeneratingpublic/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]# scp id_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文件 即可



0 0
原创粉丝点击