如何在 Linux、macOS 和 Windows 中查看 SSH 密钥?

2023年 9月 7日 83.9k 0

来源:网络技术联盟站

SSH(Secure Shell)密钥是用于身份验证和安全通信的重要组成部分。在Linux、macOS和Windows操作系统中,你可以通过一些简单的步骤来查看已安装的SSH密钥。本文将详细介绍在这些操作系统中查看SSH密钥的方法。

如何在 Linux、macOS 和 Windows 中查看 SSH 密钥?-1

1. Linux

查看公钥

  • 打开终端窗口。
  • 使用以下命令查看SSH公钥:
  • cat ~/.ssh/id_rsa.pub
    

    如果你的密钥文件名不是默认的id_rsa.pub,请将命令中的文件名替换为你的公钥文件名。

  • 终端将显示你的SSH公钥内容。
  • 查看私钥

    注意:私钥是敏感信息,请务必妥善保管并不要泄露给他人。

  • 打开终端窗口。
  • 使用以下命令查看SSH私钥:
  • cat ~/.ssh/id_rsa
    

    如果你的密钥文件名不是默认的id_rsa,请将命令中的文件名替换为你的私钥文件名。

  • 终端将显示你的SSH私钥内容。
  • 2. macOS

    查看公钥和私钥

  • 打开终端应用程序。
  • 使用以下命令查看SSH密钥:
  • cat ~/.ssh/id_rsa.pub   # 查看公钥
    cat ~/.ssh/id_rsa       # 查看私钥
    

    如果你的密钥文件名不是默认的id_rsa.pubid_rsa,请将命令中的文件名替换为你的公钥和私钥文件名。

  • 终端将显示你的SSH密钥内容。
  • 3. Windows

    查看公钥和私钥(使用 Git Bash)

    在Windows操作系统中,可以使用Git Bash来查看SSH密钥。

  • 打开Git Bash应用程序。
  • 使用以下命令查看SSH密钥:
  • cat ~/.ssh/id_rsa.pub   # 查看公钥
    cat ~/.ssh/id_rsa       # 查看私钥
    

    如果你的密钥文件名不是默认的id_rsa.pubid_rsa,请将命令中的文件名替换为你的公钥和私钥文件名。

  • Git Bash将显示你的SSH密钥内容。
  • 查看公钥和私钥(使用 PuTTY)

    如果你在Windows上使用PuTTY作为SSH客户端,可以使用PuTTY Key Generator(puttygen)来查看SSH密钥。

  • 打开PuTTY Key Generator(puttygen)应用程序。
  • 点击"Load"按钮,然后导航到你的私钥文件(通常是.ppk格式)所在的位置,并选择它。
  • 导入私钥后,公钥将自动显示在"Public key for pasting into OpenSSH authorized_keys file"字段中。你可以复制公钥内容并粘贴到其他位置进行使用。
  • 若要查看私钥内容,点击"Save private key"按钮,然后将其保存到本地文件中。在保存过程中,你将看到私钥的内容。
  • 请注意,使用PuTTY Key Generator仅适用于查看和管理PuTTY生成的密钥(.ppk格式)。如果你使用其他工具生成的密钥,例如OpenSSH,你需要使用其他方法来查看密钥内容。

    4. 其他注意事项

    密钥的保密性

    SSH密钥是敏感信息,包含了访问远程服务器的权限。为了确保密钥的安全性,建议你采取以下措施:

    • 妥善保管私钥文件,并避免将其泄露给他人。
    • 设置私钥文件的访问权限,仅限当前用户可读。
    • 不要将私钥明文通过不安全的通信渠道传输,例如电子邮件或即时消息。

    密钥的备份

    为了防止意外丢失或损坏密钥文件,建议你定期备份密钥。将私钥文件备份到安全的位置,以便在需要时进行恢复。

    密钥的管理

    当你生成或获取新的SSH密钥时,建议你对其进行适当的管理:

    • 使用不同的密钥对于不同的目的。例如,你可以有一个密钥用于访问远程服务器,另一个密钥用于GitHub等代码托管平台。
    • 如果你怀疑密钥的安全性受到威胁,应该立即生成新的密钥对并更新相关系统或服务中的公钥。

    总结

    SSH密钥是安全通信和身份验证的重要工具。在Linux、macOS和Windows操作系统中,你可以使用不同的方法来查看已安装的SSH密钥。无论你是使用命令行还是图形界面工具,都要牢记密钥的保密性和重要性。请妥善保管密钥,并采取适当的安全措施,以确保你的系统和数据的安全性。

    相关文章

    如何在 Linux 中使用 logname 命令?
    为什么有 HTTPS?HTTPS 如何实现安全通信?
    HTTPS的TSL握手流程是什么
    华为无线网络射频调优及WLAN跨VLAN的三层漫游示例
    502错误是什么、应该怎么排查?
    HTTP3为什么抛弃了经典的TCP,而选择QUIC

    发布评论