一 需求背景

  • 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. 【POJ2631】Roads in the North 树的直径

    题目大意:给定一棵 N 个节点的边权无根树,求树的直径. 代码如下 #include <cstdio> #include <algorithm> using namespace ...

  2. 20181111 Quartz(慕课网)

    Quartz体系结构 三个核心概念 调度器 任务 触发器 重要组成 Job JobBuilder JobDetail JobStore Trigger TriggerBuilder ThreadPoo ...

  3. Oracle DBMS_RANDOM

    DBMS_RANDOM.VALUE -- [0,1)的38位精度小数 SELECT DBMS_RANDOM.VALUE FROM DUAL; -- [10,20)的38位精度小数 SELECT DBM ...

  4. Tomcat权威指南-读书摘要系列6

    6. Tomcat 安全防护 使用SecurityManager 在Tomcat中,决定安全策略的配置文件是$CATALINA_HOME/conf/catalina.policy,在用-securit ...

  5. Linux 磁盘自动挂载

    磁盘代号或者装置的Label 挂载点 档案系统格式 档案系统参数 是否用dump备份 是否用fsck检查扇区         0 0         1 1         2 2 下面来写一个代表的 ...

  6. hdu 5385 The path

    http://acm.hdu.edu.cn/showproblem.php?pid=5385 题意: 给定一张n个点m条有向边的图,构造每条边的边权(边权为正整数),令d(x)表示1到x的最短路,使得 ...

  7. Nginx配置项优化(转载)

    (1)nginx运行工作进程个数,一般设置cpu的核心或者核心数x2 如果不了解cpu的核数,可以top命令之后按1看出来,也可以查看/proc/cpuinfo文件 grep ^processor / ...

  8. Does Deep Learning Come from the Devil?

    Does Deep Learning Come from the Devil? Deep learning has revolutionized computer vision and natural ...

  9. python学习笔记5--json处理

    import json #json串就是字符串. d = { 'car':{'color':'red','price':100,'count':50}, 'bus':{'color':'red','p ...

  10. js 获取格林尼治时间戳

    昨天在一论坛里看到有朋友问 js 如何获取格林尼治时间戳.不少朋友第一反应是 toGMTString ...确实可以得到格林尼治时间,但不是时间戳.虽然我也没有啥好的方法一步到位的获取,不过至少是获取 ...