如何在 GitHub 上设置 SSH 密钥2025年1月8日 | 阅读 9 分钟 什么是 SSH 密钥?SSH(安全外壳协议)密钥是一对加密密钥,用于在两方之间进行安全通信和身份验证:客户端(您的计算机)和服务器(例如远程服务器或像 GitHub 这样的 Git 存储库主机)。 SSH 密钥对由私钥和公钥组成。私钥保存在客户端,应安全地存储和保护。公钥上传到您要与之进行身份验证的服务器或服务,从而使其能够验证您的身份。 当您尝试使用 SSH 连接到服务器时,客户端使用私钥生成数字签名,服务器使用相应的公钥验证签名。如果签名验证成功,服务器将授予客户端访问权限。 SSH 密钥的优点SSH 密钥比传统的基于密码的身份验证具有多种优势
为什么使用 SSH 密钥?SSH 密钥通常用于以下目的,例如
通过生成和使用 SSH 密钥,您可以增强与远程服务器和服务的交互的安全性和便利性。 SSH 密钥的类型SSH 支持不同类型的加密密钥。最常见的类型是
注意:建议使用 Ed25519 或 RSA 密钥,因为它们在安全性和性能之间提供了良好的平衡。如何生成 SSH 密钥对?您可以使用 ssh-keygen 命令行工具生成 SSH 密钥对。基本语法是 将 <key_type> 替换为所需的密钥类型,例如 ed25519 或 rsa。 -C 标志提供注释(通常是您的电子邮件地址)。如果省略 -t 标志,将使用默认密钥类型(通常是 RSA)。 在密钥生成期间,系统会提示您选择一个位置来保存密钥,并可选地设置密码。私钥文件将保存在没有文件扩展名的情况下,而公钥文件将具有相同的名称,但带有 .pub 扩展名。 如何在 Git 中使用 SSH 密钥?要在 Git 存储库(例如 GitHub)中使用 SSH 密钥,您需要将您的公钥添加到您的帐户。生成密钥对后,您可以复制公钥文件的内容(id_rsa.pub 或 id_ed25519.pub,具体取决于密钥类型),并将其粘贴到 Git 托管平台的 SSH 密钥设置中。 将 SSH 密钥与您的 Git 帐户关联后,您可以使用 SSH URL 克隆并与存储库进行交互。例如 将 username 替换为您的用户名,将 repository 替换为存储库名称。
生成 SSH 密钥时,您可以设置密码。密码通过使用您选择的密码加密私钥来增加额外的安全层。每次使用密钥时,您都需要输入密码才能解锁私钥。 密码是推荐的,但可选的。它们在您的私钥被泄露时提供保护,但由于您每次使用密钥时都必须输入密码,因此也可能带来更多不便。 如何在 GitHub 中设置 SSH 密钥,要在 GitHub 中设置 SSH 密钥,您可以按照以下步骤操作 步骤 1:生成 SSH 密钥对。 如果您还没有 SSH 密钥对,您需要生成一个。打开终端或命令提示符并输入以下命令 将“your_email@example.com”替换为与您的 GitHub 帐户关联的电子邮件地址。您还可以通过更改 -t 选项来选择不同的密钥类型,例如 RSA。 系统将提示您输入保存密钥的文件路径,以及一个可选的密码。按 Enter 键接受默认文件路径,如果您不想使用密码,请将密码留空。 步骤 2:将 SSH 密钥添加到您的 GitHub 帐户。 生成密钥对后,您需要将公钥添加到您的 GitHub 帐户。运行以下命令以显示公钥的内容 如果您选择了不同的文件路径或密钥类型,请相应地调整命令。复制命令的完整输出。 步骤 3:登录到您的 GitHub 帐户。 转到 GitHub 网站 (https://github.com/) 并登录到您的帐户。 步骤 4:访问您的 SSH 和 GPG 密钥设置。 单击右上角的个人资料图片,然后从下拉菜单中选择“设置”。在左侧边栏中,单击“SSH 和 GPG 密钥”。 步骤 5:添加新的 SSH 密钥。 如果您有现有的密钥,请单击“新建 SSH 密钥”或“添加 SSH 密钥”按钮。为您的密钥提供一个描述性标题,例如“个人笔记本电脑 SSH 密钥”。然后,将您从步骤 2 复制的公钥粘贴到“密钥”字段中。 步骤 6:保存 SSH 密钥。 单击“添加 SSH 密钥”按钮以保存密钥。 GitHub 将验证密钥并将其添加到您的帐户。 步骤 7:使用您的 SSH 密钥进行身份验证。 要测试您的 SSH 密钥,请在您的终端中运行以下命令 如果一切设置正确,您应该会看到一条类似的消息 您好,username!您已成功通过身份验证,但 GitHub 不提供 shell 访问权限。 将“username”替换为您的 GitHub 用户名。 现在,您已成功在 GitHub 中设置了 SSH 密钥。您现在可以使用 SSH URL 克隆并与存储库进行交互,该 URL 以 git@github.com 开头。 一些附加步骤以下是您在使用 GitHub 中的 SSH 密钥时可能会觉得有用的几个附加步骤 步骤 1:检查现有的 SSH 密钥 如果您不确定您是否已经在您的计算机上设置了 SSH 密钥,您可以运行此命令导航到默认的 SSH 目录 在这里,您可以列出目录中的文件,以查看是否存在任何现有的密钥 默认情况下,使用 ssh-keygen 命令生成的 SSH 密钥对将被命名为 id_ed25519(私钥)和 id_ed25519.pub(公钥)。 步骤 2:将您的 SSH 密钥添加到 SSH 代理(可选) 要避免每次使用 SSH 密钥时都必须输入密码,您可以将密钥添加到 SSH 代理。使用以下命令添加您的私钥 如果您使用了不同的名称,请务必将 id_ed25519 替换为您的私钥的文件名。 步骤 3:配置您的 Git 客户端以使用 SSH 为了确保您的 Git 客户端在使用 GitHub 时使用 SSH,您可以将存储库的远程 URL 设置为 SSH URL。导航到您计算机上的存储库目录,并使用以下命令 将 username 替换为您的 GitHub 用户名,将 repository 替换为您的存储库名称。 步骤 4:测试您的 SSH 连接到 GitHub 您可以通过运行此命令来验证您的 SSH 连接到 GitHub 是否正常工作 如果一切设置正确,您应该会看到与之前提到的类似的消息。 步骤 5:使用 SSH 代理转发(高级) 如果需要通过 SSH 密钥从您的 GitHub 存储库连接到远程服务器或服务,您可以使用 SSH 代理转发。这允许您在远程服务器上使用您的本地 SSH 密钥。要启用 SSH 代理转发,您需要在连接到远程服务器时使用 SSH 添加 -A 标志 确保 SSH 代理正在运行并且您的密钥已添加到代理中。 在 GitHub 中设置 SSH 密钥的优点在 GitHub 中设置 SSH 密钥具有以下优点,例如
在 GitHub 中设置 SSH 密钥的缺点
在 GitHub 中设置 SSH 密钥的应用
下一个主题Whoava |
我们请求您订阅我们的新闻通讯以获取最新更新。