免责声明:
    本文转自网络文章,转载此文章仅为个人收藏,分享知识,如有侵权,请联系博主进行删除。
    原文作者:http://cn.soulmachine.me/
    原文地址:http://cn.soulmachine.me//blog/20120102/

根据公钥加密的思想,如果机器A想无密码登录其他N台机器,只需要在自己机器上生成一对公钥和密钥,然后把密钥给这N台机器,这样,这N台机器,有了A的公钥,就可以解密A的数据包,跟A正常通信了。

通常在一个集群中,我们会选择一台机器作为跳板机,在这台机器上登录其他机器,因此,无名需要在跳板机上生成一对公钥和密钥。一般的,我们也会把跳板板机作为整个集群的master,例如Hadoop的NameNode,因此最好选一台内存比较大的机器作为跳板机。

下面详细讲解如何配置从跳板机SSH无密码登录到所有机器(包括自己)。

根据公钥加密的思想,如果机器A想无密码登录其他N台机器,只需要在自己机器上生成一对公钥和密钥,然后把密钥给这N台机器,这样,这N台机器,有了A的公钥,就可以解密A的数据包,跟A正常通信了。

通常在一个集群中,我们会选择一台机器作为跳板机,在这台机器上登录其他机器,因此,无名需要在跳板机上生成一对公钥和密钥。一般的,我们也会把跳板板机作为整个集群的master,例如Hadoop的NameNode,因此最好选一台内存比较大的机器作为跳板机。

下面详细讲解如何配置从跳板机SSH无密码登录到所有机器(包括自己)。

前提: 修改hosts文件

假设有三台机器,192.168.1.131, 192.168.1.132, 192.168.1.133,hostname分别是master, slave01, slave02

1.在master上生成一对公钥和密钥

dev@master:~$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

2. 将公钥拷贝到自己

dev@master:~$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

3. 将公钥拷贝到其他机器

dev@master:~$ scp ~/.ssh/id_dsa.pub dev@slave01:~
dev@master:~$ scp ~/.ssh/id_dsa.pub dev@slave02:~
#追加到authorized_keys
dev@master:~$ ssh slave01
dev@slave01:~$ mkdir .ssh
dev@slave01:~$ cat id_dsa.pub >> .ssh/authorized_keys
dev@slave01:~$ exit
dev@master:~$ ssh slave02
dev@slave02:~$ mkdir .ssh
dev@slave02:~$ cat id_dsa.pub >> .ssh/authorized_keys
dev@slave02:~$ exit

4. 设置.ssh目录和authorized_keys文件的权限

在被登录的每台机器上,执行如下命令:

chmod 755 .ssh
chmod 600 ~/.ssh/authorized_keys

5. 测试一下

#在 master执行
dev@master:~$ ssh slave01

第一次还是需要密码的,exit退出再试一次,就不需要密码了。

【转发】SSH无密码登录的配置的更多相关文章

  1. CentOS 下SSH无密码登录的配置

    CentOS 下SSH无密码登录的配置 最近学习Hadoop.它要求各节点之间通过SSH无密码登录,配置SSH的时候费了一番功夫,记录下来,以备忘. 配置SSH无密码登录需要3步: 1.生成公钥和私钥 ...

  2. CentOS下SSH无密码登录的配置

    1.确认本机sshd的配置文件(需要root权限) $ gedit /etc/ssh/sshd_config 找到以下内容,并去掉注释符"#" RSAAuthentication ...

  3. ssh-key生成密钥及SSH无密码登录的配置

    文章作者:foochane  原文链接:https://foochane.cn/article/2019061601.html 1 ssh-keygen命令 ssh-keygen命令说明: -t :指 ...

  4. CentOS配置ssh无密码登录

      CentOS配置ssh无密码登录的注意点   前提配置:使用root登录修改配置文件:/etc/ssh/sshd_config,将其中三行的注释去掉,如下: 然后重启ssh服务:service s ...

  5. Ubuntu 安装 SSH server 并配置 SSH 无密码登录

    https://hinine.com/install-and-configure-ssh-server-on-ubuntu/ Ubuntu 安装 SSH server 并配置 SSH 无密码登录 发表 ...

  6. 集群之间配置 SSH无密码登录

    集群之间配置 SSH无密码登录 配置 ssh (1)基本语法 ssh 另一台电脑的 ip 地址 (2)ssh 连接时出现 Host key verification failed 的解决方法 # ss ...

  7. 配置SSH无密码登录【原著】

    环境:两台Centos虚拟机,配置了静态的ip.(详见虚拟机如何配置静态的IP地址的操作步骤) 192.168.75.21192.168.75.22 第一步:为每台服务器配置静态IP地址参见: 虚拟机 ...

  8. 普通用户ssh无密码登录设置

    这段时间在做Hadoop的环境配置,用root用户只需要按照一定的步骤进行操作就可以直接实现无密码登录,但如果使用新建用户,怎么尝试都不行. 本帖大部分都是其他人帖子的内容.如果按照下面的步骤还是不能 ...

  9. ssh 无密码登录

    ssh 无密码登录要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例. 有机器A(192.168.1.155),B(192.168.1.181).现想 ...

随机推荐

  1. Jsp万能密码漏洞修复例子

    更多详细内容请查看:http://www.111cn.net/jsp/Java/58610.htm 如果网站出现这种“万能密码”漏洞该怎么办呢 'or'='or' 漏洞修复 方法有很多在这里介绍两种, ...

  2. Sql日期时间格式转换;取年 月 日,函数:DateName()、DATEPART()

    一.sql server2000中使用convert来取得datetime数据类型样式(全) 日期数据格式的处理,两个示例: CONVERT(varchar(16), 时间一, 20) 结果:2007 ...

  3. window.open和window.showdialog区别

    open打开的窗口可以点击切换到其背后的父窗口,dialog的窗口无法点击切换到其背后的父窗口, 假如用window.opener或者parent等对象时,建议用open方法,不要用dialog,否则 ...

  4. Angular2中的metadata(元数据)

    @Attrubute() 从host element 中获得普通(不是@Input)属性对应的值 适用于组件嵌套或指令, 从父组件向子组件传递数据 app.component.ts import {C ...

  5. JS学习笔记 -- 定时器,提示框的应用

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. java随笔 乱腾腾的 一些东西

    调用requonse.getWriter()方法时可实现文本字符串数据输出,调用response.getOutputStream()方法可现实字节流数据的输出.两种输出方式threadlocal模式和 ...

  7. 两对整数明明完全一样,为何一个输出true,一个输出false?&&神奇代码(StrangeIntegerBehavior.java)输出诡异的结果,原因何在

    下面有一段代码: public class Main {     public static void main(String[] args) {                   Integer ...

  8. Ubuntu14.04 开启MySQL的remote access

    一旦开启MySQL的remote access, 即可实现在windows系统下连接ubuntu下的mysql 步骤如下: sudo vim /etc/mysql/my.cnf bind-addres ...

  9. 【原】ComboBoxety用户输入自动匹配

    //在界面构造函数里加入下面两行代码 this.cbbDepartureAirport.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode ...

  10. windows下apache配置https

    1.下载带有openSSL的apache安装包,我下载的为apache_2.2.11-win32-x86-openssl-0.9.8i.msi,安装后确认一下bin路径下的openssl.exe,ss ...