Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ / /

mongokerberos

Nesta página

  • Synopsis
  • Instalação
  • Uso
  • Opções

O MongoDB Enterprise fornece mongokerberos para testar asopções de configuração Kerberos e GSSAPI do MongoDB em uma implantação de Kerberos em execução. mongokerberos pode ser usado em um dos dois modos: servidor e cliente.

Modo
Descrição

Servidor

No modo de servidor, omongokerberos analisa as configurações relacionadas ao Kerberos no servidor e retorna um relatório que inclui mensagens de erro para quaisquer configurações que sejam problemáticas. Para uso, consulte Modo Servidor

Cliente

No modo cliente, testa a autenticação Kerberos para um nome de usuário fornecido e retorna um relatório que inclui o sucesso ou a falha de cada etapa do procedimento de autenticação Kerberos. Para uso, mongokerberos consulte Modo Cliente

As mensagens de erro para ambos os modos incluem informações sobre erros específicos encontrados e possíveis conselhos para resolver o erro.

mongokerberos suporta os seguintes tipos de sistemas, nos modos servidor e cliente:

  • Clientes Linux MongoDB autenticando para sistemas MIT Kerberos em plataformas Linux compatíveis.

  • Clientes Windows MongoDB autenticando em sistemas Windows Active Directory em plataformas Windows compatíveis.

  • Clientes Linux MongoDB autenticando em sistemas do Windows Active Directory.

Observação

Geralmente, ao configurar opções relacionadas à autenticação Kerberos, é uma boa prática verificar sua configuração com mongokerberos.

mongokerberos é uma ferramenta de teste e verificação; ele não edita nenhum arquivo nem configura nenhum serviço. Para configurar o Kerberos em sua plataforma, consulte a documentação do MIT Kerberos, ou a documentação da sua plataforma. Para configurar o MongoDB para autenticar usando Kerberos, consulte os seguintes tutoriais:

Este documento fornece uma visão geral completa de todas as opções de linha de comando para mongokerberos.

A ferramenta mongokerberos faz parte do pacote Ferramentas do Banco deMongoDB database Extra e pode ser instalada com o MongoDB Server ou como uma instalação independente.

Para instalar o mongokerberos como parte de uma instalação do MongoDB Enterprise MongoDB Server:

  • Siga as instruções para a sua plataforma: Instalar MongoDB Enterprise MongoDB Server

  • Após concluir a instalação, o mongokerberos e as outras ferramentas incluídas estarão disponíveis no mesmo local que o Servidor MongoDB.

    Observação

    Para o assistente de instalação do Windows .msi , a opção de instalação do Complete inclui mongokerberos.

Para instalar o mongokerberos como uma instalação standalone:

  • Siga o link de download do MongoDB Enterprise: Centro de download doMongoDB Enterprise

  • Selecione seu Platform (sistema operacional) no menu suspenso e, em seguida, selecione o Package apropriado para sua plataforma, de acordo com o gráfico a seguir:

    os
    Pacote

    Linux

    tgz Pacote

    Windows

    zip Pacote

    macOS

    tgz Pacote

  • Após o download, descompacte o arquivo e copie o mongokerberos para um local no seu disco rígido.

    Dica

    Os usuários de Linux e macOS podem desejar copiar mongokerberos para um local do sistema de arquivos definido na variável de ambiente $PATH , como /usr/bin. Isso permite referenciar mongokerberos diretamente na linha de comando pelo nome, sem precisar especificar seu caminho completo ou primeiro navegar para seu diretório pai. Consulte o guia de instalação da sua plataforma para obter mais informações.

mongokerberos pode ser executado de dois modos: servidor e cliente.

Execute mongokerberos na linha de comando do sistema, não no mongosh.

A execução do mongokerberos no modo de servidor executa uma série de etapas de verificação em relação à configuração do Kerberos do seu sistema, incluindo a verificação da resolução de DNS adequada, a validação do arquivo de keytab do sistema Kerberos e o teste em relação ao principal de serviço do MongoDB para seu mongod ou mongos instância.

Antes de usar mongokerberos no modo de servidor, você deve:

  1. Configure o Kerberos na sua plataforma de acordo com a documentação da sua plataforma.

  2. Crie o principal de serviço MongoDB para uso com sua instância mongod ou mongos , conforme descrito nas etapas a seguir:

Depois de concluir essas etapas, você pode executar mongokerberos no modo de servidor usando o sinalizador --server da seguinte forma:

mongokerberos --server

Se o Kerberos tiver sido configurado corretamente no servidor e a entidade de serviço tiver sido criada com êxito, o resultado poderá ser semelhante ao seguinte:

Resolving kerberos environment...
[OK] Kerberos environment resolved without errors.
Verifying DNS resolution works with Kerberos service at <hostname>...
[OK] DNS test successful.
Getting MIT Kerberos KRB5 environment variables...
* KRB5CCNAME: not set.
* KRB5_CLIENT_KTNAME: not set.
* KRB5_CONFIG: not set.
* KRB5_KTNAME: not set.
* KRB5_TRACE: not set.
[OK]
Verifying existence of KRB5 keytab FILE:/etc/krb5.keytab...
[OK] KRB5 keytab exists and is populated.
Checking principal(s) in KRB5 keytab...
Found the following principals for MongoDB service mongodb:
* mongodb/server.example.com@SERVER.EXAMPLE.COM
Found the following kvnos in keytab entries for service mongodb:
* 3
[OK] KRB5 keytab is valid.
Fetching KRB5 Config...
KRB5 config profile resolved as:
<Your Kerberos profile file will be output here>
[OK] KRB5 config profile resolved without errors.
Attempting to initiate security context with service credentials...
[OK] Security context initiated successfully.

