Docs Menu

mongokerberos

MongoDB Enterprisemongokerberos は、実行中の Kerberos 配置に対して MongoDB の Kerberos と GSSAPI 構成オプション をテストするための を提供します。mongokerberosは、サーバークライアントの 2 つのモードのいずれかで使用できます。

モード
説明

サーバー

サーバーモードでは、 はサーバー上の Kerberos 関連の構成を分析し、問題のある構成に関するエラー メッセージを含むレポートを返します。使用方法については、「 サーバーmongokerberos モード 」を参照してください。

クライアント

クライアントモードでは、 は指定されたユーザー名の Kerberos認証をテストし、Kerberos認証手順の各ステップの成功または失敗を含むレポートを返します。使用方法については、「 クライアントmongokerberos モード 」を参照してください。

両方のモードのエラー メッセージには、発生した特定のエラーに関する情報と、エラーを解決するための潜在的なアドバイスが含まれています。

mongokerberos は、サーバー モードとクライアント モードの両方で次の配置タイプをサポートします。

注意

MongoDB Enterprise およびmongokerberos MIT 実装 のみをサポートします Kerberos の

一般に、 Kerberos 認証に関連するオプションを構成するときは、 mongokerberosを使用して構成を確認することをお勧めします。

mongokerberosはテストおよび検証ツールです。ファイルを編集したり、サービスを構成したりしません。 プラットフォームで Kerberos を構成する方法については、 MIT Kerberos のドキュメント を参照してください。 、またはプラットフォームのドキュメント。Kerberos を使用して認証するように MongoDB を構成する場合は、次のチュートリアルを参照してください。

このドキュメントでは、 mongokerberosの全コマンド ライン オプションに関する全体像を説明します。

mongokerberosツールはMongoDB Database Tools Extraパッケージの一部であり、MongoDB Server を使用してまたはスタンドアロン インストールとしてインストールできます。

MongoDB Enterprise Server インストールの一部としてmongokerberosをインストールするには次のようにします。

  • プラットフォームの手順に従ってください: MongoDB Enterprise Server をインストールする

  • インストールが完了すると、 mongokerberosおよびその他の含まれるツールは、サーバーと同じロケーションで利用できるようになります。

    注意

    Windows .msiインストーラー ウィザードの場合、 Completeインストール オプションにはmongokerberosが含まれます。

mongokerberosをスタンドアロン インストールとしてインストールするには:

  • MongoDB Enterpriseのダウンロード リンクをクリックしますMongoDB Enterpriseダウンロード センター

  • ドロップダウン メニューからPlatform (オペレーティング システム)を選択し、次のチャートに従ってプラットフォームに適したPackageを選択します。

    OS
    パッケージ

    Linux

    tgz パッケージ

    Windows

    zip パッケージ

    MacOS

    tgz パッケージ

  • ダウンロードしたら、アーカイブを解凍し、 mongokerberosをハードドライブのロケーションにコピーします。

    Tip

    Linux と macOS ユーザーは、 $PATH環境変数で定義されているファイルシステムのロケーション/usr/binなど)にmongokerberosをコピーする場合があります。 こうすると、フルパスを指定したり、最初に親ディレクトリに移動したりすることなく、コマンドラインでmongokerberosを名前で直接参照できるようになります。 詳細については、ご使用プラットフォームのインストール ガイドを参照してください。

mongokerberosは、サーバークライアントの 2 つのモードで実行できます。

mongosh ではなく、システムコマンドラインからmongokerberosを実行します

サーバーモードでmongokerberosを実行すると、適切な DNS 解決のチェック、Kerberos システムキータブファイルの検証、 mongodまたはmongosの MongoDB サービスプリンシパルに対するテストなど、システムの Kerberos 構成に対して一連の検証手順が実行されます。インスタンス。

サーバーモードでmongokerberosを使用する前に、次の操作を行う必要があります。

  1. プラットフォームのドキュメントに従って、プラットフォーム上で Kerberos を構成します。

  2. 次の手順に従って、 mongodまたはmongosインスタンスで使用する MongoDB サービス プリンシパルを作成します。

これらの手順を完了したら、次のように--serverフラグを使用してサーバーモードでmongokerberosを実行できます。

