Samba Active DirectoryサーバーでLinuxホームディレクトリとシェルを指定する方法は?

Samba Active DirectoryサーバーでLinuxホームディレクトリとシェルを指定する方法は?

この問題は、Active Directoryドメインコントローラとして使用されるSAMBAバージョン4に関連しています。

ドメインユーザーがLinuxにログインできるように、すべての設定が完了しました。しかし、長い間検索しても、ユーザーのホームディレクトリとシェルを設定する方法が見つかりません。/bin/false今始まったばかりです。インストールして動作winbindします。ログインできますが、シェルは正しく機能しません!libnss-winbindlibpam-winbind/bin/false

idmap.ldbたとえば、ユーザーのUIDを設定するなど、編集方法を知っており、sam.ldb他のプロパティも編集できます。私は持っていますアラブ首長国連邦これはSambaドメインに参加しているWindowsシステムでも機能します。私はこれを試しましたが、template homedirこれtemplate shellまでsmb.conf何も機能しません。

私は非常に単純なものを見逃しており、答えは明らかにしたいのですが、苦しんでいます。Googleブラインド多くの時間をかけて答えを見つけた後。 Samba文書でもこれを行いません。

答え1

[global]設定ファイルのセクションで、ホームディレクトリとログインシェルのデフォルト値を設定できますsmb.conf

template shell    = /bin/sh
template homedir  = /home/%ACCOUNTNAME%

これはSamba 3の場合%ACCOUNTNAME%ではありません。%U繰り返しますが、そうではありませ%WORKGROUP%%D。また、これらの値に対する変更が適用されないことも発見されましたsmbcontrol all reload-config。その値を適用するには、Sambaを再起動する必要があります。

ユーザー固有の値を指定するには、LDAPのユーザー項目にRFC2307属性を追加できる必要がありますが、まだ機能していません。 ~から サンバウィキ:

現在(4.1.11)、AD DCロールを持つSambaサーバーは標準のwinbindデーモンを使用しません。これにより、winbindとnss-winbindはログインシェルとホームではなくUIDとGIDのみを取得します。 Samba 4.2 では標準の winbind を使用できる可能性があるため、これらの欠点を回避できます。

したがって、少なくとも今はsmb.conf

関連情報