A mensagem final indica que a configuração Kerberos do sistema está pronta para ser usada com MongoDB. Se algum erro for encontrado com a configuração, ele será apresentado como parte da saída acima.

A execução mongokerberos no modo cliente testa a autenticação em relação ao ambiente Kerberos do seu sistema, executando cada etapa do processo de autenticação Kerberos, incluindo a verificação da resolução adequada de DNS, a verificação do arquivo keytab do cliente Kerberos e o teste se um ticket pode ser concedido com êxito. A execução do mongokerberos no modo do cliente simula o procedimento de autenticação do cliente do mongosh.

Antes de poder usar mongokerberos no modo cliente , você deve primeiro ter configurado o Kerberos em sua plataforma, de acordo com a documentação da sua plataforma. Opcionalmente, você também pode optar por executar mongokerberos primeiro no modo servidor para verificar se a configuração do Kerberos da sua plataforma é válida antes de usar o modo cliente .

Depois de concluir essas etapas, você pode executar mongokerberos no modo cliente para testar a autenticação do usuário, usando o sinalizador --client da seguinte forma:

mongokerberos --client --username <username>

Você deve fornecer um nome de usuário válido, que é usado para solicitar um ticket Kerberos como parte do procedimento de autenticação. A infraestrutura Kerberos da sua plataforma deve estar ciente desse usuário.

Se as credenciais fornecidas forem válidas e as opções Kerberos nos arquivos de configuração forem válidas, a saída poderá se assemelhar ao seguinte:

Resolving kerberos environment...
[OK] Kerberos environment resolved without errors.
Verifying DNS resolution works with Kerberos service at <hostname>...
[OK] DNS test successful.
Getting MIT Kerberos KRB5 environment variables...
* KRB5CCNAME: not set.
* KRB5_CLIENT_KTNAME: not set.
* KRB5_CONFIG: not set.
* KRB5_KTNAME: not set.
* KRB5_TRACE: not set.
[OK]
Verifying existence of KRB5 client keytab FILE:/path/to/client.keytab...
[OK] KRB5 client keytab exists and is populated.
Checking principal(s) in KRB5 keytab...
[OK] KRB5 keytab is valid.
Fetching KRB5 Config...
KRB5 config profile resolved as:
<Your Kerberos profile file will be output here>
[OK] KRB5 config profile resolved without errors.
Attempting client half of GSSAPI conversation...
[OK] Client half of GSSAPI conversation completed successfully.

A mensagem final indica que a autenticação do cliente foi concluída com sucesso para o usuário fornecido. Se algum erro for encontrado durante as etapas de autenticação, ele será apresentado como parte da saída acima.

--server

Executa o mongokerberos no modo de servidor para testar se a configuração Kerberos da sua plataforma é válida para uso com MongoDB.

Consulte Modo de servidor para obter exemplo de uso e resultado esperado.

--client

Executa o mongokerberos no modo do cliente para testar a autenticação do cliente no ambiente Kerberos do seu sistema. Requer a especificação de um nome de usuário válido com --username ao executar no modo cliente . mongokerberos solicitará um tíquete Kerberos para este nome de usuário como parte do procedimento de validação. A execução do mongokerberos no modo do cliente simula o procedimento de autenticação do cliente do mongosh.

Consulte Modo do cliente para obter exemplo de uso e resultado esperado.

--config <filename>, -f <filename>

Especifica um arquivo de configuração para opções de configuração do tempo de execução. As opções são equivalentes às opções de configuração da linha de comando. Consulte Opções de arquivo de configuração autogerenciadas para obter mais informações.

mongokerberos lerá os valores para saslHostName e saslServiceName deste arquivo, se presente. Estes valores podem ser especificados alternativamente com a opção --setParameter .

Certifique-se de que o arquivo de configuração use codificação ASCII. A instância mongokerberos não suporta arquivos de configuração com codificação não ASCII, incluindo UTF-8.

Válido apenas no modo de servidor.

--setParameter <options>

Define um parâmetro configurável. Você pode especificar múltiplos campos setParameter .

Embora você possa usar qualquer parâmetro suportado com setParameter, mongokerberos apenas verifica o valor do seguinte:

Se estiver usando a opção --config com um arquivo de configuração que também contenha esses valores, os valores setParameter substituirão os valores do arquivo de configuração.

Válido no modo servidor e no modo modo .

--host <hostname>

Especifique o nome de host do servidor MongoDB ao qual se conectar ao testar a autenticação.

Se --host não for especificado, mongokerberos não realizará nenhuma validação de DNS do nome do host (ou seja verificação do registro PTR)

Válido apenas no modo cliente.

--username <username>, -u <username>

Nome de usuário para mongokerberos usar ao tentar a autenticação Kerberos. Este valor é necessário ao executar no modo cliente.

Válido apenas no modo cliente.

--gssapiServiceName <servicename>

padrão: 'MongoDB '

Nome principal de serviço a ser usado ao autenticar usando GSSAPI/Kerberos.

Válido apenas no modo cliente.

--gssapiHostName <hostname>

Nome de host remoto a ser usado para fins de autenticação GSSAPI/Kerberos.

Válido apenas no modo cliente.

Voltar

mongos.exe