ssh 实现多台主机免密登陆并附带多种错误解决办法

来源:互联网 发布:windows文件夹加密码 编辑:程序博客网 时间:2024/06/14 20:19

本文章为亲自测试。吐血两天安装经历。值得一看。

一 在每台主机上修改host文件

1. vi /etc/hosts

  (ip_master)  master

  (ip_slave1)    slave1

  (ip_slave2)    slave2

注: ()中的ip地址可以通过 ifconfig -a 得到IP地址。不可随便设置。可以通过 ping slave1, ping master等测试是否设置成功。

2. 安装ssh

在每一台主机上执行以下命令:

sudo apt-get install openssh-server

ssh-keygen -t rsa   #一路回车


在slave主机上执行以下命令:

scp ~/.ssh/id_rsa.pub spark@master:~/.ssh/id_rsa.pub.slave1 (注: 这是个示例,注意修改spark,master为自己的用户名和主机名,同时也需要修改slave1。可按数字递增)


在master主机上执行以下命令:

cat ~/.ssh/id_rsa.pub* >> ~/.ssh/authorized_keys

scp ~/.ssh/authorized_keys spark@slave1:~/.ssh/(注:这个命令需要执行多个,作用是主机分发authorized_keys文件到各个从机上,有多少个从机就需要执行多少个)

3 验证

在每台机子上验证是否成功

ssh master
ssh slave1
ssh slave2

(不多说,这是个示例)

4 问题解决

安装中需要注意的事项:

1. cd /etc/ssh 进入目录。修改sshd_config文件。

PubkeyAuthentication no -> yes 

StrictModes yes -> no 

PermitRootLogin  no -> yes

2.一定需要注意的:

 直接 ssh master 的前提是两台主机的用户名一致。否则需要使用如下格式: ssh usrname@master

3.一定需要修改文件的权限

chmod 700 /home/username/.ssh  
chmod 600 /home/username/.ssh/* 

4. 在ssh master 时,在输入密码之前出现Agent admitted failure to sign using the key 问题解决:

ssh-add   ~/.ssh/id_rsa 













原创粉丝点击