当前位置: 首页 > news >正文

新服务器初始化:Git全局配置与SSH密钥生成

前言

在初始化一台新服务器或重装系统后,除了基础的环境配置,为服务器设定清晰的身份标识并建立与代码托管平台的安全通信是至关重要的一步。本文将记录为新服务器配置Git全局用户信息,并生成专属SSH密钥对以连接GitHub、Gitee等平台的标准流程。

1. 配置Git全局用户信息

目的:
此步骤为服务器上的Git操作设定一个全局的用户身份。后续在这台服务器上执行的任何git commit操作,无论是由开发者手动执行还是由自动化脚本触发,都会附带上此用户名和邮箱。这对于代码版本历史的清晰度和可追溯性至关重要。

操作命令:

在服务器终端中执行以下命令,请将"Your Name""your.email@example.com"替换为您自己的信息。

git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
  • --global标志意味着此配置将应用于当前用户在该服务器上操作的所有Git仓库。
    在这里插入图片描述

2. 为服务器生成专属SSH密钥

目的:
为服务器创建一对独立的SSH密钥,用于向GitHub等平台进行身份验证。这把密钥代表了服务器自身的“数字身份”。为服务器使用专用密钥,而不是复用个人开发机的密钥,是一种安全最佳实践。它能实现权限的最小化和隔离:即使服务器的密钥不慎泄露,也只需在代码托管平台禁用此密钥即可,不会影响到您个人的访问权限。这对于CI/CD、自动化部署等场景尤为重要。

操作命令:

在服务器终端中执行以下命令以生成新的SSH密钥对。

# -t 指定加密算法为rsa, -b 指定密钥长度为4096位, -C 添加注释,通常为邮箱
ssh-keygen -t rsa -b 4096 -C "your.email@example.com"

在这里插入图片描述

执行后,系统会提示您选择密钥的保存位置和设置密码。对于自动化任务,通常建议直接按回车键三次,接受默认路径(~/.ssh/id_rsa)并且不为密钥设置密码(passphrase),以确保自动化脚本在执行时不会因等待密码输入而中断。

3. 在代码托管平台部署公钥

目的:
密钥对生成后,私钥(id_rsa)将保留在服务器上,而公钥(id_rsa.pub)需要被添加到您希望服务器访问的代码托管平台账户中。平台通过验证服务器能否正确使用私钥来确认其公钥的合法性,从而授权其访问。

操作流程:

a. 获取服务器公钥内容
在服务器上,使用cat命令显示公钥文件的全部内容,并将其复制。

cat ~/.ssh/id_rsa.pub

在这里插入图片描述

您会看到一长串以ssh-rsa开头、以您的邮箱结尾的字符,这就是需要复制的公-钥。

b. 添加到GitHub/Gitee

  1. 登录您的GitHub或Gitee账号。
  2. 进入个人设置(Settings)。
  3. 找到“SSH and GPG keys”(SSH和GPG密钥)菜单选项。
  4. 点击“New SSH key”(添加SSH密钥)。
  5. 在“Title”(标题)字段中,为这个密钥起一个易于识别的名称,例如“My Production Server”。
  6. 将刚才从服务器复制的完整公钥内容粘贴到“Key”(密钥)文本框中。
  7. 保存即可。
  8. 在这里插入图片描述

总结

完成以上步骤后,您的新服务器便拥有了合法的Git提交身份,并建立了与远程代码仓库的安全连接。这是一个标准且必要的初始化流程,为后续的代码拉取、自动化部署和其他开发运维工作奠定了坚实的基础。


文章转载自:

http://kOrlbnEN.pqjpw.cn
http://5C7qI0jj.pqjpw.cn
http://cA5UzMVo.pqjpw.cn
http://GkVXWiwu.pqjpw.cn
http://tZgOLAis.pqjpw.cn
http://wudilNZ3.pqjpw.cn
http://np4cIpOF.pqjpw.cn
http://ao8sAeog.pqjpw.cn
http://G9yQAOBH.pqjpw.cn
http://W7RuldlI.pqjpw.cn
http://Tk66gisM.pqjpw.cn
http://pInXjjen.pqjpw.cn
http://mUo6ZAVy.pqjpw.cn
http://Zz0flXmt.pqjpw.cn
http://Y59nADOo.pqjpw.cn
http://f3M5o7pP.pqjpw.cn
http://o9VV9hUV.pqjpw.cn
http://6JVZ3fdb.pqjpw.cn
http://SBzcYAa8.pqjpw.cn
http://nfISJGNJ.pqjpw.cn
http://8ZeNSy66.pqjpw.cn
http://uUcrA5JM.pqjpw.cn
http://r2dzYxRy.pqjpw.cn
http://steRvbcD.pqjpw.cn
http://BfVRiW86.pqjpw.cn
http://sewLrEiP.pqjpw.cn
http://KBuvyq5V.pqjpw.cn
http://Ww3Xq006.pqjpw.cn
http://rDmUmJyB.pqjpw.cn
http://srtlwjZU.pqjpw.cn
http://www.dtcms.com/a/370189.html

相关文章:

  • 主流分布式数据库集群选型指南
  • 【Proteus仿真】定时器控制系列仿真——秒表计数/数码管显示时间
  • python advance -----object-oriented
  • 开源与定制化对比:哪种在线教育系统源码更适合教育培训APP开发?
  • 【51单片机-B030】【protues仿真】基于51单片机万年历系统
  • mysql 是否“100%”地解决幻读?
  • 分布式系统的设计哲学:架构模式全面介绍与选型策略
  • windows11 安装charm成功
  • IPD流程落地:IPMT的开发评审逻辑
  • 数字化赋能全球扩张:名创优品携手巨益科技的信息化转型深度实践
  • OpenCV - 图像的IO操作
  • Windows 11 手动下载安装配置 uv、配置国内源
  • Wisdom SSH 是一款搭载强大 AI 助手的工具,能显著简化服务器配置管理流程。
  • Linux基础知识(二)
  • Redis 在互联网高并发场景下的应用--个人总结
  • 算法题-链表03
  • 版本发布流程手册:Release分支规范与Bug分级标准全解析
  • 目标检测中的池化层
  • react native 出现 FATAL EXCEPTION: OkHttp Dispatcher
  • HttpClient、OkHttp 和 WebClient
  • js逆向Webpack模块加载机制解析:从数组到JSONP
  • cuda-NCCL笔记(1)-- 初步了解使用NCCL
  • Lua 面向对象编程
  • 微信小程序(uniapp)实现连接蓝牙
  • 从 scheduler_tick 到上下文切换:深入解析 Linux 内核的 TIF_NEED_RESCHED 标志设置流程
  • 微前端框架性能对比与选型指南:从理论到实践
  • pyAutoGUI 模块主要功能介绍-(1)鼠标功能
  • Maven的介绍及基本使用
  • 使用 C# .NETCore 实现MongoDB
  • 2025年渗透测试面试题总结-55(题目+回答)