一 需求背景

  • master:172.24.8.30
  • client-01:172.24.8.31
  • client-01:172.24.8.32
  • client-01:172.24.8.33

在master上ssh登录client任何一台都不需要输入密码。

二 步骤

2.1 创建密钥对

ssh-master创建密钥对:

  • 私钥文件:id_rsa
  • 公钥文件:id_rsa.pub

2.2 上传公钥

将ssh-master创建的公钥id_rsa.pub上传至所有client。

2.3 导入公钥

在ssh-client将公钥导入至[需要登陆的用户家目录]/.ssh/authorized_keys

2.4 密钥登陆

master管控机直接使用密钥登陆client机器。

提示:使用ssh公钥登陆需满足至少下面两个条件:

  • .ssh目录的权限必须是700
  • .ssh/authorized_keys文件权限必须是600

三 配置实例

3.1 创建密钥

 [root@master ~]# ssh-keygen -t rsa

 Generating public/private rsa key pair.

 Enter file in which to save the key (/root/.ssh/id_rsa):

 #输出密钥保存路径,通常为默认,即/root/.ssh/id_rsa

 Enter passphrase (empty for no passphrase):

 #生成此公钥的密码,用于反向打开密钥,通常为空

 Enter same passphrase again:

 #再次确认

 Your identification has been saved in /root/.ssh/id_rsa.

 Your public key has been saved in /root/.ssh/id_rsa.pub.

 The key fingerprint is:

 06:b9:c7:41:6c:32:98:40:29:35:7b:29:7a:41:6e:7b root@imxhy.cn

 …………

 [root@master ~]# cd /root/.ssh/

 [root@master .ssh]# ll

 total 12K

 -rw-------. 1 root root 1.7K Aug 27 05:42 id_rsa #私钥文件

 -rw-r--r--. 1 root root 395 Aug 27 05:42 id_rsa.pub #公钥文件

 -rw-r--r--. 1 root root 176 Aug 27 04:30 known_hosts #已知的主机公钥清单

上传及导入公钥————方法A:

A-3.2 上传公钥

 [root@master .ssh]# scp id_rsa.pub root@172.24.8.31:/root/

 [root@master .ssh]# scp id_rsa.pub root@172.24.8.32:/root/

 [root@master .ssh]# scp id_rsa.pub root@172.24.8.33:/root/

 id_rsa.pub

A-3.3 导入公钥

 [root@client01 ~]# mkdir /root/.ssh #默认此目录不存在,需要手动创建

 [root@client01 ~]# cat id_rsa.pub >> /root/.ssh/authorized_keys

 #通过读取方式[也可以cp或mv]导入密钥

 [root@client01 ~]# cd /root/.ssh/

 [root@client01 .ssh]# chmod 600 authorized_keys

 #将此文件的权限改为600,其他用户都没有任何权限

上传及导入公钥————方法B:

B-3.2 创建目录

 [root@client01 ~]# mkdir /root/.ssh

注意:三个client都需要创建。

B-3.3 复制并导入公钥至client

 [root@master ~]#

 scp -p /root/.ssh/id_rsa.pub root@172.24.8.31:/root/.ssh/authorized_keys

 scp -p /root/.ssh/id_rsa.pub root@172.24.8.32:/root/.ssh/authorized_keys

 scp -p /root/.ssh/id_rsa.pub root@172.24.8.33:/root/.ssh/authorized_keys

3.4 修改配置

 [root@client01 ~]# vi /etc/ssh/sshd_config

 RSAAuthentication yes #打开RSA认证

 PubkeyAuthentication yes #开启使用公钥认证

 AuthorizedKeysFile .ssh/authorized_keys #公钥保存位置

 PasswordAuthentication no #禁止使用密码验证登陆

注意:一般不需要操作,默认即可实现登录,若有其他报错则需要此操作。

3.5 登陆验证

 [root@master ~]# ssh 172.24.8.31

 Last login: Sat Jul 15 19:36:51 2017 from 172.24.8.1

