

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 SSH 通过 Amazon EMR 连接到 Kerberos 集群
<a name="emr-kerberos-connect-ssh"></a>

此部分演示了通过 Kerberos 进行身份验证的用户连接到 EMR 集群主节点的步骤。

用于 SSH 连接的每台计算机必须安装了 SSH 客户端和 Kerberos 客户端应用程序。默认情况下，Linux 计算机很可能包括这些内容。例如，大多数 Linux、Unix 和 macOS 操作系统上都会安装 OpenSSH。您可以通过在命令行键入 **ssh** 来检查 SSH 客户端。如果您的计算机无法识别该命令，请安装 SSH 客户端以连接到主节点。OpenSSH 项目会免费提供一套完整的 SSH 工具执行文件。有关更多信息，请访问 [OpenSSH](http://www.openssh.org/) 网站。Windows 用户可以使用 [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/) 等应用程序作为 SSH 客户端。

有关 SSH 连接的更多信息，请参阅[连接到 Amazon EMR 集群](emr-connect-master-node.md)。

SSH 使用 GSSAPI 对 Kerberos 客户端进行身份验证，您必须为集群主节点上的 SSH 服务启用 GSSAPI 身份验证。有关更多信息，请参阅 [为 SSH 启用 GSSAPI](emr-kerberos-configuration-users.md#emr-kerberos-ssh-config)。SSH 客户端也必须使用 GSSAPI。

在以下示例中，*MasterPublicDNS*使用集群详细信息窗格**摘要**选项卡上为**主公有 DNS** 显示的值，例如。*ec2-11-222-33-44.compute-1.amazonaws.com*

## krb5.conf（非 Active Directory）的先决条件
<a name="emr-kerberos-conffile"></a>

使用没有 Active Directory 集成的配置时，除了 SSH 客户端和 Kerberos 客户端应用程序之外，每个客户端计算机必须具有 `/etc/krb5.conf` 文件的副本，该文件与集群主节点上的 `/etc/krb5.conf` 文件匹配。

**复制 krb5.conf 文件**

1. 使用 SSH 使用 EC2 密钥对和默认用户（例如 `hadoop`）连接到主节点，例如 `hadoop@MasterPublicDNS`。有关详细说明，请参阅[连接到 Amazon EMR 集群](emr-connect-master-node.md)。

1. 从主节点，复制 `/etc/krb5.conf` 文件的内容。有关更多信息，请参阅 [连接到 Amazon EMR 集群](emr-connect-master-node.md)。

1. 在将连接到集群的每个客户端计算机上，基于上一步中制作的副本创建一个相同的 `/etc/krb5.conf` 文件。

## 使用 Kinit 和 SSH
<a name="emr-kerberos-kinit-ssh"></a>

用户每次使用 Kerberos 凭证从客户端计算机连接时，该用户必须首先续订 Kerberos 票证以供自己在客户端计算机上使用。此外，SSH 客户端必须配置为使用 GSSAPI 身份验证。

**通过 SSH 连接到使用 Kerberos 的 EMR 集群**

1. 使用 `kinit` 续订您的 Kerberos 票证，如以下示例所示

   ```
   kinit user1
   ```

1. 使用 `ssh` 客户端以及您在集群专用 KDC 中创建的委托人或者 Active Directory 用户名。确保已启用 GSSAPI 身份验证，如以下示例所示。

   **示例：Linux 用户**

   `-K ` 选项指定 GSSAPI 身份验证。

   ```
   ssh -K user1@MasterPublicDNS
   ```

   **示例：Windows 用户 (PuTTY)**

   确保已启用会话的 GSSAPI 身份验证选项，如下所示：  
![\[PuTTY Configuration window showing GSSAPI authentication options and library preferences.\]](http://docs.aws.amazon.com/zh_cn/emr/latest/ManagementGuide/images/kerb-gssapi-putty.png)