Mac多SSH Key配置

本文详细介绍了如何在同时使用公司gittea仓库和个人github账号时,配置不同的SSHkey以避免混淆。通过生成特定的SSHkey、配置config文件以及测试连接,确保了不同平台间的安全与高效操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

多SSH key配置

工作的时候碰到SSH配置的问题,就是公司用的是gittea的仓库,而本人的github平常也要使用,这个时候就需要配置不同的SSH key了。将同一个公钥分配配置给github和gittea的话并不可行。个人认为是你在操作的时候他不知道你是操作哪个git。

1.切换到系统的SSH目录下。

cd ~/.ssh

2.生成自己的github的SSH key(默认这里你已经配置好了一个SSH key)

ssh-keygen -t rsa -C "自己Github账号" -f github_rsa   #-f表示保存的文件名

一路回车

image-20190705090153099

3.将对应的SSH key添加到相应的平台

image-20190705092507081

4.配置config文件

# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_rsa

# gitlab
Host gitlab.com
HostName gitlab.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/company_rsa

注:host名称没有关系,HostName是网站的地址,配置相应的地址就好了。不知道是哪个,可以看你clone的地址,@后面到项目名之间的就是了。

5.测试是否添加成功

ssh -T git@github.com

SSH key参数选项

-b:指定密钥长度; 
-e:读取openssh的私钥或者公钥文件; 
-C:添加注释; 
-f:指定用来保存密钥的文件名; 
-i:读取未加密的ssh-v2兼容的私钥/公钥文件,然后在标准输出设备上显示openssh兼容的私钥/公钥; 
-l:显示公钥文件的指纹数据; 
-N:提供一个新密语; 
-P:提供(旧)密语;
-q:静默模式; 
-t:指定要创建的密钥类型。
### 配置 Mac OS 上 Git 使用的 SSH 密钥 #### 创建新的 SSH 密钥对 为了确保安全性和兼容性,在 Mac OS 中可以使用如下命令来生成一个新的 SSH 密钥对: ```bash $ ssh-keygen -t ed25519 -C "your_email@example.com" ``` 这条指令会创建基于 Ed25519 算法的新密钥,并将其与指定电子邮件地址关联[^4]。 #### 将公钥添加至剪贴板 一旦完成了上述过程,则需要将新产生的 `.pub` 文件中的内容复制出来准备粘贴给远程仓库服务提供商(如 GitHub 或者 GitLab)。对于 macOS 用户来说,可以通过下面这个简单的管道命令完成此操作: ```bash $ cat ~/.ssh/id_ed25519.pub | pbcopy ``` 这一步骤能够方便快捷地把公钥文本送入系统的剪贴板里等待后续黏贴[^5]。 #### 添加私钥到 SSH Agent 为了让本地计算机记住该私钥以便于之后的操作更加便捷高效,应当启动 `ssh-agent` 并加载对应的私钥文件。具体做法是在终端执行以下两条语句之一即可实现自动读取默认路径下的身份验证信息: ```bash # 启动 agent 及添加私钥 $ eval "$(ssh-agent -s)" $ ssh-add ~/.ssh/id_ed25519 ``` 通过这种方式可以让系统持续保持对该特定用户的识别状态直至显式移除或重启机器为止[^3]。 #### 测试连接有效性 最后一步就是检验整个流程是否成功建立起了信任关系。此时只需简单运行一次模拟登录尝试便能得知结果: ```bash $ ssh -T git@github.com ``` 如果一切正常的话将会收到一条来自目标服务器端带有欢迎词的消息确认已经顺利完成认证工作;反之则可能遇到权限拒绝等问题提示需重新检查之前的每步设定是否存在疏漏之处。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值