003.SSH密钥对登陆的更多相关文章

  1. Linux ssh 密钥对登陆设置

    SSH通过密钥连接 ssh -i ~/miyao.pem root@server_ip 密钥权限要设置为仅root用户读写 chmod 600 ~/miyao.pem 密钥可添加到系统里,以后连接可除 ...

  2. 多个网站使用不同的SSH密钥登陆(zz)

    多个网站使用不同的SSH密钥登陆   1.创建不同的SSH密钥, -t指定加密方法,RSA或DSA:-C注释:-f指定文件名   www.2cto.com   ssh-keygen -t dsa -C ...

  3. 烂泥:学习ssh之ssh无密码登陆

    本文由秀依林枫提供友情赞助,首发于烂泥行天下 最近一个月没有写过文章,主要是刚刚换的新工作.新公司服务器OS使用的是ubuntu server版,和以前熟悉的centos还是有很多不同的. 刚好这几天 ...

  4. 通过SSH服务登陆linux服务器(版本RHEL7)

    通过SSH服务登陆linux服务器(版本RHEL7) SSH服务概述:是一种能够以安全的方式提供远程登陆的协议,也是目前远程管理linux系统的首选方式.在此之前,我们一般使用FTP或者telnet来 ...

  5. 一键SSH连接 = SSH密钥登陆 + WindowsTerminal

    本文记录如何利用SSH密钥登录和WindowsTerminal/FluentTerminal实现一键SSH连接 目录 一.在本地生成SSH密钥对 二.在远程主机安装公钥 三.在远程主机打开密钥登陆功能 ...

  6. Centos7 密钥对登陆(适用于群晖DSM)

    www.swack.cn - 原文链接:Centos7 密钥对登陆(适用于群晖DSM) 1.生成证书 此处证书使用swack用户生成 注:不要使用root生成证书,因为我们后面会禁用root登陆 [s ...

  7. 《Ansible权威指南》笔记(1)——安装,ssh密钥登陆,命令

    2016-12-23 读这本<Ansible权威指南>学习ansible,根据本书内容和网上的各种文档,以及经过自己测试,写出以下笔记.另,这本书内容很好,但印刷错误比较多,作者说第二版会 ...

  8. Linux2 在Linux(CentOS)上配置SSH免登陆

    前言:      本文主要是我在安装hadoop之前,需要先配置SSH免登陆.通过网上搜索,发现不少类似的资料,但多少都有些小问题,所以结合自己的实践,记录在此,作为参考.如果能帮助到其他人,自然是更 ...

  9. shell实现SSH自动登陆

    h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-child, body>h ...

随机推荐

  1. Easyui的DateBox日期格式化

    http://www.cnblogs.com/wintalen/archive/2011/06/10/2077171.html DateBox 日期显示默认的格式为“dd/mm/yyyy”,如果想自定 ...

  2. 如何获取codeforces的完整数据

    推荐: 如何获取codeforces的完整数据?(玄学方法) http://www.cnblogs.com/Saurus/p/6220513.html

  3. python的WSGI接口

    WSGI:Web Server Gateway Interface. WSGI是为python语言定义的web服务器和web应用程序或框架之间的一种简单而实用的接口.wsgi是一个web组件的接口规范 ...

  4. Eclipse Neon 汉化

    官网下载的Eclipse是英文版的,对于初学者来说为了减小学习的难度,将英文版汉化是有必要的. 第一步:依次点击Eclipse菜单栏上的“Help"-->”About",查看 ...

  5. element-ui合并行:span-method

    objectSpanMethod({ row, column, rowIndex, columnIndex }) { if (columnIndex === 0) { if (rowIndex % 2 ...

  6. SQL记录-PLSQL字符串

    PL/SQL字符串 PL/SQL字符串实际上是一个可选的尺寸规格字符序列.字符可以是数字,字母,空白,特殊字符或全部的组合. PL/SQL提供了三种类型的字符串: 固定长度字符串:在这样的字符串,程序 ...

  7. 了解Linux操作系统的引导过程

    原文地址:http://os.51cto.com/art/200706/49690.htm 1.简介 Linux启动过程指的是从加电到看到shell提示的这一段时间. Linux启动的过程可以大概分为 ...

  8. [整理]JS中的状态机

    /*StateMachine*/ var StateMachine = (function(){ function StateMachine(opts){ this.current = opts.in ...

  9. 【转】用CornerStone配置SVN,HTTP及svn简单使用说明

    已经安装了的小伙伴请直接看三步骤 一.下载地址 CornerStoneV2.6:http://pan.baidu.com/s/1qWEsEbM密码:www.macx.cn 二.安装破解方法 1.安装之 ...

  10. 基于ZedBoard的Webcam设计(一):USB摄像头(V4L2接口)的图片采集【转】

    转自:http://www.cnblogs.com/surpassal/archive/2012/12/19/zed_webcam_lab1.html 一直想把USB摄像头接到Zedboard上,搭建 ...