linux各机器之间配置无密码访问

原创
2015/03/10 15:53
阅读数 570

1.安装好openSSH和rsync

我们需要两个服务:ssh和rsync已经安装了。可以通过下面命令查看结果显示如下:

sudo rpm –qa | grep openssh
sudo rpm –qa | grep rsync

查看是否有如下包,框里面的每个包都要。

假设没有安装ssh和rsync,可以通过下面命令进行安装,每台机器都需要安装。

sudo yum install openssh-clients #安装SSH协议
sudo yum install rsync #rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件
sudo service sshd restart #启动服务

2.确认机器上的sshd的配置文件(需要root权限),sudo vi /etc/ssh/sshd_config找到以下三行内容,去掉注释符“#”,然后重启服务,sudo service sshd restart

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

3.在所有机器上生成证书公私钥,分别执行如下命令:

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

4.在配置好后,修改~/.ssh/authorized_keys的权限,如下:

chmod 600 ~/.ssh/authorized_keys

5.测试本机的无密码访问,ssh localhost,如果不需要密码,则本机的配置成功。

一、所有机器之间的无密码访问。

1.把所有其他机器的公钥内容~/.ssh/id_dsa.pub添加到本机的~/.ssh/authorized_keys文件里。使用cat命令查看复制,id_dsa.pub文件的多行是一整行,千万别弄成多行,否则失败。

2.将本机的~/.ssh/authorized_keys文件复制到别的机器上,scp ~/.ssh/authorized_keys  hadoop@slave:/home/hadoop/.ssh,输入hadoop用户的密码。

3.在master使用命令,ssh slave,测试无密码访问是否成功是否成功。

(旧版本的,可忽略!!)二、master机器对slave机器的无密码访问。

1.把master上的公钥复制到slave机器上,scp ~/.ssh/id_dsa.pub hadoop@slave:/home/hadoop/,输入hadoop用户的密码,然后

在到slave机器上的根目录新建.ssh目录,mkdir .ssh,然后执行命令,

cat ~/id_dsa.pub >> ~/.ssh/authorized_keys

打开authorized_keys文件,查看是否将id_dsa.pub的内容追加到了authorized_keys。

2.修改目录权限,如下:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

3.在master使用命令,ssh slave,测试无密码访问是否成功是否成功。)



参考文章:Linux(Centos)配置OpenSSH无密码登陆 


展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部