SAMBAをActiveDirectory(以下、AD)と連携させる機会があったので備忘録
いろんな事
設定が完了したら色々な方法で確認できる
kinit administrator@AD.LOCAL kerberos認証を実行してキャッシュする
klist kerberos認証している情報を表示
wbinfo -u ユーザー一覧の表示
wbinfo -g グループ一覧の表示
wbinfo -n <username> usernameのSIDを表示
id <domain user name> ユーザ情報の表示、ローカルLinuxユーザもドメインユーザも表示できる
| ADドメイン名 | ad.local. | 
|---|---|
| NTドメイン名 | AD | 
| ADのDC名 | win.ad.local. | 
| SAMBAサーバー名 | samba.ad.local. | 
| SAMBAサーバーNETBIOS名 | SAMBA | 
idmap周りの設定ではまります
設定していて思う通りに行かないときは、sambaのloglevelを10に上げておいて
logディレクトリのlog.winbindとlog.winbind-idmapを確認するのが良い
base_ridを500としているのはAD側のビルトインユーザUIDやグループGIDが500番から始まっていて
ridモジュールのidmappingでrangeエラーになっていたのを対応するため
samba関連をインストール samba samba-winbind krb5-workstation
kerberos設定 /etc/krb5.conf
[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log
 admin_server = FILE:/var/log/kadmind.log
[libdefaults]
 default_realm = AD.LOCAL
[realms]
 AD.LOCAL = {
  kdc = win.ad.local
  admin_server = win.ad.local
 }
[domain_realm]
 .ad.local = AD.LOCAL
 ad.local = AD.LOCAL
/etc/samba/smb.conf
smb.conf
[global]
        unix charset = UTF8
        display charset = UTF8
        dos charset = cp932
        log file = /var/log/samba/log.%m
        log level = 3
        syslog = 0
        workgroup = AD
        server string = AD file server
        security = ads
        realm = AD.LOCAL
        netbios name = samba
        winbind separator = +
        winbind use default domain = yes
        encrypt passwords = yes
        idmap config * : backend = tdb
        idmap config * : range = 500-20000
        idmap config AD : backend     = rid
        idmap config AD : range       = 10000 - 20000
        idmap config AD : base_rid    = 500
[share]
        path = /samba/share
        store dos attributes = yes
        nt acl support = yes
        writeable = yes
        browseable = yes
        comment = 読み書き自由
        create mask = 0770
        directory mask = 0770
        inherit permissions = Yes
        public = yes
        guest ok = yes
        guest only = yes
[ads-share]
        path = /samba/ads-share
        comment = ADユーザのみ共有
        valid users = "@+domain users"
        read only = no
        writable = yes
        browseable = yes
        nt acl support = yes
        store dos attributes = yes
        inherit permissions = Yes
[ads-admin]
        path = /samba/ads-admin
        comment = AD特定ユーザのみ
        valid users = 'username'
        read only = no
        writable = yes
        browseable = yes
        nt acl support = yes
        store dos attributes = yes
        inherit permissions = Yes