Red Hat Enterprise Linux 仮想マシンを Microsoft Entra Domain Services マネージド ドメインに参加させる

ユーザーが 1 つの資格情報セットを使用して Azure の仮想マシン (VM) にサインインできるようにするには、VM を Microsoft Entra Domain Services マネージド ドメインに参加させることができます。 VM を Domain Services マネージド ドメインに参加させると、ドメインのユーザー アカウントと資格情報を使用して、サーバーのサインインと管理を行うことができます。 マネージド ドメインからのグループ メンバーシップも適用され、VM 上のファイルまたはサービスへのアクセスを制御できます。

この記事では、Red Hat Enterprise Linux (RHEL) VM をマネージド ドメインに参加させる方法について説明します。

前提 条件

このチュートリアルを完了するには、次のリソースと特権が必要です。

  • アクティブな Azure サブスクリプション。
    • Azure サブスクリプションをお持ちでない場合は、アカウント を作成
  • サブスクリプションに関連付けられている Microsoft Entra テナント。オンプレミスディレクトリまたはクラウド専用ディレクトリと同期されます。
  • Microsoft Entra Domain Services の管理ドメインが有効化され、Microsoft Entra テナントで構成済みです。
  • マネージド ドメインの一部であるユーザー アカウント。
  • Active Directory で競合を引き起こす可能性のある名前の切り捨てを回避するために、最大 15 文字の一意の Linux VM 名。

RHEL Linux VM を作成して接続する

Azure に既存の RHEL Linux VM がある場合は、SSH を使用して接続し、次の手順に進み、VM の構成を開始

RHEL Linux VM を作成する必要がある場合、またはこの記事で使用するテスト VM を作成する場合は、次のいずれかの方法を使用できます。

VM を作成するときは、仮想ネットワークの設定に注意して、VM がマネージド ドメインと通信できることを確認します。

  • Microsoft Entra Domain Services を有効にしたのと同じ仮想ネットワークまたはピアリングされた仮想ネットワークに VM をデプロイします。
  • MICROSOFT Entra Domain Services マネージド ドメインとは異なるサブネットに VM をデプロイします。

VM がデプロイされたら、手順に従って SSH を使用して VM に接続します。

hosts ファイルを構成する

VM ホスト名がマネージド ドメイン用に正しく構成されていることを確認するには、/etc/hosts ファイルを編集し、ホスト名を設定します。

Bash
sudo vi /etc/hosts

hosts ファイルで、localhost アドレスを更新します。 次の例では、

  • aaddscontoso.com は、マネージド ドメインの DNS ドメイン名です。
  • rhel は、マネージド ドメインに参加している RHEL VM のホスト名です。

次の名前をあなた自身の値で更新します。

config
127.0.0.1 rhel rhel.aaddscontoso.com

完了したら、エディターの :wq コマンドを使用して、hosts ファイルを保存して終了します。

重要

Red Hat Enterprise Linux 6.X と Oracle Linux 6.x は既に EOL であることを考慮してください。 RHEL 6.10 は ELS サポート 利用できます。は 2024 年 6 月 6 日に終了

必要なパッケージをインストールする

VM をマネージド ドメインに参加させるために、いくつかの追加パッケージが必要です。 これらのパッケージをインストールして構成するには、yumを使用してドメイン参加ツールを更新してインストールします。

Bash
sudo yum install adcli sssd authconfig krb5-workstation

VM をマネージド ドメインに参加させる

必要なパッケージが VM にインストールされたら、VM をマネージド ドメインに参加させます。

  1. adcli info コマンドを使用してマネージド ドメインを検出します。 次の例では、領域 ADDDSCONTOSO.COMを検出します。 大文字で独自の管理されたドメイン名を指定してください。

    Bash
    sudo adcli info aaddscontoso.com
    

    adcli info コマンドでマネージド ドメインが見つからない場合は、次のトラブルシューティング手順を確認してください。

    • ドメインが VM から到達可能であることを確認します。 肯定的な応答が返されるかどうかを確認するには、ping aaddscontoso.com を試してください。
    • VM が、マネージド ドメインが使用可能な同じ仮想ネットワークまたはピアリングされた仮想ネットワークにデプロイされていることを確認します。
    • 仮想ネットワークの DNS サーバー設定が、マネージド ドメインのドメイン コントローラーを指すよう更新されていることを確認します。
  2. 最初に、adcli join コマンドを使用してドメインに参加します。このコマンドにより、マシンを認証するための keytab も作成されます。 マネージド ドメインの一部であるユーザー アカウントを使用します。

    Bash
    sudo adcli join aaddscontoso.com -U contosoadmin
    
  3. 次に、/ect/krb5.conf を構成し、aaddscontoso.com Active Directory ドメインを使用する /etc/sssd/sssd.conf ファイルを作成します。 AADDSCONTOSO.COM が独自のドメイン名に置き換えられたことを確認します。

    エディターで /etc/krb5.conf ファイルを開きます。

    Bash
    sudo vi /etc/krb5.conf
    

    次のサンプルに一致するように krb5.conf ファイルを更新します。

    config
    [logging]
     default = FILE:/var/log/krb5libs.log
     kdc = FILE:/var/log/krb5kdc.log
     admin_server = FILE:/var/log/kadmind.log
    
    [libdefaults]
     default_realm = AADDSCONTOSO.COM
     dns_lookup_realm = true
     dns_lookup_kdc = true
     ticket_lifetime = 24h
     renew_lifetime = 7d
     forwardable = true
    
    [realms]
     AADDSCONTOSO.COM = {
     kdc = AADDSCONTOSO.COM
     admin_server = AADDSCONTOSO.COM
     }
    
    [domain_realm]
     .AADDSCONTOSO.COM = AADDSCONTOSO.COM
     AADDSCONTOSO.COM = AADDSCONTOSO.COM
    

    /etc/sssd/sssd.conf ファイルを作成します。

    Bash
    sudo vi /etc/sssd/sssd.conf
    

    次のサンプルに一致するように sssd.conf ファイルを更新します。

    config
    [sssd]
     services = nss, pam, ssh, autofs
     config_file_version = 2
     domains = AADDSCONTOSO.COM
    
    [domain/AADDSCONTOSO.COM]
    
     id_provider = ad
    
  4. /etc/sssd/sssd.conf アクセス許可が 600 であり、ルート ユーザーによって所有されていることを確認します。

    Bash
    sudo chmod 600 /etc/sssd/sssd.conf
    sudo chown root:root /etc/sssd/sssd.conf
    
  5. authconfig を使用して、AD Linux 統合について VM に指示します。

    Bash
    sudo authconfig --enablesssd --enablesssd auth --update
    
  6. sssd サービスを開始して有効にします。

    Bash
    sudo service sssd start
    sudo chkconfig sssd on
    

