Linux免密登录——A登录B密钥设置(SSH SCP)

密钥登录

密钥登录比帐号密码方式更安全、更方便,并提供了更多的自动化和批处理选项。

  • 安全性 :使用非对称加密算法 ,公钥存在服务器,私钥存在本地计算机,私钥不在网络传输,降低被黑客截获风险。
  • 强密码避免使用弱密码 或多个服务器用相同密码的风险。密钥长度通常比密码更长,因此更难以被破解
  • 方便性 :设置了密钥登录,无需每次都输入密码,在频繁登录多个服务器时特别方便。
  • 自动化 :密钥登录适用于自动化脚本 和批处理作业,执行远程命令或复制文件,无需人工干预。

加密方法

在Linux中,默认的密钥锁码方法是RSA,它使用RSA算法生成公钥和私钥,并使用私钥进行加密和解密。

  • 对称加密 相同密钥加密和解密。如DES、3DES、AES等,特点是加密和解密速度快
  • 非对称加密 不同密钥加密和解密。如RSA 、DSA、ECC等,特点是安全性高,但速度相对较慢。

密钥工具 ssh-keygen

复制代码
# 生成2048位RSA密钥(默认)
ssh-keygen

# 生成4096位RSA密钥
ssh-keygen -t rsa -b 4096

# 生成512位ECDSA密钥
ssh-keygen -t ecdsa -b 512

示例:主机A登录B

LinuxA: 192.168.0.31

LinuxB: 192.168.0.32

复制代码
# 在LinuxA下生成密钥对,密钥文件在~/.ssh目录
ssh-keygen

# 复制公钥到B主机,输入B主机密码,格式:ssh-copy-id user@ip -p port
ssh-copy-id 192.168.0.32 # 默认22端口

# 免密登入B主机
ssh 192.168.0.32

# 免密复制文件(A到B,也可B到A)
scp -P 22 /homea/abc.zip root@192.168.0.32:/homeb/

免密设置成功,无需输入密码,写自动化脚本完成应用部署等。

附:ssh-keygen 命令选项

命令参数

-b:指定密钥长度

-e:读取openssh的私钥或者公钥文件

-C:添加注释

-f:保存密钥的文件名(默认存到~/.ssh/下,生成id_rsa和id_rsa.pub两个文件)

-i:读取未加密的ssh-v2兼容的私钥/公钥文件

-l:显示公钥文件的指纹数据

-N:提供新密码,空表示不需要密码

-P:提供旧密码,空表示不需要密码

-q:静默模式

-t:指定要创建的密钥类型

-y: 读取私钥输出公钥

附:scp 命令选项

scp(secure copy), 是linux系统下基于ssh的远程加密文件拷贝命令。

命令格式

scp 参数 原路径 目标路径

命令参数

-1:使用协议ssh1

-2:使用协议ssh2

-4:使用IPv4寻址

-6:使用IPv6寻址

-B:使用批处理模式

-C:允许压缩

-p:保留原文件的修改时间,访问时间和访问权限

-q:不显示传输进度条

-r:递归复制整个目录

-v:输出详细信息。

-c cipher:以cipher将数据传输进行加密

-F ssh_config:替代的ssh配置文件

-i identity_file:从指定文件中读取传输时使用的密钥文件

-l limit:限定用户所能使用的带宽,以Kbit/s为单位

-P port:指定端口号

Linux免密登录------A登录B密钥设置(SSH SCP)SSH密钥登录比帐号密码方式更安全、更方便,并提供了更多的自动化和批处理选项。https://blog.oxings.com/article/100

相关推荐
GeW26 分钟前
不只靠技术:RHCE考试的5个隐藏得分点
linux
老当益壮梁奶奶1 小时前
Linux软件编程学习笔记(八):进程间通信详解(1)
linux·c语言·笔记·学习·算法
祖力551 小时前
进程间通信(IPC机制):消息队列与共享内存
linux·消息队列·共享内存·通信·进程间通信
从入门到退休2 小时前
企业远程控制选型:向日葵SDK vs RustDesk自建,谁是更务实的选择?
运维·服务器·网络·远程工作·远程控制
Learn-Share_HY2 小时前
[IT Network]如何配置反向路徑過濾器(rp_filter),以解決路由不對稱問題?
linux·嵌入式硬件·物联网·网络协议·tcp/ip·http·iot
小王C语言3 小时前
Windows 无法使用 ssh 连接虚拟机(ubuntu),网络没问题的情况下
运维·ssh
java_logo3 小时前
Docker 部署 MinIO:轻松搭建 S3 兼容对象存储平台
运维·docker·容器·对象存储·minio·轩辕镜像·minio部署
祖力553 小时前
进程间通信(IPC机制):信号
linux·运维·服务器·进程·进程间通信·多任务·ipc
GKxx3 小时前
在 HarmonyOS 上给 QEMU 搭一个最小 aarch64 Linux guest(内核 + busybox initramfs)
linux·华为·qemu·harmonyos·鸿蒙·鸿蒙pc
Neighbor_OldY4 小时前
线上服务CPU飙高接口超时应急处置实战:从load爆表到快速定位根因,一次线上救火全记录
大数据·运维