集群部署专题之一:详解集群间SSH无密码登录配置步骤
一、SSH简介
SSH(Secure Shell)是一种网络安全协议,通过加密和认证机制实现安全访问和文件传输等业务。传统远程登录和文件传输方式有Telnet或FTP,这两种方式都使用明文传输数据,存在很多安全隐患。SSH采用加密传输数据、提升认证强度等手段,克服了Telnet和FTP应用中的安全性问题,实现了安全的远程登录和文件传输业务。
二、SSH登录两种常见的认证方式
SSH依赖端口(默认22端口)进行通信。SSH服务器在指定端口侦听连接请求,客户端向SSH服务器该指定端口发起连接请求后,双方建立一个TCP连接,后续通过该端口通信。
SSH客户端向SSH服务器发起认证请求,服务端对客户端进行认证,有以下两种常见的认证方式:
1、密码(password)认证
通过用户名和密码的方式进行认证,客户端将加密后的用户名和密码发送给服务器,服务器解密后与本地保存的用户名和密码进行对比,并向客户端返回认证成功或失败的消息。
密码认证流程:
- SSH客户端向SSH服务器发送登录请求。
- SSH服务器将服务器公钥发送给SSH客户端。
- SSH客户端输入密码,使用服务器公钥加密密码后发送给SSH服务器。
- SSH服务器收到密文,使用服务器私钥解密得到密码。验证密码是否正确,如果正确则认证通过。
密码认证方式比较简单,每次登录需要输入用户名和密码,但存在中间人攻击的风险,如果有人截获了SSH客户端的登录请求后,冒充SSH服务器将伪造的公钥发送给SSH客户端,就可能获取到用户的登录密码。
2、密钥(publickey)认证
客户端通过用户名,公钥以及公钥算法等信息来与服务器进行认证,密钥认证可以实现安全性更高的免密登录,是一种广泛使用且推荐的登录方式。
秘钥认证流程:
- 在进行SSH连接之前,需要首先生成客户端的公钥私钥对,并将客户端公钥存放到SSH服务器上。
- SSH客户端向SSH服务器发送登录请求。
- SSH服务器根据请求中的用户名等信息在本地搜索客户端的公钥,并用这个公钥加密一个随机数发送给客户端。
- SSH客户端使用自己的私钥对返回信息进行解密,并发送给SSH服务器。
- SSH服务器验证SSH客户端解密的信息是否正确,如果正确则认证通过。
三、无密码登录配置
- 服务器节点规划
10.206.6.24 #SSH客户端,work客户端账号
10.206.6.23 #SSH服务端
- 配置目标:
在客户端work账号下可以直接无密码使用root账号登录服务端。
1、客户端生成公钥和私钥
使用work账号登录(work为配置无密码登录的测试账号)客户端,输入命令:ssh-keygen -t rsa,在输入提示处,直接按确定即可。
[work@VM-6-24-rockylinux ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/work/.ssh/id_rsa):
Created directory '/home/work/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/work/.ssh/id_rsa
Your public key has been saved in /home/work/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:eTluXlSSrU4VxAgAbyuzKr1Tj8j9AWdyRp1kGvEz0kc work@VM-6-24-rockylinux
The key's randomart image is:
+---[RSA 3072]----+
| ..+o+.E+o |
| . O o.o.. |
| * B + + |
| o + = = |
| = S + + |
| .@ o = |
| o +.o. o o |
| . =.o .+ . |
| .oo .. . |
+----[SHA256]-----+
执行完成后,在当前用户的~/.ssh目录下生成id_rsa和id_rsa.pub文件,id_rsa为客户端私钥,id_rsa.pub为客户端公钥。
[work@VM-6-24-rockylinux ~]$ tree -a ~/.ssh
/home/work/.ssh
├── id_rsa
└── id_rsa.pub
0 directories, 2 files
.ssh为隐藏目录,可以使用ll -a命令查看。
2、上传客户端公钥到服务端
上传方式一:自动上传
ssh-copy-id root@10.206.6.23
然后输入服务端密码即可。
上传方式二:手动上传
注意:如果想要配置服务端root账号的无密码登录,就在服务端root账号的/root/.ssh/目录下执行以下操作,如果是要配置其他账号的无密码登录就在指定账号的~/.ssh/目录下执行以下操作。
1、创建服务端目录(在服务端执行)
mkdir -p ~/.ssh
2、上传客户端公钥(在客户端执行)
scp -r id_rsa.pub root@10.206.6.23:/root/.ssh/
3、创建authorized_keys文件(在服务端执行)
touch ~/.ssh/authorized_keys
4、文件权限设置(在服务端执行)
touch ~/.ssh/authorized_keys
chmod 710 ~/.ssh/authorized_keys
5、将公钥信息写入authorized_keys文件(在服务端执行)
cat id_rsa.pub >> authorized_keys
3、验证
在客户端work账号下执行,ssh root@10.206.6.23无需密码即可登录服务端。
四、开发、运维实用工具推荐
接下来向大家推荐一款对日常开发和运维,极具有实用价值的好帮手XL-LightHouse。
一键部署,一行代码接入,无需大数据相关研发运维经验就可以轻松实现海量数据实时统计,使用XL-LightHouse后:
- 再也不需要用Flink、Spark、ClickHouse或者基于Redis这种臃肿笨重的方案跑数了;
- 再也不需要疲于应付对个人价值提升没有多大益处的数据统计需求了,能够帮助您从琐碎反复的数据统计需求中抽身出来,从而专注于对个人提升、对企业发展更有价值的事情;
- 轻松帮您实现任意细粒度的监控指标,是您监控服务运行状况,排查各类业务数据波动、指标异常类问题的好帮手;
- 培养数据思维,辅助您将所从事的工作建立数据指标体系,量化工作产出,做专业严谨的职场人,创造更大的个人价值;
XL-LightHouse简介
- XL-LightHouse是针对互联网领域繁杂的流式数据统计需求而开发的一套集成了数据写入、数据运算、数据存储和数据可视化等一系列功能,支持超大数据量,支持超高并发的【通用型流式大数据统计平台】。
- XL-LightHouse目前已涵盖了常见的流式数据统计场景,包括count、sum、max、min、avg、distinct、topN/lastN等多种运算,支持多维度计算,支持分钟级、小时级、天级多个时间粒度的统计,支持自定义统计周期的配置。
- XL-LightHouse内置丰富的转化类函数、支持表达式解析,可以满足各种复杂的条件筛选和逻辑判断。
- XL-LightHouse是一套功能完备的流式大数据统计领域的数据治理解决方案,它提供了比较友好和完善的可视化查询功能,并对外提供API查询接口,此外还包括数据指标管理、权限管理、统计限流等多种功能。
- XL-LightHouse支持时序性数据的存储和查询。
GitHub搜索XL-LightHouse了解更多!
集群部署专题之一:详解集群间SSH无密码登录配置步骤的更多相关文章
- 集群之间配置 SSH无密码登录
集群之间配置 SSH无密码登录 配置 ssh (1)基本语法 ssh 另一台电脑的 ip 地址 (2)ssh 连接时出现 Host key verification failed 的解决方法 # ss ...
- 集群中配置多台计算机之间ssh无密码登录的一种简便方法
当我们在配置多台计算,使之可以相互使用无密码登录-ssh,之前都是一台一台的配置,现在一台A上添加B,然后在另一台B上再次添加A,这样使得 authorized_keys中的内容相同,但时并不是完全相 ...
- 【原创】Linux服务器集群通过SSH无密码登录
SSH 无密码授权访问slave集群机器 1. 安装SSH,所有集群机器,都要安装SSH环境介绍: Master : CNT06BIG01 192.168.3.61 SLAVE 1: CNT06BI ...
- 全网最详细的Ceph14.2.5集群部署及配置文件详解,快来看看吧! -- <2>
部署Ceph集群 Ceph版本选择 Ceph版本来源介绍 Ceph 社区最新版本是 14,而 Ceph 12 是市面用的最广的稳定版本. 第一个 Ceph 版本是 0.1 ,要回溯到 2008 年 1 ...
- 详解集群内Session高可用的实现原理
在这个互联网高度发达的时代,许多应用的用户动辄成百上千万,甚至上亿.为了支持海量用户的访问,应用服务器集群这种水平扩展的方式是最常用的.这种情形下,就会涉及到许多单机环境下完全不需要考虑的问题,这其中 ...
- Hadoop集群(第6期)JDK和SSH无密码配置
1.Linux配置java环境变量 1.1 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录,执行命令 ./jdk-6u14-linux-i586.bi ...
- 【Hadoop 分布式部署 四:配置Hadoop 2.x 中主节点(NN和RM)到从节点的SSH无密码登录】
******************* 一定要使这三台机器的用户名相同,安装目录相同 ************* SSH 无密钥登录的简单介绍(之前再搭 ...
- 数据库系统入门 | Oracle Linux上部署Oracle 11g服务,并实现SSH远程登录管理
文章目录 写在前面 一.实验内容 二.实验前期准备 1.软件目录 2.准备一些配置文件.脚本文件 三.实验方案(具体步骤) (一)在虚拟机上安装Oracle Linux (二)在Linux上安装Ora ...
- 004.etcd集群部署-动态发现
一 etcd发现简介 1.1 需求背景 在实际环境中,集群成员的ip可能不会提前知道.如使用dhcp自动获取的情况,在这些情况下,使用自动发现来引导etcdetcd集群,而不是指定静态配置,这个过程被 ...
- Hadoop系列之(二):Hadoop集群部署
1. Hadoop集群介绍 Hadoop集群部署,就是以Cluster mode方式进行部署. Hadoop的节点构成如下: HDFS daemon: NameNode, SecondaryName ...
随机推荐
- 基于SqlSugar的开发框架循序渐进介绍(30)-- 整合客户关系管理系统模块功能
以前在随笔<Winform开发框架之客户关系管理系统(CRM)的开发总结系列1-界面功能展示 >的几篇随笔中介绍过基于WInform开发框架开发的CRM系统,系统的功能主要也是围绕着客户相 ...
- GPT大模型下,如何实现网络自主防御
GPT大模型下,如何实现网络自主防御 本期解读专家 李智华 华为安全AI算法专家 近年来,随着GPT大模型的出现,安全领域的攻防对抗变得更加激烈.RSAC2023人工智能安全议题重点探讨了人工 ...
- THM红队基础
Red Team Fundamentals Learn the core components of a red team engagement, from threat intelligence t ...
- 使用默认pypi源出现连接超时
背景信息 安装 dataworks sdk 时报错,原因是连接默认的 pypi 仓库超时 pip install aliyun-python-sdk-dataworks-public==4.2.1 报 ...
- 体验了一把 MiniGPT-4,一言难尽
最近看到一个好玩的开源项目:MiniGPT-4. 看名字像 GPT-4 的小老弟,其实没啥关系. 简单说,它可以识别图像,基于图像你可以和它对话,它能生成图片描述.网站.诗歌. 先看看官方给出的例子截 ...
- 如何批量修改 GitHub 代码提交作者
批量修改 GitHub 代码提交作者需要进行以下步骤: 首先,你需要 clone 远程仓库到本地,使用以下命令: git clone <repository-url> ``` 将 `< ...
- 在线免费ChatGPT,官方api
作为一款强大的语言模型,ChatGPT在自然语言处理领域享有较高声誉.现在,您可以在我们的在线平台上免费体验ChatGPT的功能了! 经过不断地优化和改进,我们的在线聊天机器人已经能够针对各种话题展示 ...
- 记录一个在写项目中遇到的Maven依赖无法导入的问题
记录一个在写项目中遇到的Maven依赖无法导入的问题 项目是一个父项目做依赖管理,三个子项目,今天遇到一个问题: 子项目中导入的依赖,怎么都导入不进去,maven仓库中已经有了,idea提示也没有问题 ...
- https 原理分析进阶-模拟https通信过程
大家好,我是蓝胖子,之前出过一篇https的原理分析 ,完整的介绍了https概念以及通信过程,今天我们就来比较完整的模拟实现https通信的过程,通过这篇文章,你能了解到https核心的概念以及原理 ...
- Vue + Element ui 实现动态表单,包括新增行/删除行/动态表单验证/提交功能
总结/朱季谦 最近通过Vue + Element ui实现了动态表单功能,该功能还包括了动态表单新增行.删除行.动态表单验证.动态表单提交功能,趁热打铁,将开发心得记录下来,方便以后再遇到类似功能时, ...