Idmap config ad

提供: 雑廉堂Wiki
2018年3月23日 (金) 19:37時点におけるMeisina04 (トーク | 投稿記録)による版 (Sambaバージョン4.6.0より:)

前書き

ad IDマッピングバックエンドは、Active Directory(AD)からアカウントおよびグループ情報を読み取るための読み取り専用API を実装します。 バックエンドはRFC 2307に基づいています。 詳細については、https://www.rfc-editor.org/rfc/rfc2307.txtを参照してください。

代替案については、アイデンティティマッピングバックエンドを参照してください。

adバックエンドのメリットとデメリット

利点:

  • Active Directory(AD)内のIDの中央管理。
  • adバックエンドを使用するすべてのSambaクライアントとサーバ上の一貫したID。
  • 必要な属性は一度作成するだけで済みます。これはユーザーまたはグループの作成時に行うことができます
  • IDは、破損する可能性のあるローカルデータベースに格納されません。したがって、ファイルの所有権は失われません。

欠点:

  • Windowsの「Active Directoryユーザーとコンピュータ」(ADUC)プログラムが使用されていない場合、重複を避けるためにID値を手動で追跡する必要があります。
  • RFC2307属性の値は手動で設定する必要があります。

Winbind NSS infoモード固有の機能:

  • rfc2307:ユーザの個々のログインシェルとホームディレクトリパス。
  • template:ログインシェルとホームディレクトリのベースパスはすべてのユーザで同じです。

ID範囲の計画

smb.confファイルでadバックエンドを設定する前に、ドメインごとに一意のID範囲を選択する必要があります。 範 囲は、Sambaがドメイン内で作成されたすべての将来のユーザとグループのIDを割り当てることができるように、連続していなければなりません 。

前提条件

SambaがActive Directory(AD)からユーザ情報とグループ情報を取得できるようにするには:

  • ユーザは少なくとも uidNumberを持ち、<U+200B><U+200B>gidNumber属性をグループ化していなければなりません。 rfc2307 winbind NSS infoモードを使うとき、ユーザアカウントには loginShellunixHomeDirectoryprimaryGroupIDセットもなければなりません。
  • コンピュータ、または: 'machine network accounts'は、ドメインメンバ上の共有にアクセスするようにuidNumber属性を設定する必要があります。
  • ユーザー、コンピュータ、およびグループIDは、このドメインの smb.confで設定された範囲内でなければなりません。
  • Active Directory Users and Groups(ADUC)ユーティリティを使用してUNIX属性を割り当てる場合は、NIS拡張機能をインストールする必要があります。詳細は、「svradmin/samba4/transdoc/setting_up_rfc2307_in_ad」を参照してください。
  • ユーザーIDとコンピューターIDはすべてのユーザーとコンピューターで一意でなければならず、グループIDはすべてのグループで一意である必要があります。 IDの重複または以前に削除されたアカウントのIDの再利用により、新しいユーザー、コンピュータ、またはグループは、他のまたは以前のID所有者によって作成されたファイルにアクセスできます。 ADUCユーティリティを使用すると、ユーザーおよびグループIDはAD内で自動的に追跡され、新しいユーザーまたはグループの作成時に増分されます。
  • コンピュータID( uidNumber属性)はAD内で自動的には追跡されないので、コンピュータがドメインに参加しているときは、ADUC Attribute Editorタブで手動で設定する必要があります。

RFC2307templateモードのオプション

Sambaバージョン4.6.0より前:

バックエンドの広告IDマッピングは、smb.confファイルの[global]セクションのwinbind nss infoパラメータで設定された2つのモードをサポートしています。

  • winbind nss info = rfc2307:すべての情報がActive Directory(AD)から読み込まれます。
  • ユーザー:アカウント名、UID、ログインシェル、ホームディレクトリパス、およびプライマリグループ。
  • グループ:グループ名とGID。
  • winbind nss info = template:以下の値だけがADから読み込まれます:
  • ユーザー:アカウント名、UID、およびプライマリグループ。 ログインシェルとホームディレクトリは、smb.confファイルのユーザに依存しない設定によって自動的に設定されます。
  • グループ:グループ名とGID

Sambaバージョン4.6.0より:

すでにwinbind nss infoパラメータは使用しなくなり、すでにidmap config DOMAIN:unix_nss_infoに置き換えられました。

ad IDマッピングバックエンドはsmb.confファイルの [global]セクションの idmap config DOMAIN:unix_nss_infoパラメータで設定された2つのモードをサポートしています:

  • idmap config DOMAIN:unix_nss_info = yes:すべての情報がActive Directory(AD)から読み込まれます:
  • ユーザー:アカウント名、UID、ログインシェル、ホームディレクトリパス、およびプライマリグループ。
  • グループ:グループ名とGID。
  • これらの設定はDOMAIN単位で設定されます。つまり、DOMAINごとに異なる設定を行うことができます。
  • ユーザがRFC2307の属性を欠いている場合、ログインシェルとホームディレクトリは、 smb.confファイルのユーザに依存しない設定によって自動的に設定されます。
  • idmap config DOMAIN:unix_nss_info = no:次の値だけがADから読み込まれます。
  • ユーザー:アカウント名、UID、およびプライマリグループ。 ログインシェルとホームディレクトリは、smb.confファイルのユーザーに依存しない設定によって自動的に設定されます。
  • グループ:グループ名とGID
  • これがデフォルト設定です。

新しい設定 unix_primary_groupが追加されました。これにより、ドメインユーザーの代わりにユーザーのプライマリグループに別のグループを使用することができます。

  • これがunix_primary_group = yesで設定されている場合、ユーザープライマリグループは、ユーザーADオブジェクトにあるgidNumber属性から取得されます。
  • これがunix_primary_group = noで設定されている場合、ユーザープライマリグループは「primaryGroupID」属性を使用して計算されます。
  • デフォルトは 'no'です。

adバックエンドの設定

  • smb.confファイルの[global]セクションに以下を設定します:
  • ローカルの BUILTINアカウントとドメインメンバーのグループのバックエンドが設定されていない場合は、*デフォルトドメインのtdbバックエンドを追加し、ID範囲を設定します。例えば:
# Default idmap config for local BUILTIN accounts and groups
idmap config * : backend = tdb
idmap config * : range = 3000-7999
デフォルトのバックエンドの設定は必須です。
  • SAMDOMドメインの10000-999999 ID範囲を使用して広告バックエンドを設定するには:
# idmap config for the SAMDOM domain
idmap config SAMDOM:backend = ad
idmap config SAMDOM:schema_mode = rfc2307
idmap config SAMDOM:range = 10000-999999

<WRAP important> *デフォルトドメインを含むすべてのドメインの範囲を設定する必要があります。 *デフォルトドメインを除くすべてのドメインに対して、バックエンドとスキーマモードを設定する必要があります。 smb.confファイルで設定されたすべてのドメインのID範囲は重複してはいけません。 </WRAP>

  • Winbind NSS情報モードを設定する:
  • templateモードを有効にして、/ bin / bashをシェルとして、 / home /%Uをホームディレクトリ

のパスとして設定するには:

# Template settings for login shell and home directory
template shell = /bin/bash
template homedir = /home/%U

この設定は、 schema_mode = rfc2307パラメータが設定されている各ドメインのすべてのユーザに適用されます。 Samba 4.6.0か ら、グローバルテンプレート設定は、idmap config domain_name:unix_nss_infoパラメータを有効にすることによって、ドメインベースで上書きすることができます。

Sambaは %U変数をセッションのユーザ名に解決します。詳細は、 smb.conf(5)のmanページの VARIABLE SUBSTITESSセクションを参照してください。