使用 Seahorse 图形化管理 SSH 密钥

Seahorse,也称为“密码和密钥”,允许您管理 SSH 密钥的生成和分发,即使您不习惯在命令行上工作。
230 位读者喜欢这篇文章。
Linux keys on the keyboard for a desktop computer

如果您是 Linux 系统管理员,您可能熟悉使用安全外壳 (SSH) 工具安全地连接到远程服务器。您可能也知道 SSH 使用公钥-私钥对来提供加密。因此,使用 SSH 的第一步是生成密钥对。您还可以将您的公钥分发到远程服务器,以便您可以登录到这些服务器,而无需键入密码。

Seahorse,也称为 密码和密钥,是用于此目的的图形化工具。

Seahorse Main Screen

Seahorse 的主屏幕

其维护者 GNOME 桌面项目称其为“Seahorse,GNOME 加密界面”,但您会在您的应用程序列表中找到它,名称为“密码和密钥”。它可以管理多种不同的密钥类型和登录方式,但我将重点介绍 SSH。就像命令行版本一样,它的配置将存储在您主目录中常用的 .ssh 子目录中。

生成您的密钥

您可以从下面显示的界面生成新密钥。此操作的命令行是 ssh-keygen。从 Seahorse GUI 中,单击加号 (+) 并选择 安全外壳密钥继续

Select SSH Key

选择 SSH 密钥 以生成密钥

下一个屏幕提供了一个字段来输入描述。您还可以选择是否立即将此密钥分发到您将来想要连接的另一个系统,但对于此示例,请单击 仅创建密钥

Creating a new SSH key

创建新的 SSH 密钥

在密钥创建过程中,系统会要求您输入密码短语。我经常将此项留空,以避免每次尝试连接到另一个系统时都必须输入密码短语;这会像键入密码一样中断自动化。如果您想使用我的方法,只需单击两次 确定。您的新密钥将显示在界面中。

My first SSH key

我的第一个 SSH 密钥

您还可以通过查看主目录的 .ssh 子目录来确认密钥对的存在。

alan@mainstation:~$ cd .ssh
alan@mainstation:~/.ssh$ ls -l
total 12
-rw------- 1 alan alan 1679 Apr  1 11:40 id_rsa
-rw-r--r-- 1 alan alan  398 Apr  1 11:40 id_rsa.pub
-rw-r--r-- 1 alan alan  222 Apr  1 10:54 known_hosts

有两个文件组成了 SSH 密钥对。文件 id_rsa 是私钥。请注意,只有您(所有者)才能拥有对此文件的读取和写入权限。不应与任何人共享。文件 id_rsa.pub 是公钥。共享它是安全的,因为它是配置基于密钥的身份验证时复制到远程系统的文件。接下来让我们看看这个。

连接到远程主机

要将基于密钥的身份验证与远程主机一起使用,您需要将公钥复制到该远程服务器。这很方便,因为您无需键入密码即可登录。此操作的命令行是 ssh-copy-id -i <identity file> <remote_host>。在 GUI 中,您可以通过单击菜单栏中的 远程 或右键单击 SSH 密钥来完成此操作。选择 为安全外壳配置密钥,将出现此窗口

Configuring a remote server

配置远程服务器

输入远程服务器的主机名,然后单击 设置。系统将提示您输入远程服务器的登录密码,请输入密码。没有其他窗口或提示。现在,您可以登录到远程服务器,而无需输入密码。

alan@mainstation:~$ ssh alan@workstation
Last login: Mon Apr  1 12:45:49 2019 from 192.168.2.6
alan@workstation:~$

获取更多帮助

大多数时候,我们在命令行中使用 SSH 及其实用程序。下载 SSH 速查表 以获取完整的使用指南。

接下来阅读什么
Alan Formy-Duval Opensource.com Correspondent
Alan 拥有 20 年的 IT 经验,主要在政府和金融部门。他最初是一家增值经销商,之后转行从事系统工程。Alan 的背景是高可用性集群应用。他撰写了 Oracle Press/McGraw Hill 出版的《Oracle Solaris 11 系统管理》一书中的“用户和组”以及“Apache 和 Web 堆栈”章节。

3 条评论

感谢您提醒我 Seahorse 的这个功能,它很容易被遗忘或忽略。

“在密钥创建过程中,系统会要求您输入密码短语。我经常将此项留空,以避免每次尝试连接到另一个系统时都必须输入密码短语”

我恭敬地建议,最好使用密码短语,但也使用 ssh 代理(Pageant、ssh-agent 等),这样您只需解锁密钥一次,然后就可以从那时起使用代理进行身份验证。这样您就可以两全其美;既保护了您的密钥,又可以防止肩窥者,并在机器之间实现无缝通行。

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.