adutil - Active Directory ユーティリティの概要

対象:Linux 上の SQL Server

adutil ツールは、SQL Server on LinuxとコンテナーのWindows Active Directory ドメインを構成および管理するためのコマンド ライン インターフェイス (CLI) ユーティリティです。 Active Directoryを管理するために、Windowsマシンと Linux マシンを切り替える必要がなくなります。

adutil のサポートは、SQL Serverユース ケースのみに限定されます。 ktpass などの他のユーティリティを使用して、Active Directory認証を有効にすることもできます(Tutorial: SQL Server on Linux

開始する前に、Active Directory ドメインに既に参加しているホストに adutil をダウンロードしてください。

adutil ツールは、一連のコマンドおよびサブコマンドとして設計されていて、さらに追加の入力としてフラグを指定することができます。 各最上位コマンドは、管理機能のカテゴリを表します。 そのカテゴリ内の各サブコマンドは操作です。 この記事では、 adutil をダウンロードして使用を開始する方法について説明します。

Secure Sockets Layer (SSL) 経由で LDAP 用に adutil を構成する

ライトウェイト ディレクトリ アクセス プロトコル (LDAP) ではなく、SSL 経由のライトウェイト ディレクトリ アクセス プロトコル (LDAPS) を使用する必要があります。 LDAP の詳細については、「 ライトウェイト ディレクトリ アクセス プロトコル (LDAP)」を参照してください。

useLdaps構成ファイルにtrueするようにadutil.json オプションを設定できます。 ユーザーの下で mssql を実行すると、構成ファイルは /var/opt/mssql/.adutil/adutil.json にあります。 この JSON コード サンプルでは、設定を構成する方法を示します。

{
    "useLdaps": "true"
}

既定では、useLdapsfalseです。 この設定を構成し、mssql-conf を使用して keytab (キー テーブル) を作成する場合は、ユーザーとして mssql を実行していることを確認します。 次のコマンドを実行して、 mssql ユーザーに切り替えます。

sudo su mssql

mssql-conf を使用して keytab を設定するには、「 mssql-conf を使用してSQL Server サービス keytab ファイルを作成する」を参照してください。

adutil をインストールする

インストール中にエンド ユーザー ライセンス契約 (EULA) に同意しない場合は、 adutil コマンドを初めて実行するときに、 --accept-eula フラグ (すべてのディストリビューション) で実行する必要があります。

  1. Microsoft Red Hat リポジトリ構成ファイルをダウンロードします。

    RHEL 10

    sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/10/prod.repo
    

    RHEL 9

    sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/9/prod.repo
    

    RHEL 8

    sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/8/prod.repo
    
  2. 以前のプレビュー バージョンの adutil をインストールした場合は、次のコマンドを使用して古い adutil パッケージを削除します。

    sudo yum remove adutil-preview
    
  3. adutil をインストールするには次のコマンドを実行します。 ACCEPT_EULA=Y により、adutil の EULA が受け入れられます。 EULA は /usr/share/adutil/にあります。

    sudo ACCEPT_EULA=Y yum install -y adutil
    

adutil を使用してWindows Active Directoryを管理する

adutil を使用するには、kinit コマンドと特権ドメイン アカウントを使用して Kerberos TGT (チケット許可チケット) を取得または更新する必要があります。 使用するアカウントには、ドメイン上でアカウントとサービス プリンシパル名 (SPN) を作成するためのアクセス許可が割り当てられている必要があります。

次の例は、 adutil を使用して実行できる一般的なアクティビティを示しています。 最上位のコマンドの一覧を表示するには、「adutil --help」と入力します。

adutil --help

次の出力が表示されます。

adutil - A general AD utility
  Usage:
    adutil [account|delegation|group|keytab|machine|ou|spn|user|config]
  Subcommands:
    account      Functions for generic account operations
    delegation   Functions for configuring delegation permissions
    group        Functions for group management
    keytab       Functions for keytab management
    machine      Functions for managing machine accounts
    ou           Functions for managing organizational units
    spn          Functions for service principal name (SPN) management
    user         Functions for user account management
    config       Functions for modifying adutil configuration
  Flags:
       --version       Displays the program version string.
    -h --help          Displays help with available flag, subcommand, and positional value parameters.
    -d --debug         Display additional debugging information when making LDAP/Kerberos calls.
       --accept-eula   Accepts the current EULA for adutil. This has no effect if the EULA has already been accepted.

下位レベルのコマンドに関するヘルプを表示するには、次の例を使用します。

  • spn コマンド:

    adutil spn --help
    
  • spn search コマンド:

    adutil spn search --help
    

サンプル

各コマンドはドキュメントに記載されているので、すぐに開始できます。 SQL Server on LinuxおよびコンテナーのActive Directory認証を構成または管理するときにadutilが使用される一般的な活動のいくつかを次に示します。

  • Active Directoryでアカウントを作成します。

    adutil user create --name sqluser --distname CN=sqluser,CN=Users,DC=CONTOSO,DC=COM
    
  • アカウントまたはサービスに関連付けられた SPN を作成する:

    adutil spn addauto -n sqluser -s MSSQLSvc -H mymachine.contoso.com -p 1433
    
  • adutil を使用して keytab を作成する:

    adutil keytab createauto -k /var/opt/mssql/secrets/mssql.keytab -p 1433 -H mymachine.contoso.com --password '<password>' -s MSSQLSvc
    

    注意事項

    パスワードは、既定SQL Server password ポリシーに従う必要があります。 既定では、パスワードの長さは少なくとも 8 文字で、大文字、小文字、10 進数の数字、記号の 4 種類のうち 3 種類を含んでいる必要があります。 パスワードには最大 128 文字まで使用できます。 パスワードはできるだけ長く、複雑にします。

詳細については、を使用した man adutil リファレンスのマニュアル ページを参照してください。