SSH多秘钥管理

一.生成新SSH密钥

打开 Git Bash,使用以下命令,其中邮箱替换为有效地址。

复制代码
ssh-keygen -t rsa -b 4096 -C "xx@qq.com" #文件改为id_rsa1,id_rsa1.pub
ssh-keygen -t rsa -b 4096 -C "yy@qq.com" #文件改为id_rsa2,id_rsa2.pub

二.服务器端添加公钥

在多个服务器端,分别手动添加SSH对应的pub key内容。

三.客户端启动SSH agent,添加秘钥

复制代码
#1.shell下启动ssh agent
eval "$(ssh-agent -s)"
#2.复制id_rsa1和id_rsa2到 ~/.ssh目录,并执行如下命令
ssh-add ~/.ssh/id_rsa1
ssh-add ~/.ssh/id_rsa2

四.客户端SSH配置管理

复制代码
#1.建立配置文件
touch ~/.ssh/config 

#2.config文件添加如下内容
# server1
Host first.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa1

#server2
Host second.com
    HostName xxxxx.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa2

五.验证登录和下载

复制代码
ssh -T git@github.com #测试服务器登录
git clone git@github.com:git/git.git #使用实际仓库地址,验证代码下载

六.常见问题

常见问题:windows下,git代码下载后,编译报错。

原因:windows自动转换linux文件的回车换行及文件结束符。解决方法:

复制代码
#1.全局仓库配置,只需运行一次
git config --global core.autocrlf false
git config --global core.eol lf
#2.检查配置是否起效:
git config --global core.autocrlf
git config --global core.eol
相关推荐
qeen8712 小时前
【Linux】指令补充与shell的简单介绍
linux·运维·服务器
DLYSB_13 小时前
《从零开始搭建机房轻量化“声光告警”系统:基于 HTTP API 与 TTS 的运维实践》
运维·网络协议·http·报警灯
阿成学长_Cain13 小时前
Linux talk 命令详解:经典终端实时聊天工具,无需图形界面即可对话
linux·运维·前端
一拳一个娘娘腔13 小时前
【后渗透-Linux篇】Linux 提权与逃逸:从 www-data到 root的蜕变
linux·运维·服务器
jieyucx13 小时前
零基础通关:Shell 编程核心语法全景详解
linux·运维·编程·shell
杨运交14 小时前
[045][Crypto模块]设计一个可扩展的加解密框架:策略模式与工厂模式实战
linux·运维·策略模式
seacracker15 小时前
Ceph 太重运维成本高?轻量统一存储 PowerFS 对比测评(HPC/AI 场景首选)
运维·人工智能·ceph·ai存储·统一存储
ZhengO_Oz15 小时前
虚拟机CentOS 网络配置【实操】
运维·服务器·网络
utf8mb4安全女神15 小时前
如果复制windows 内容到 Linux,带入不可见特殊符,怎么解决
linux·运维·服务器