Uso de SSH para se conectar a clusters kerberizados com o Amazon EMR - Amazon EMR

Uso de SSH para se conectar a clusters kerberizados com o Amazon EMR

Esta seção demonstra as etapas para que um usuário autenticado pelo Kerberos se conecte ao nó primário de um cluster do EMR.

Cada computador que é usado para uma conexão SSH deve ter aplicativos cliente SSH e cliente Kerberos instalados. Os computadores Linux provavelmente incluem esses aplicativos por padrão. Por exemplo, a OpenSSH está instalada na maioria dos sistemas operacionais Unix, Linux e MacOS X. É possível verificar se existe um cliente SSH digitando ssh na linha de comando. Se o computador não reconhecer o comando, instale um cliente SSH para se conectar ao nó primário. O projeto OpenSSH fornece uma implementação grátis do pacote completo de ferramentas SSH. Para obter mais informações, consulte o site do OpenSSH. Os usuários do Windows podem usar aplicativos, como o PuTTY, como um cliente SSH.

Para obter mais informações sobre conexões SSH, consulte Conecte-se a um cluster do Amazon EMR..

O SSH usa GSSAPI para autenticar os clientes Kerberos, e você deve habilitar a autenticação GSSAPI para o serviço SSH no nó primário do cluster. Para ter mais informações, consulte Habilitar GSSAPI para SSH. Os clientes SSH também devem usar GSSAPI.

Nos exemplos a seguir, em MasterPublicDNS, use o valor exibido para DNS público principal na guia Resumo do painel de detalhes do cluster. Por exemplo, ec2-11-222-33-44.compute-1.amazonaws.com.

Pré-requisito para krb5.conf (que não é do Active Directory)

Ao usar uma configuração sem integração com o Active Directory, além das aplicações cliente SSH e cliente Kerberos, cada computador cliente deve ter uma cópia do arquivo /etc/krb5.conf que corresponde ao arquivo /etc/krb5.conf no nó primário do cluster.

Para copiar o arquivo krb5.conf
  1. Use o SSH para se conectar ao nó primário usando um par de chaves do EC2 e o usuário hadoop padrão; por exemplo, hadoop@MasterPublicDNS. Para obter instruções detalhadas, consulte Conecte-se a um cluster do Amazon EMR..

  2. No nó primário, copie o conteúdo do arquivo /etc/krb5.conf. Para ter mais informações, consulte Conecte-se a um cluster do Amazon EMR..

  3. Em cada computador cliente que será usado para se conectar ao cluster, crie um arquivo /etc/krb5.conf idêntico com base na cópia feita na etapa anterior.

Usar Kinit e SSH

Cada vez que um usuário se conecta a partir de um computador cliente usando credenciais do Kerberos, o usuário deve primeiro renovar tíquetes Kerberos para seu usuário no computador cliente. Além disso, o cliente SSH deve estar configurado para usar a autenticação GSSAPI.

Para usar o SSH para se conectar a um cluster do EMR Kerberizado
  1. Use kinit para renovar os tíquetes Kerberos, conforme mostrado no exemplo a seguir

    kinit user1
  2. Use um cliente ssh juntamente com o principal que você criou no KDC dedicado ao cluster ou o nome de usuário do Active Directory. Certifique-se de que a autenticação GSSAPI esteja habilitada, conforme mostrado nos exemplos a seguir.

    Exemplo: usuários do Linux

    A opção -K especifica a autenticação de GSSAPI.

    ssh -K user1@MasterPublicDNS

    Exemplo: usuários do Windows (PuTTY)

    Certifique-se de que a opção de autenticação GSSAPI para a sessão esteja habilitada conforme mostrado:

    PuTTY Configuration window showing GSSAPI authentication options and library preferences.