Menu Close

2.4. RHEL システムの AD ドメインへの参加

Samba Winbind は、Red Hat Enterprise Linux(RHEL)システムを Active Directory(AD)に接続するための System Security Services Daemon(SSSD)の代替手段です。本セクションでは、realmd を使用して Samba Winbind を設定して、RHEL システムを AD ドメインに参加させる方法を説明します。

手順

  1. AD で Kerberos 認証に非推奨の RC4 暗号化タイプが必要な場合は、RHEL でこの暗号のサポートを有効にします。

    # update-crypto-policies --set DEFAULT:AD-SUPPORT
  2. 以下のパッケージをインストールします。

    # dnf install realmd oddjob-mkhomedir oddjob samba-winbind-clients \
           samba-winbind samba-common-tools samba-winbind-krb5-locator
  3. ドメインメンバーでディレクトリーまたはプリンターを共有するには、samba パッケージをインストールします。

    # dnf install samba
  4. 既存の Samba 設定ファイル /etc/samba/smb.conf をバックアップします。

    # mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
  5. ドメインに参加します。たとえば、ドメイン ad.example.com に参加するには、以下のコマンドを実行します。

    # realm join --membership-software=samba --client-software=winbind ad.example.com

    上記のコマンドを使用すると、realm ユーティリティーが自動的に以下を実行します。

    • ad.example.com ドメインのメンバーシップに /etc/samba/smb.conf ファイルを作成します。
    • ユーザーおよびグループの検索用の winbind モジュールを、/etc/nsswitch.conf ファイルに追加します。
    • /etc/pam.d/ ディレクトリーの PAM (プラグ可能な認証モジュール) 設定ファイルを更新します。
    • winbind サービスを起動し、システムの起動時にサービスを起動できるようにします。
  6. 必要に応じて、/etc/samba/smb.conf ファイルの別の ID マッピングバックエンド、またはカスタマイズした ID マッピングを設定します。

詳細は「 Samba ID マッピングの概要」を参照してください。

  1. /etc/krb5.conf ファイルを編集し、以下のセクションを追加します。

    [plugins]
        localauth = {
            module = winbind:/usr/lib64/samba/krb5/winbind_krb5_localauth.so
            enable_only = winbind
        }
  2. winbind サービスが稼働していることを確認します。

    # systemctl status winbind
    ...
       Active: active (running) since Tue 2018-11-06 19:10:40 CET; 15s ago
    重要

    Samba がドメインのユーザーおよびグループの情報をクエリーできるようにするには、smb を起動する前に winbind サービスを実行する必要があります。

  3. samba パッケージをインストールしてディレクトリーおよびプリンターを共有している場合は、smb サービスを有効化して開始します。

    # systemctl enable --now smb

検証手順

  1. AD ドメインの AD 管理者アカウントなど、AD ユーザーの詳細を表示します。

    # getent passwd "AD\administrator"
    AD\administrator:*:10000:10000::/home/administrator@AD:/bin/bash
  2. AD ドメイン内のドメインユーザーグループのメンバーをクエリーします。

    # getent group "AD\Domain Users"
        AD\domain users:x:10000:user1,user2
  3. オプションで、ファイルやディレクトリーに権限を設定する際に、ドメインのユーザーおよびグループを使用できることを確認します。たとえば、/srv/samba/example.txt ファイルの所有者を AD\administrator に設定し、グループを AD\Domain Users に設定するには、以下のコマンドを実行します。

    # chown "AD\administrator":"AD\Domain Users" /srv/samba/example.txt
  4. Kerberos 認証が期待どおりに機能することを確認します。

    1. AD ドメインメンバーで、administrator@AD.EXAMPLE.COM プリンシパルのチケットを取得します。

      # kinit administrator@AD.EXAMPLE.COM
    2. キャッシュされた Kerberos チケットを表示します。

      # klist
      Ticket cache: KCM:0
      Default principal: administrator@AD.EXAMPLE.COM
      
      Valid starting       Expires              Service principal
      01.11.2018 10:00:00  01.11.2018 20:00:00  krbtgt/AD.EXAMPLE.COM@AD.EXAMPLE.COM
              renew until 08.11.2018 05:00:00
  5. 利用可能なドメインの表示:

    # wbinfo --all-domains
    BUILTIN
    SAMBA-SERVER
    AD

関連情報