VM がドメイン参加プロセスを正常に完了できない場合は、VM のネットワーク セキュリティ グループが、TCP + UDP ポート 464 でマネージド ドメインの仮想ネットワーク サブネットへの送信 Kerberos トラフィックを許可していることを確認します。

次に、getent を使用してユーザー AD 情報に対してクエリを実行できるかどうかを確認します

Bash
sudo getent passwd contosoadmin

SSH のパスワード認証を許可する

既定では、ユーザーは SSH 公開キーベースの認証を使用してのみ VM にサインインできます。 パスワードベースの認証が失敗します。 VM をマネージド ドメインに参加させる場合、これらのドメイン アカウントではパスワードベースの認証を使用する必要があります。 次のように、パスワードベースの認証を許可するように SSH 構成を更新します。

  1. エディターで sshd_conf ファイルを開きます。

    Bash
    sudo vi /etc/ssh/sshd_config
    
  2. PasswordAuthentication の行を はいに更新します。

    config
    PasswordAuthentication yes
    

    完了したら、エディターの :wq コマンドを使用して、sshd_conf ファイルを保存して終了します。

  3. 変更を適用し、ユーザーがパスワードを使用してサインインできるようにするには、RHEL ディストリビューション バージョンの SSH サービスを再起動します。

    Bash
    sudo service sshd restart
    

"AAD DC Administrators" グループに sudo 特権を付与する

AAD DC Administrators のメンバーに RHEL VM のグループ管理特権 付与するには、/etc/sudoersにエントリを追加します。 追加すると、AAD DC Administrators グループのメンバーは、RHEL VM で sudo コマンドを使用できます。

  1. 編集のために sudoers ファイルを開きます。

    Bash
    sudo visudo
    
  2. /etc/sudoers ファイルの末尾 次のエントリを追加します。 AAD DC Administrators グループには名前に空白が含まれているため、グループ名に円記号エスケープ文字を含めます。 aaddscontoso.comなど、独自のドメイン名を追加します。

    config
    # Add 'AAD DC Administrators' group members as admins.
    %AAD\ DC\ Administrators@aaddscontoso.com ALL=(ALL) NOPASSWD:ALL
    

    完了したら、エディターの :wq コマンドを使用してエディターを保存して終了します。

ドメイン アカウントを使用して VM にサインインする

VM がマネージド ドメインに正常に参加していることを確認するには、ドメイン ユーザー アカウントを使用して新しい SSH 接続を開始します。 ホーム ディレクトリが作成され、ドメインのグループ メンバーシップが適用されていることを確認します。

  1. コンソールから新しい SSH 接続を作成します。 contosoadmin@aaddscontoso.com などの ssh -l コマンドを使用してマネージド ドメインに属するドメイン アカウントを使用し、VM のアドレス (rhel.aaddscontoso.comなど) を入力します。 Azure Cloud Shell を使用する場合は、内部 DNS 名ではなく、VM のパブリック IP アドレスを使用します。

    Bash
    ssh -l contosoadmin@AADDSCONTOSO.com rhel.aaddscontoso.com
    
  2. VM に正常に接続したら、ホーム ディレクトリが正しく初期化されたことを確認します。

    Bash
    pwd
    

    ユーザー アカウントと一致する独自のディレクトリを持つ /home ディレクトリに存在する必要があります。

  3. 次に、グループ メンバーシップが正しく解決されていることを確認します。

    Bash
    id
    

    マネージド ドメインのグループ メンバーシップが表示されます。

  4. AAD DC Administrators グループのメンバーとして VM にサインインした場合は、sudo コマンドを正しく使用できることを確認します。

    Bash
    sudo yum update
    

次の手順

VM をマネージド ドメインに接続したり、ドメイン アカウントを使用してサインインしたりする際に問題が発生した場合は、「ドメイン参加の問題のトラブルシューティング」を参照してください。