SSH 免密登录

SSH

SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录、远程复制等功能

SSH 协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令

SSH 为建立在应用层和传输层基础上的安全协议。对数据进行压缩,加快传输速度。

SSH免密登录

通过配置 服务器之间ssh免密登录实现服务器互相访问无须输入密码、 这样可以将服务器之间的文件传输在脚本中实现。

配置方式

A服务器地址: 192.168.1.21

B服务器地址: 192.168.1.22

A免密登录B (A服务器下ssh 192.168.1.22 无需密码)

在A服务器生成密钥文件(三下回车)

bash 复制代码
ssh-keygen -t rsa

此时会在A服务器当前用户家目录下生成两个文件

bash 复制代码
cd ~/.shh

id_rsa 此文件为私钥

id_rsa.pub 此文件为公钥

此时将公钥文件的内容写入到其他服务器用户家目录中authorized_keys 文件中、就可以实现当前服务器免密登录其他服务器。

我们将公钥传入B服务器

bash 复制代码
ssh-copy-id 192.168.1.22

将id_rsa.pub copy到B服务器 用户家目录下 .ssh 文件夹中 追加到authorized_keys 文件中(建议copy后重命名 避免与B服务器中公钥冲突)

bash 复制代码
cat id_rsa.pub > authorized_keys

A服务器查看公钥 并复制内容

bash 复制代码
cat id_rsa.pub 

B 服务器编辑 authorized_keys文件 直接粘贴在最后放

bash 复制代码
vi authorized_keys

此时 A向B免密连接配置完成

A ssh B 无需密码

如需要B向A 则反向操作、 B生成公钥 、写入到A的 authorized_keys 文件中

关于.ssh中的文件

authorized_keys :存放免密登录的公钥(其他服务器公钥)

id_rsa : 当前服务器私钥

id_rsa.pub :当前服务器公钥

known_hosts 记录曾经远程连接的机器信息

相关推荐
asyxchenchong8882 小时前
最新Hermes Agent 技能封装与科研自动化:以 Meta-Analysis 为例-实现从文献检索到绘图的一站式工作流
运维·人工智能·自动化
tianyuanwo2 小时前
项目内自我管理:一名OS领域DevOps的破局之路
运维·devops
三十..2 小时前
Redis 核心原理与高可用架构实践
运维·数据库·redis
Jurio.3 小时前
开源 Codex Sticky:在终端 Codex CLI 长对话中始终固定底部输入框
linux·rust·github·开源软件·codex·codex cli
半夜修仙4 小时前
RabbitMQ中如何保证消息的可靠性传输
java·分布式·中间件·rabbitmq·github·java-rabbitmq
jinglong.zha4 小时前
LScript-从零基础到商业变现的AI自动化学习平台
运维·学习·自动化
Adorable老犀牛4 小时前
Telegraf:InfluxData 出品的指标采集代理
运维·telegraf
北塔软件5 小时前
北塔软件智能体平台 | 不只监控,更是AI时代的数据资产
运维·人工智能·知识库·北塔软件
AOwhisky5 小时前
学习自测与解析:MySQL第五、六、七期核心知识点详解
运维·数据库·笔记·学习·mysql·云计算
无限进步_5 小时前
从零实现一个迷你Shell——深入理解Linux命令行解释器
linux·运维·服务器·开发语言·c++·chrome