返回

SSH 键管理:摆脱本地多个密钥的烦恼,轻松应对不同平台授权

开发工具

在本地管理多个 SSH 密钥的艺术

对于那些经常需要在不同平台之间进行 SSH 连接的用户来说,本地管理多个 SSH 密钥可能是一项挑战。传统的解决方案是备份当前的 id_rsa 密钥,然后生成一个新的私钥用于 GitHub 或其他平台的登录。然而,这种方法既繁琐又容易出错,而且会中断您对之前机器的访问。

本文将介绍一种更加优雅的解决方案,允许您轻松地在不同平台之间授权访问,而无需备份或替换现有密钥。我们将探讨如何生成新的密钥并将其添加到现有密钥文件中,以及如何安全地移除旧密钥,同时保持对受影响平台的访问。无论您是需要管理个人项目还是大型企业网络,本指南将帮助您掌握 SSH 密钥管理的艺术,提高您的工作效率并加强您的安全性。

优雅地管理本地多个 SSH 密钥

  1. 生成新的 SSH 密钥对

    使用以下命令生成新的 SSH 密钥对:

    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    

    系统将提示您输入一个安全的文件名来保存私钥,以及一个可选的密码来加密私钥。输入您选择的信息后,按 Enter 键继续。

  2. 将新密钥添加到现有密钥文件

    要将新密钥添加到现有密钥文件中,请使用以下命令:

    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    

    此命令将把新密钥的公钥追加到您的 ~/.ssh/authorized_keys 文件中。

  3. 测试新密钥

    要测试新密钥是否正常工作,请尝试使用以下命令连接到远程服务器:

    ssh user@example.com
    

    系统将提示您输入密码。输入您在生成密钥时设置的密码,然后按 Enter 键继续。如果连接成功,您将看到远程服务器的命令提示符。

  4. 安全地移除旧密钥

    如果不再需要旧密钥,可以将其从 ~/.ssh/authorized_keys 文件中移除。要做到这一点,请使用以下命令:

    grep -v "old_key_fingerprint" ~/.ssh/authorized_keys > ~/.ssh/authorized_keys.new
    mv ~/.ssh/authorized_keys.new ~/.ssh/authorized_keys
    

    此命令将从 ~/.ssh/authorized_keys 文件中删除包含旧密钥指纹的行,然后将修改后的文件保存为 ~/.ssh/authorized_keys

结论

通过遵循本文介绍的方法,您就可以轻松地管理本地多个 SSH 密钥,而无需备份或替换现有密钥。这种方法简单、安全且高效,无论您是需要管理个人项目还是大型企业网络,都能帮助您提高工作效率并加强安全性。