mongokerberos --server

Kerberos がサーバー上で適切に構成され、サービス プリンシパルが正常に作成された場合、出力は次のようになります。

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.

最後のメッセージは、システムの Kerberos 構成が MongoDB で使用する準備ができていることを示しています。 構成でエラーが発生した場合、それらは上記の出力の一部として表示されます。

クライアント モードでmongokerberosを実行すると、システムの Kerberos 環境に対する認証がテストされ、DNS 解決のチェック、Kerberos クライアントキータブ ファイルの検証、チケットが正常に付与できるかどうかのテストなど、Kerberos 認証プロセスの各ステップが実行されます。 クライアントモードでmongokerberosを実行すると、 mongoshのクライアント認証手順がシミュレートされます。

クライアントモードでmongokerberosを使用する前に、まずプラットフォームで Kerberos を構成する必要があります。 オプションで、クライアント モードを使用する前に、まず サーバーmongokerberos モード で を実行してプラットフォームの Kerberos 構成が有効であることを確認することもできます。

これらの手順を完了したら、次のように--clientフラグを使用して、クライアントモードでmongokerberosを実行し、ユーザー認証をテストできます。

mongokerberos --client --username <username>

認証手順の一部として Kerberos チケットをリクエストするために使用される有効なユーザー名を指定する必要があります。 プラットフォームの Kerberos インフラストラクチャは、このユーザーを認識している必要があります。

提供された認証情報が有効で、構成ファイルの Kerberos オプションが有効な場合、出力は次のようになります。

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.

最後のメッセージは、提供されたユーザーに対してクライアント認証が正常に完了したことを示します。 認証ステップ中にエラーが発生した場合、そのエラーは上記の出力の一部として表示されます。

--server

サーバーモードでmongokerberosを実行し、プラットフォームの Kerberos 構成が MongoDB で使用できるかどうかをテストします。

使用例と予想される出力については、「サーバー モード 」を参照してください。

--client

クライアントモードでmongokerberosを実行し、システムの Kerberos 環境に対するクライアント認証をテストします。 クライアント モードで実行する場合は、 --usernameで有効なユーザー名を指定する必要があります。 mongokerberosは、検証手順の一環として、このユーザー名に対して Kerberos チケットをリクエストします。 クライアントモードでmongokerberosを実行すると、 mongoshのクライアント認証手順がシミュレートされます。

使用例と予想される出力については、「クライアント モード 」を参照してください。

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

ランタイム設定オプション用の構成ファイルを指定します。 オプションは、コマンドラインの設定オプションと同じです。 詳細については、 自己管理型構成ファイルのオプションを参照してください。

mongokerberosは、このファイルからsaslHostNamesaslServiceNameの値を読み取ります(存在する場合)。 これらの値は、代わりに--setParameterオプションを使用して指定することもできます。

構成ファイルでは ASCII エンコードを使用するようにしてください。 mongokerberosインスタンスは、UTF- 8など、非 ASCII エンコードの構成ファイルをサポートしていません。

サーバー モードでのみ有効です。

--setParameter <options>

構成可能なパラメーターを設定します。 複数のsetParameterフィールドを指定できます。

setParameterではサポートされているパラメータを使用できますが、 mongokerberosは次の値のみをチェックします。

これらの値も含む構成ファイルで--configオプションを使用すると、 setParameterの値が構成ファイルの値を上書きします。

サーバー モードクライアント モードの両方で有効です。

--host <hostname>

認証テスト時に接続する MongoDB サーバーのホスト名を指定します。

--hostが指定されていない場合、 mongokerberosはホスト名(つまり PTR レコード検証)

クライアント モードでのみ有効です。

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

Kerberos 認証を試行するときに使用するmongokerberosのユーザー名。 この値は、クライアント モードで実行する場合に必要です。

クライアント モードでのみ有効です。

--gssapiServiceName <servicename>

デフォルト: ' MongoDB '

GSSAPI/Kerberos を使用して認証するときに使用するサービスプリンシパル名。

クライアント モードでのみ有効です。

--gssapiHostName <hostname>

GSSAPI/Kerberos 認証に使用するリモート ホスト名。

クライアント モードでのみ有効です。