Samba/Winbindを使用してActive Directory Windows 2008サーバーに接続された2つのLinuxサーバーがあり、これが私のSamba構成です
workgroup = COMPANY
realm = COMPANY.COM
server string = SAMBA-AD Server
security = ADS
password server = 10.1.x.x
log level = 2
log file = /var/log/samba/log.%m
max log size = 50
unix extensions = No
idmap uid = 10000-20000
idmap gid = 10000-20000
template homedir = /home/%u
template Shell = /bin/bash
winbind separator = +
winbind enum users = Yes
winbind enum groups = Yes
winbind use default domain = Yes
winbind nss info = rfc2307
どちらもまったく同じように構成されていますが、getent group
を実行すると、範囲がまったく同じであるにもかかわらず、リストされているGIDは両方とも異なり、10000〜20000です。
LinuxサーバーAの場合:
domain computers:*:10011:
LinuxサーバーBの場合:
domain computers:*:10008:
10000から始まるようには見えません。
両方のLinuxサーバーでGIDを正確に同期するにはどうすればよいですか?どんな助けも大歓迎です!
編集:@ larsks、idmap_ridを追加してみましたが、これは最新の設定です:
workgroup = COMPANY
realm = COMPANY.COM
server string = SAMBA-AD Server
security = ADS
password server = 10.1.xx.xx
log file = /var/log/samba/log.%m
max log size = 50
unix extensions = No
idmap config COMPANY:backend = rid
idmap config COMPANY:base_rid = 1000
idmap config COMPANY:range = 10000 - 20000
template homedir = /home/%u
template Shell = /bin/bash
winbind separator = +
winbind enum users = Yes
winbind enum groups = Yes
winbind use default domain = Yes
winbind nss info = rfc2307
hosts allow = 127., 192.168.12., 192.168.13., 10.1.11., 10.2.,
wide links = Yes
Idmap gid = 10000-20000を削除しました。
winbind enum groups = Yes
を削除する必要がありますか?
ただし、idmap_ridを追加した後、winbind/sambaを再起動しても、GIDは同じままです。
idmap_rid idmapバックエンドを使用できます。これにより、アルゴリズムでIDが生成されるため、IDを同期する必要はありません(つまり、2つのシステムは常に特定のグループに対して同じGIDを生成します)。
[〜#〜] ldap [〜#〜]idmap
バックエンドを使用して、生成されたIDを中央(共有)の場所に保存することもできます。これは、idmap_rid
バックエンドを使用している場合にのみ必要です。