Fingerを除く非標準ディレクトリのSolaris 11とsamba4。

Fingerを除く非標準ディレクトリのSolaris 11とsamba4。

Oracleパッケージ版のSambaでは、いくつかの問題(krb5エラーとAD samba4サーバーに接続できない)が発生しました。そのため、IPSを使用して最新バージョンのSamba(4.3.13)を再コンパイルしました。 30分のコンパイル後にsamba4がインストールされました。すべてがうまく動作します:とnet ads join OK, wbinfo OK, wbinfo -i user OK2つを除いて。私はこの汚れているがうまくいく解決策でIDを解決しました(このファイルをマニフェストと標準の場所に配置する方が良いですが、Oracle Samba標準パッケージとの競合を避けたい)。id winbinduserfinger winbinduser

ln -sf /opt/gm/lib/nss_winbind.so.1 /usr/lib/amd64/nss_winbind.so.1
ln -sf /opt/gm/lib/nss_winbind.so.1 /usr/lib/nss_winbind.so.1
ln -sf /opt/gm/lib/security/pam_winbind.so /usr/lib/security/amd64/pam_winbind.so
ln -sf /opt/gm/lib/security/pam_winbind.so /usr/lib/security/amd64/pam_winbind.so.1
ln -sf /opt/gm/lib/security/pam_winbind.so /usr/lib/security/pam_winbind.so
ln -sf /opt/gm/lib/security/pam_winbind.so /usr/lib/security/pam_winbind.so.1

IDは動作しますが、指は沈黙しています。私は何を見逃していますか?

id pino
uid=10005(pino) gid=10016(domain users)
root@solaris11:~# finger !$
finger pino
Login name: pino                        In real life: ???

nsswitch.confです。

passwd: files winbind
group:  files winbind
hosts:  files dns wins
ipnodes:        files dns wins
networks:       files
protocols:      files
rpc:    files
ethers: files
netmasks:       files
bootparams:     files
publickey:      files 
netgroup:       ldap
automount:      files 
aliases:        files 
services:       files
project:        files 
auth_attr:      files 
prof_attr:      files
tnrhtp: files 
tnrhdb: files 
sudoers:        files

これはトラスの出力。

答え1

smb.confが正しく設定されていてSamba ADでwinbind ldapバックエンドを使用していない場合は、役に立つ可能性があり、テストには「winbind enum」行を使用する必要があります。次のsmb.confを試してください。

[global]
workgroup = MYDOM
server string = solaris11
realm = MYDOM.PRIV
security = ads
hosts allow = 10.3.0.
log file = /var/opt/gm/log/samba/samba.%m
max log size = 50
dns proxy = no 
kerberos method = secrets and keytab
server signing = mandatory
client signing = mandatory
smb encrypt = mandatory
restrict anonymous = 2
log level = 1
server min protocol = SMB3
client max protocol = SMB3
local master = No
preferred master = No
bind interfaces only = Yes
local master = No
preferred master = No
winbind use default domain = Yes
template homedir = /export/home/%U
template shell = /usr/bin/bash

idmap config * : backend = tdb
idmap config * : range = 3000-7999
idmap config MYDOM : backend = rid
idmap config MYDOM : range = 10000-20000

最後に、/etc/nsswitch.confから「wins」を削除します。

答え2

解決策を見つけてください。ライブラリの問題ではなく、winbindキャッシュファイルの問題です。 smb.confに次の行を追加した後

# Winbind
winbind enum groups = yes
winbind enum users = yes

winbind ingerを再起動すると正常に動作し、getent passwdおよびgetent groupも正常に動作できます。

finger pino
Login name: pino                        
Directory: /export/home/pino            Shell: /usr/bin/bash
Never logged in.
No unread mail
No Plan.

興味があれば、ここに私のSolaris 11クライアントのsmb.confがあります。

[global]
workgroup = MYDOM
server string = solaris11
netbios name = SOLARIS11
server role = standalone server
hosts allow = 10.3.0.
log file = /var/opt/gm/log/samba/samba.%m
max log size = 50
realm = mydom.priv
dns proxy = no 
kerberos method = secrets and keytab
server signing = mandatory
client signing = mandatory
smb encrypt = mandatory
restrict anonymous = 2
log level = 1
server min protocol = SMB3
client max protocol = SMB3
name resolve order = bcast lmhosts host wins
local master = No
preferred master = No
bind interfaces only = Yes
local master = No
preferred master = No
winbind use default domain = Yes
ldap admin dn = cn=ldapadm,dc=ldap2,dc=mydom,dc=priv
security = ads
ldap ssl = start tls
tls verify peer = no_check
template homedir = /export/home/%U
template shell = /usr/bin/bash
password hash userPassword schemes = CryptSHA512:rounds=7000

# Winbind
winbind enum groups = yes
winbind enum users = yes

idmap config * : backend      = ldap
idmap config * : range        = 10000-20000
idmap config * : ldap_url     = ldap://ldap2.mydom.priv
idmap config * : ldap_base_dn = ou=idmap,dc=ldap2,dc=mydom,dc=priv
idmap config * : ldap_user_dn = cn=ldapadm,dc=ldap2,dc=mydom,dc=priv

関連情報