1.安装ssh.  sudo apt-get install ssh. 安装完成后会在~目录(当前用户主目录,即这里的/home/xuhui)下产生一个隐藏文件夹.ssh(ls -a 可以查看隐藏文件)。如果没有这个文件,自己新建即可(mkdir .ssh).2.进入.ssh目录下面,在每台机器上执行:ssh-keygen -t  rsa  之后一路回车,产生密钥;3。完成第二步后会产生两个文件:id-rsa     #私钥
id-rsa.pub   #公钥
4.在第一台机器的目录.ssh下执行命令,cat  id-rsa.pub >> authorized_keys;此后.ssh下面会出现authorized_keys文件。5.然后将第一台机器的.ssh目录下面的authorized_keys文件拷贝到第二台计算机的.ssh目录下,如:scp authorized_keys xuhui@cloud002:~/.ssh/6.再转到第二台机器的.ssh目录下,会发现刚刚传输过来的文件-authorized_keys,然后执行命令,将第二台计算机的公钥也加进来,如:cat id-rsa.pub >> authorized_keys.7.将第二台计算机新生成的authorized_keys传输第三台计算机,将第三台计算机的公钥-id-rsa.pub添加到从第二台计算机传过来的authorized_keys里面。8.依次类推,直至最后一台计算机。9.在最后一台计算机执行完添加后,生成的authorized_keys文件就包含所有计算机的公钥,如果以后还有机器加进来,可以直接添加到文件-authorized_keys。最后,将最后生成的authorized_keys复制到每一台计算机的.ssh目录下,覆盖掉之前的authorized_keys。10.完沉第九步后,就可以在任意一台计算机上,免密码ssh登录到其他计算了。

ssh 免密码设置失败原因总结

先复习一下设置ssh免密码操作的步骤:

进入主目录

cd

生成公钥

ssh-keygen -t rsa -P '' (注:最后是二个单引号,表示不设置密码)

然后分发公钥到目标机器

ssh-copy-id -i ~/.ssh/id_rsa.pub 用户名@对方机器IP (注意不要忘记了参数-i)

注:ssh-copy-id -i 是最简单的办法,如果不用这个,就得分二个步骤:

a) 先scp 将本机的id_rsa.pub复制到对方机器的.ssh目录下

b) 在对方机器上执行 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 导入公钥

上面的操作完成后,就可以用 ssh 对方机器IP 来测试了,顺利的话,应该不会提示输入密码。

如果失败,有可能是以下原因:

1、权限问题

.ssh目录,以及/home/当前用户 需要700权限,参考以下操作调整

sudo chmod 700 ~/.ssh

sudo chmod 700 /home/当前用户

.ssh目录下的authorized_keys文件需要600或644权限,参考以下操作调整

sudo chmod 600 ~/.ssh/authorized_keys

2、StrictModes问题

编辑

sudo vi /etc/ssh/sshd_config

找到

#StrictModes yes

改成

StrictModes no

  • 生成密钥并上传至远程主机后,任然不可用 
    打开服务器的 /etc/ssh/sshd_config 这个文件,取消注释。
#AuthorizedKeysFile .ssh/authorized_keys
  • 1
  • 2
  • 1
  • 2
  • 重启服务器的ssh服务。
#RHEL/CentOS系统
$ service sshd restart
#ubuntu系统
$ service ssh restart
#debian系统
$ /etc/init.d/ssh restart

如果还不行,可以用ssh -vvv 目标机器ip 查看详情,根据输出内容具体问题具体分析了

