003.SSH密钥对登陆
一 需求背景
- 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密钥对登陆的更多相关文章
- Linux ssh 密钥对登陆设置
SSH通过密钥连接 ssh -i ~/miyao.pem root@server_ip 密钥权限要设置为仅root用户读写 chmod 600 ~/miyao.pem 密钥可添加到系统里,以后连接可除 ...
- 多个网站使用不同的SSH密钥登陆(zz)
多个网站使用不同的SSH密钥登陆 1.创建不同的SSH密钥, -t指定加密方法,RSA或DSA:-C注释:-f指定文件名 www.2cto.com ssh-keygen -t dsa -C ...
- 烂泥:学习ssh之ssh无密码登陆
本文由秀依林枫提供友情赞助,首发于烂泥行天下 最近一个月没有写过文章,主要是刚刚换的新工作.新公司服务器OS使用的是ubuntu server版,和以前熟悉的centos还是有很多不同的. 刚好这几天 ...
- 通过SSH服务登陆linux服务器(版本RHEL7)
通过SSH服务登陆linux服务器(版本RHEL7) SSH服务概述:是一种能够以安全的方式提供远程登陆的协议,也是目前远程管理linux系统的首选方式.在此之前,我们一般使用FTP或者telnet来 ...
- 一键SSH连接 = SSH密钥登陆 + WindowsTerminal
本文记录如何利用SSH密钥登录和WindowsTerminal/FluentTerminal实现一键SSH连接 目录 一.在本地生成SSH密钥对 二.在远程主机安装公钥 三.在远程主机打开密钥登陆功能 ...
- Centos7 密钥对登陆(适用于群晖DSM)
www.swack.cn - 原文链接:Centos7 密钥对登陆(适用于群晖DSM) 1.生成证书 此处证书使用swack用户生成 注:不要使用root生成证书,因为我们后面会禁用root登陆 [s ...
- 《Ansible权威指南》笔记(1)——安装,ssh密钥登陆,命令
2016-12-23 读这本<Ansible权威指南>学习ansible,根据本书内容和网上的各种文档,以及经过自己测试,写出以下笔记.另,这本书内容很好,但印刷错误比较多,作者说第二版会 ...
- Linux2 在Linux(CentOS)上配置SSH免登陆
前言: 本文主要是我在安装hadoop之前,需要先配置SSH免登陆.通过网上搜索,发现不少类似的资料,但多少都有些小问题,所以结合自己的实践,记录在此,作为参考.如果能帮助到其他人,自然是更 ...
- shell实现SSH自动登陆
h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-child, body>h ...
随机推荐
- c++并发编程之thread::join()和thread::detach()
thread::join(): 阻塞当前线程,直至 *this 所标识的线程完成其执行.*this 所标识的线程的完成同步于从 join() 的成功返回. 该方法简单暴力,主线程等待子进程期间什么都不 ...
- myeclipse和maven的clean和build
转: 详解myeclipse和maven的clean和build 2018年04月20日 11:33:34 群星坠 阅读数:3529 版权声明:本文为博主原创文章,未经博主允许不得转载. http ...
- PASCAL VOC数据集分析(转)
PASCAL VOC数据集分析 PASCAL VOC为图像识别和分类提供了一整套标准化的优秀的数据集,从2005年到2012年每年都会举行一场图像识别challenge. 本文主要分析PASCAL V ...
- John:How JavaScript Timers Work
John大神的bolg链接:http://ejohn.org/blog/how-javascript-timers-work/ JavaScript中的定时器经常表现的跟我们想象的不同,我们用三个函数 ...
- telegraf、influxDB、Grafana的安装与基本使用
目的理解influxDB的数据收集原理和方法为使用grafana分析数据及展示结作好准备介绍[收集数据] Telegraf 是一个用 Go 编写的代理程序,可收集系统和服务的统计数据,并写入到 Inf ...
- CentOS6.8下安装Nginx-1.9.15
1. 简介 Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器. Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件代理服务器,并在一个BS ...
- bzoj千题计划296:bzoj1053: [HAOI2007]反素数ant
http://www.lydsy.com/JudgeOnline/problem.php?id=1053 求n以内约数个数最多的数 #include<cstdio> using names ...
- ftp服务部署
注:Centos7环境,添加用户指定目录后默认其为此用户的共享目录. chroot_local_user=YES chroot_list_enable=YES # (default follows) ...
- 利用 ASP.NET 的内置功能抵御 Web 攻击 (1)
摘要: Dino 总结了最常见的 Web 攻击类型,并介绍了 Web 开发人员可以如何使用 ASP.NET 的内置功能来改进安全性. 一.ASP.NET 开发人员应当始终坚持的做法 如果您正在阅读本文 ...
- Flex 编写 loading 组件
Flex 界面初始化有时那个标准的进度条无法显示,界面长时间会处理空白的状态!我们来自定义一个进度条, 这个进度条加载在 Application 应用程序界面的 <s:Application 标 ...