4.2. SSSD および winbind での SMB 共有の使用

このセクションでは、SSSD クライアントを使用して、Common Internet File System (CIFS) とも呼ばれる Server Message Block (SMB) プロトコルをベースにした共有にアクセスして、完全に利用する方法を説明します。

注記

Red Hat Enterprise Linux 7.1 より前のバージョンでは、Winbind のみがこの機能を提供していました。Red Hat Enterprise Linux 7.1 以降のバージョンでは、SMB 共有へのアクセスに Winbind と SSSD を並行して実行する必要がなくなりました。たとえば、アクセス制御リスト (ACL) には SSSD クライアント上に Winbind を配置する必要がなくなりました。

重要

SSSD は Winbind が提供するすべてのサービスをサポートするわけではありません。たとえば、SSSD は NT LAN Manager (NTLM) または NetBIOS 名前ルックアップを使用した認証はサポートしません。これらのサービスが必要な場合には、Winbind を使用してください。Identity Management ドメインでは、Kerberos 認証および DNS 名前ルックアップが同じ目的で提供されている点に注意してください。

4.2.1. SSSD と SMB との連携方法

SMB ファイル共有プロトコルは、Windows マシンで幅広く使用されています。Identity Management と Active Directory の間のトラストが設定されている Red Hat Enterprise Linux の環境では、SSSD により、標準の Linux ファイルシステムのように、SMB をシームレスに使用できます。
SMB 共有にアクセスするには、システムは Windows の SID を Linux の POSIX UID と GID に変換する機能が必要です。SSSD クライアントは、SID から ID または SID から名前のアルゴリズムを使用して、この ID マッピングを可能にします。

4.2.2. SMB 共有に SSSD または Winbind を使用するかどうかの判断

SSSD クライアントの多くでは、SSSD の使用を推奨します。
  • Identity Management クライアントは、デフォルトで SSSD を使用して、Active Directory ユーザーを UNIX ユーザーにマッピングします。SMB ID マッピングに、SSSD の代わりに Winbind を使用すると、マッピングで整合性が取られなくなります。
  • Active Directory が直接統合されている環境では、クライアントが一般的な Active Directory ユーザーマッピングに SSSD を使用しますが、このような環境で SSSD の代わりに、SMB ID マッピングの Winbind を使用すると、マッピングに一貫性がなくなる可能性があります。

重要

SSSD は Winbind が提供するすべてのサービスをサポートするわけではありません。たとえば、SSSD は NT LAN Manager (NTLM) または NetBIOS 名前ルックアップを使用した認証はサポートしません。これらのサービスが必要な場合には、Winbind を使用してください。Identity Management ドメインでは、Kerberos 認証および DNS 名前ルックアップが同じ目的で提供されている点に注意してください。

4.2.3. SSSD クライアントからの SMB 共有のアクセス

Samba ドメインに所属する全 SSSD クライアントから SMB 共有にアクセスできます。
システムが SMB 共有へのアクセスに SSSD を使用することを確認するには、 alternatives ユーティリティーを使用します。このユーティリティーは、現在使用するライブラリーを表示します。以下の例では、このシステムは、SSSD ライブラリーを使用します。
# alternatives --list | grep -E cifs\|libwbclient
cifs-idmap-plugin       auto     /usr/lib64/cifs-utils/cifs_idmap_sss.so
libwbclient.so.0.11-64 auto /usr/lib64/sssd/modules/libwbclient.so.0.11.0

4.2.4. SMB 共有アクセス用の SSSD と Winbind の切り替え

この手順では、SSSD クライアントから SMB 共有にアクセスするために使用する Winbind プラグインと、SSSD の間でどのように切り替えるかを説明しています。Winbind が SMB 共有にアクセスできるようにするには、クライアントに cifs-utils パッケージをインストールする必要があります。お使いのマシンに cifs-utils がインストールされていることを確認するには、以下を実行します。
$ rpm -q cifs-utils
  1. オプション: SSSD クライアントから SMB 共有にアクセスするのに SSSD または Winbind のいずれを使用しているかを確認します。
    # alternatives --display cifs-idmap-plugin
    cifs-idmap-plugin - status is auto.
     link currently points to /usr/lib/cifs-utils/cifs_idmap_sss.so
    /usr/lib/cifs-utils/cifs_idmap_sss.so - priority 20
    /usr/lib/cifs-utils/idmapwb.so - priority 10
    Current `best' version is /usr/lib/cifs-utils/cifs_idmap_sss.so.
    SSSD プラグイン (cifs_idmap_sss.so) がインストールされている場合、このプラグインはデフォルトで Winbind プラグイン (idmapwb.so) よりも優先されます。
  2. Windbind プラグインに切り替える前に、Winbind がシステムで実行されていることを確認します。
    # systemctl is-active winbind.service
    active
    SSSD プラグインに切り替える前に、SSSD がシステムで実行されていることを確認します。
    # systemctl is-active sssd.service
    active
  3. 異なるプラグインに切り替えるには、alternatives --set cifs-idmap-pluginコマンドを使用し、必要なプラグインへのパスを指定します。たとえば、Winbind に切り替えるには以下を実行します。
    # alternatives --set cifs-idmap-plugin /usr/lib/cifs-utils/idmapwb.so