Linux多台机器配置ssh免登录相关推荐

  1. Linux多台机器配置互相信任关系

    环境 三台机器: hadoop001, IP:192.168.92.200 hadoop002 ,IP:192.168.92.201 hadoop003, IP:192.168.92.202 配置 三 ...

  2. centos配置ssh免密码登录

    master.slave1两台机器实现ssh免密码登录,user:hadoop,passwd:123456 1.设置master: vi /etc/sysconfig/network hostname ...

  3. 20210829-基于CentOS7/Linux配置ssh免密登录

    #关键字:Linux,CentOS7,ssh 登录,免密登录 目录 一.目标: 二.环境说明: 三.配置步骤: 一.目标: 1. 从一台机器使用 'shh 主机名'命令登录另一台机器时不用输入密码. ...

  4. 生产环境实战spark (5)分布式集群 5台设备之间hosts文件配置 ssh免密码登录

    生产环境实战spark (5)分布式集群 5台设备之间 ssh免密码登录 之前已经在master节点单台设备上配置ssh免密码的登录工作,现在要做的事情是在5台设备之间实现ssh免密码操作.我在整个大 ...

  5. 本地mac配置ssh免密登录远程linux服务器

    本地mac配置ssh免密登录远程linux服务器 每次输入密码登录服务器也就罢了,结果scp时每次都要输入密码,分分秒秒阿西吧.哈哈哈,回归正题,配置免密登录后,畅通无阻啊,哈哈哈 检查自己~/.ss ...

  6. linux 配置免密码登录,Linux - 配置SSH免密登录 - “ssh-keygen”的基本用法

    1 什么是SSH 引用百度百科的说明: SSH 为 Secure Shell的缩写,由 IETF 的网络小组(Network Working Group)所制定:它是建立在应用层基础上的安全协议. S ...

  7. 关于Linux中批量配置SSH免密的一些笔记

    写在前面 今天和小伙伴们分享批量配置SSH免密的一些笔记 传统的运维场景可以通过Ansible 等运维工具处理 在安装使用一些运维工具,比如Ansible,或则一些pass组件,需要配置ssh免密,s ...

  8. 关于SSH服务|两台机器之间建立免密通道

    ssh:用在linux或者unix的远程控制服务协议 sshd占用22端口 在linux系统下面/etc/ssh文件中 sshd_config文件是服务器端的配置 ssh_config是客户端的配置 ...

  9. 如何配置ssh免密登录

    ssh免密登录的创建和验证流程 在linux如何进行免密登录? 在生成环境中,我们可能会面临着只有一台机器有外网IP,而其它机器都是内网IP,如果我们需要频繁的操作内网的其它服务器,显然会非常不方便. ...

  10. centos配置ssh免密码登录后仍要输入密码的解决方法

    From: https://blog.csdn.net/zwbill/article/details/80448939 前言 在搭建Linux集群服务的时候,主服务器需要启动从服务器的服务,如果通过手 ...

最新文章

  1. Magnetism and Earnshaw‘s Theorem
  2. 造假露馅!曾创下融资纪录的科技公司,被曝用印度码农冒充AI,挣了1个多亿...
  3. Pat乙级 1058 选择题
  4. nextpolish安装_「三代组装」使用Pilon对基因组进行polish
  5. php如何替换 前的空格,php空格如何替换
  6. 剑指Offer(java版):第一个只出现一次的字符
  7. 飞畅科技-工业以太网交换机组网方式介绍
  8. 初学者Web介绍一些前端开发中的基本概念用到的技术
  9. idea apollo启动VM参数设置
  10. Acunetix Web Vulnarability Scanner V10.5 详细中文手册
  11. c语言如何获取错误码,错误码列表
  12. 计算机机器人比赛有哪些,RoboCup机器人世界杯赛有哪些项目?
  13. Chrome 68 运行后整个浏览器窗口变黄/粉色问题修正方法
  14. 什么是WiFi无缝漫游(即无线AP自动切换)?
  15. python英语单词 扇贝英语安卓下载_扇贝单词英语版app下载-扇贝单词英语版安卓版(附修改词汇书教程) - 超好玩...
  16. Flutter入门环境搭建
  17. Asp.net页面的生命周期之通俗理解
  18. HDU 1243 反恐训练营(最长公共序列)
  19. 以太网的分层架构_现代通信网络的分层结构及各层的作用
  20. 常用HTML代码,字体颜色等

热门文章

  1. CodeForces1005D - Polycarp and Div 3
  2. React+Webpack+Antd+Babel 兼容低版本浏览器(上)
  3. 类模版的static成员
  4. Android MVP+Retrofit(封装)+RxJava实例
  5. linux中查找文件并合并文件
  6. C# 中的 ConfigurationManager类引用方法应用程序配置文件App.config的写法
  7. Linux下的通用打开命令
  8. FlashDevelop 3.0.0 Rc2 版本下载
  9. InDesign入门教程,如何导入文本?
  10. 4个macOS上隐藏的小技巧