SUSE Linux Enterprise 仮想マシンを Microsoft Entra Domain Services のマネージド ドメインに参加させる
ユーザーが 1 セットの資格情報を使用して Azure の仮想マシン (VM) にサインインできるようにするには、Microsoft Entra Domain Services のマネージド ドメインに VM を参加させます。 VM を Domain Services のマネージド ドメインに参加させると、ドメインのユーザー アカウントと資格情報を使用して、サーバーにサインインして管理することができます。 マネージド ドメインのグループ メンバーシップも適用され、VM 上のファイルまたはサービスへのアクセスを制御できるようになります。
この記事では、SUSE Linux Enterprise (SLE) VM をマネージド ドメインに参加させる方法について説明します。
前提条件
このチュートリアルを完了するには、以下のリソースと特権が必要です。
- 有効な Azure サブスクリプション
- Azure サブスクリプションをお持ちでない場合は、アカウントを作成してください。
- ご利用のサブスクリプションに関連付けられた Microsoft Entra テナント (オンプレミス ディレクトリまたはクラウド専用ディレクトリと同期されていること)。
- 必要に応じて、Microsoft Entra テナントを作成するか、ご利用のアカウントに Azure サブスクリプションを関連付けます。
- Microsoft Entra テナントで有効にされていて、構成されている Microsoft Entra Domain Services マネージド ドメイン。
- 必要であれば、1 つ目のチュートリアルで Microsoft Entra Domain Services のマネージド ドメインを作成して構成します。
- マネージド ドメインの一部であるユーザー アカウント。
- 名前の切り詰めによって生じる Active Directory での競合を防ぐため、最大 15 文字の一意の Linux VM 名。
SLE Linux VM を作成してそれに接続する
Azure に SLE Linux VM が既にある場合は、SSH を使用してそれに接続した後、次の手順に進んで VM の構成を開始します。
SLE Linux VM を作成する必要がある場合、またはこの記事で使用するためのテスト VM を作成する場合は、次のいずれかの方法を使用できます。
VM を作成するときは、VM がマネージド ドメインと通信できるように、仮想ネットワークの設定に注意してください。
- Microsoft Entra Domain Services を有効にしたのと同じ仮想ネットワーク、またはピアリングされた仮想ネットワークに、VM をデプロイします。
- VM を Microsoft Entra Domain Services のマネージド ドメインとは異なるサブネットにデプロイします。
VM をデプロイした後、SSH を使用して VM に接続する手順に従います。
hosts ファイルを構成する
マネージド ドメインに対して VM ホスト名が正しく構成されていることを確認するには、 /etc/hosts ファイルを編集して、ホスト名を設定します。
sudo vi /etc/hosts
hosts ファイルで、localhost アドレスを更新します。 次の例では
- aaddscontoso.com は、マネージド ドメインの DNS ドメイン名です。
- linux-q2gr は、マネージド ドメインに参加している SLE VM のホスト名です。
これらの名前を実際の値に更新します。
127.0.0.1 linux-q2gr linux-q2gr.aaddscontoso.com
終わったら、エディターの :wq
コマンドを使用して、hosts ファイルを保存して終了します。
SSSD を使用して VM をマネージド ドメインに参加させる
SSSD と YaST の User Logon Management モジュールを使用してマネージド ドメインに参加するには、次の手順を行います。
YaST の User Logon Managementモジュールをインストールします。
sudo zypper install yast2-auth-client
YaST を開きます。
後で DNS 自動検出を正常に実行するには、マネージド ドメインの IP アドレス ("Active Directory サーバー") をクライアントのネーム サーバーとして構成します。
YaST で、[システム] > [ネットワーク設定] の順に選択します。
[ホスト名/DNS] タブを選択し、テキスト ボックス [ネーム サーバー 1] にマネージド ドメインの IP アドレスを入力します。 これらの IP アドレスは、ご利用のマネージド ドメインの Microsoft Entra 管理センターで [プロパティ] ウィンドウに表示されます (例: 10.0.2.4、10.0.2.5)。
ご自分のマネージド ドメインの IP アドレスを追加し、 [OK] を選択します。
YaST のメイン ウィンドウで、 [ネットワーク サービス]>[User Logon Management] の順に選択します。
次のスクリーンショット例で示すように、このモジュールでは、コンピューターのさまざまなネットワーク プロパティと現在使用されている認証方法を示す概要が表示されます。
編集を開始するには、 [設定の変更] を選択します。
VM をマネージド ドメインに参加させるには、次の手順を行います。
ダイアログ ボックスで、 [ドメインの追加] を選択します。
正しい "ドメイン名" (例: aaddscontoso.com) を指定し、データの識別と認証に使用するサービスを指定します。 両方について、 [Microsoft Active Directory] を選択します。
[ドメインを有効にする] オプションが選択されていることを確認します。
準備ができたら [OK] を選択します。
次のダイアログで既定の設定を受け入れ、 [OK] を選択します。
VM では、必要に応じて追加のソフトウェアがインストールされ、マネージド ドメインが使用可能かどうかが確認されます。
すべてが正しい場合、次の例のダイアログが表示され、VM によってマネージド ドメインが検出されたが、"まだ登録されていない" ことを示します。
ダイアログで、マネージド ドメインに参加するユーザーの [ユーザー名] と "パスワード" を指定します。 必要に応じて、Microsoft Entra ID のグループにユーザー アカウントを追加します。
現在のドメインが Samba に対して有効であることを確認するには、 [Overwrite Samba configuration to work with this AD]\(この AD で動作するように Samba の構成を上書きする\) をアクティブ化します。
登録するには、 [OK] を選択します。
正常に登録されたことを確認するメッセージが表示されます。 完了するには、 [OK] を選択します。
VM をマネージド ドメインに登録した後、次のスクリーンショット例で示すように、 [ドメイン ユーザー ログオンの管理] を使用してクライアントを構成します。
マネージド ドメインによって提供されたデータを使用したサインインを許可するには、 [ドメイン ユーザー ログオンを許可する] をオンにします。
必要に応じて、 [ドメイン データ ソースを有効にする] で、ご利用の環境に必要な追加のデータ ソースをオンにします。 これらのオプションとしては、sudoの使用を許可するユーザーや使用可能なネットワーク ドライブなどがあります。
マネージド ドメイン内のユーザーが VM でホーム ディレクトリを持つことを許可するには、 [ホーム ディレクトリを作成する] ボックスをオンにします。
サイド バーで、 [サービス オプション]、[名前] スイッチ、 [拡張オプション] の順に選択します。 そのウィンドウで、 [fallback_homedir] または [override_homedir] を選択し、 [追加] を選択します。
ホーム ディレクトリの場所の値を指定します。 ホーム ディレクトリを /home/USER_NAME の形式に従って作成するには、 /home/%uを使用します。 使用可能な変数の詳細については、override_homedirセクションの sssd.conf man ページ (
man 5 sssd.conf
) を参照してください。[OK] を選択します。
変更を保存するには、 [OK] を選択します。 その後、ここで表示される値が正しいことを確認します。 ダイアログを終了するには、 [キャンセル] を選択します。
SSSD と Winbind を同時に実行する予定があれば (SSSD を使用して参加するが、Samba ファイル サーバーを実行する場合など)、smb.conf で Samba オプションの kerberos method を secrets and keytab に設定する必要があります。 さらに、sssd.conf で SSSD オプション ad_update_samba_machine_account_password を true に設定する必要もあります。 これらのオプションは、システムのキータブが同期しなくなるのを防ぎます。
Winbind を使用して VM をマネージド ドメインに参加させる
winbind と YaST の Windows Domain Membership モジュールを使用してマネージド ドメインに参加するには、次の手順を行います。
YaST で、[ネットワーク サービス] > [Windows Domain Membership] の順に選択します。
[Windows Domain Membership] 画面の [ドメインまたはワークグループ] で、参加するドメインを入力します。 マネージド ドメイン名 (例: aaddscontoso.com) を入力します。
Linux 認証に SMB ソースを使用するには、 [Linux 認証に SMB 情報を使用する] オプションをオンにします。
VM 上にマネージド ドメイン ユーザーのローカル ホーム ディレクトリを自動的に作成するには、 [ログイン時にホーム ディレクトリを作成する] オプションをオンにします。
マネージド ドメインが一時的に使用できない場合でもドメイン ユーザーがサインインするのを許可するには、 [オフライン認証] オプションをオンにします。
Samba ユーザーおよびグループの UID と GID の範囲を変更するには、 [エキスパート設定] を選択します。
[NTP 構成] を選択して、マネージド ドメインのネットワーク タイム プロトコル (NTP) 時刻の同期を構成します。 マネージド ドメインの IP アドレスを入力します。 これらの IP アドレスは、ご利用のマネージド ドメインの Microsoft Entra 管理センターで [プロパティ] ウィンドウに表示されます (例: 10.0.2.4、10.0.2.5)。
[OK] を選択し、入力を要求されたら、ドメイン参加を確認します。
マネージド ドメインの管理者パスワードを入力し、 [OK] を選択します。
マネージド ドメインに参加すると、デスクトップまたはコンソールのディスプレイ マネージャーを使用してワークステーションからサインインできます。
YaST コマンド ライン インターフェイスから Winbind を使用して VM をマネージド ドメインに参加させる
winbind と YaST コマンド ライン インターフェイスを使用してマネージド ドメインに参加させるには:
ドメインに参加する:
sudo yast samba-client joindomain domain=aaddscontoso.com user=<admin> password=<admin password> machine=<(optional) machine account>
ターミナルから Winbind を使用して VM をマネージド ドメインに参加させる
winbind と samba net
コマンドを使用してマネージド ドメインに参加させるには:
kerberos クライアントと samba-winbind をインストールする:
sudo zypper in krb5-client samba-winbind
構成ファイルを編集する:
/etc/samba/smb.conf
[global] workgroup = AADDSCONTOSO usershare allow guests = NO #disallow guests from sharing idmap config * : backend = tdb idmap config * : range = 1000000-1999999 idmap config AADDSCONTOSO : backend = rid idmap config AADDSCONTOSO : range = 5000000-5999999 kerberos method = secrets and keytab realm = AADDSCONTOSO.COM security = ADS template homedir = /home/%D/%U template shell = /bin/bash winbind offline logon = yes winbind refresh tickets = yes
/etc/krb5.conf
[libdefaults] default_realm = AADDSCONTOSO.COM clockskew = 300 [realms] AADDSCONTOSO.COM = { kdc = PDC.AADDSCONTOSO.COM default_domain = AADDSCONTOSO.COM admin_server = PDC.AADDSCONTOSO.COM } [domain_realm] .aaddscontoso.com = AADDSCONTOSO.COM [appdefaults] pam = { ticket_lifetime = 1d renew_lifetime = 1d forwardable = true proxiable = false minimum_uid = 1 }
/etc/security/pam_winbind.conf
[global] cached_login = yes krb5_auth = yes krb5_ccache_type = FILE warn_pwd_expire = 14
/etc/nsswitch.conf
passwd: compat winbind group: compat winbind
Microsoft Entra ID と Linux の日時が同期していることを確認します。これを行うには、Microsoft Entra サーバーを NTP サービスに追加します。
/etc/ntp.conf
に次の行を追加します。server aaddscontoso.com
NTP サービスを再起動する:
sudo systemctl restart ntpd
ドメインに参加する:
sudo net ads join -U Administrator%Mypassword
Linux のプラグ可能な認証モジュール (PAM) でログイン ソースとして winbind を有効にします。
config pam-config --add --winbind
ユーザーがログインできるように、ホーム ディレクトリの自動作成を有効にします。
sudo pam-config -a --mkhomedir
winbind サービスを開始し、有効にします。
sudo systemctl enable winbind sudo systemctl start winbind
SSH のパスワード認証を許可する
既定では、ユーザーは SSH 公開キーベースの認証を使用することによってのみ、VM にサインインできます。 パスワードベースの認証は失敗します。 VM をマネージド ドメインに参加させるときは、これらのドメイン アカウントでパスワードベースの認証を使用する必要があります。 次のようにして、パスワードベースの認証を許可するように SSH の構成を更新します。
エディターで sshd_conf ファイルを開きます。
sudo vi /etc/ssh/sshd_config
PasswordAuthentication の行を yes に更新します。
PasswordAuthentication yes
終わったら、エディターの
:wq
コマンドを使用して、sshd_conf ファイルを保存して終了します。変更を適用し、ユーザーがパスワードを使用してサインインできるようにするには、SSH サービスを再起動します。
sudo systemctl restart sshd
"AAD DC Administrators" グループに sudo 特権を付与する
AAD DC Administrators グループのメンバーに SLE VM での管理特権を付与するには、 /etc/sudoers にエントリを追加します。 追加した後、AAD DC Administrators グループのメンバーは、SLE VM で sudo
コマンドを使用できるようになります。
sudoers ファイルを編集用に開きます。
sudo visudo
/etc/sudoers ファイルの最後に、次のエントリを追加します。 AAD DC Administrators グループの名前に空白が含まれているため、グループ名に円記号のエスケープ文字を含めます。 独自のドメイン名 (aaddscontoso.com など) を追加します。
# Add 'AAD DC Administrators' group members as admins. %AAD\ DC\ Administrators@aaddscontoso.com ALL=(ALL) NOPASSWD:ALL
終わったら、エディターの
:wq
コマンドを使用してエディターを保存して終了します。
ドメイン アカウントを使用して VM にサインインする
VM がマネージド ドメインに正常に参加したことを確認するには、ドメイン ユーザー アカウントを使用して新しい SSH 接続を開始します。 ホーム ディレクトリが作成されていること、およびドメインのグループ メンバーシップが適用されていることを確認します。
コンソールから新しい SSH 接続を作成します。
ssh -l
コマンドを使用して、マネージド ドメインに属しているドメイン アカウントを使用し (例:contosoadmin@aaddscontoso.com
)、VM のアドレス (例: linux-q2gr.aaddscontoso.com) を入力します。 Azure Cloud Shell を使用する場合は、内部 DNS 名ではなく、VM のパブリック IP アドレスを使用します。sudo ssh -l contosoadmin@AADDSCONTOSO.com linux-q2gr.aaddscontoso.com
VM に正常に接続したら、ホーム ディレクトリが正しく初期化されていることを確認します。
sudo pwd
ユーザー アカウントと一致する独自のディレクトリの /home ディレクトリにいる必要があります。
次に、グループ メンバーシップが正しく解決されていることを確認します。
sudo id
マネージド ドメインからのグループ メンバーシップが表示される必要があります。
AAD DC Administrators グループのメンバーとして VM にサインインした場合は、
sudo
コマンドを正しく使用できることを確認します。sudo zypper update
次のステップ
マネージド ドメインへの VM の接続、またはドメイン アカウントでのサインインに関して問題がある場合は、「ドメイン参加の問題のトラブルシューティング」を参照してください。