私は、Windows ドメインの一部であり、ユーザー認証に sssd を使用する OpenSUSE Tumbleweed サーバーを持っています。ssh では問題なく動作しますが、Samba では動作しません。Windows クライアントから Samba 共有にアクセスすると、パスワードを何度も求められますが、共有にアクセスできません。Linux サーバーのジャーナルに、次のエラー メッセージが表示されます。
Aug 28 17:50:20 <server> smbd[3575]: [2020/08/28 17:50:20.751092, 0] ../../source3/auth/token_util.c:565(add_local_groups)
Aug 28 17:50:20 <server smbd[3575]: add_local_groups: SID S-1-5-21-1909068044-192024690-1575050150-1861 -> getpwuid(10000) failed, is nsswitch configured?
nsswitch.conf:
passwd: compat sss
group: compat sss
smb.conf:
[global]
workgroup = DOMAIN
realm = DOMAIN.TLD
interfaces = eth0, 172.20.0.0/16, 127.0.0.1/8
security = ADS
domain master = No
ldap ssl = no
idmap config DOMAIN : backend = sss
idmap config DOMAIN : range = 10000-20000
winbind refresh tickets = yes
winbind use default domain = yes
winbind offline logon = false
winbind enum users = yes
winbind enum groups = yes
# passdb backend = tdbsam
# kerberos method = secrets and keytab
# kerberos method = secrets only
kerberos method = system keytab
map to guest = Bad User
usershare allow guests = No
client signing = yes
client use spnego = yes
log level = 3
load printers = No
printing = bsd
printcap name = /dev/null
disable spoolss = yes
sssd.conf:
[sssd]
config_file_version = 2
services = nss, pam
domains = domain.de
[nss]
filter_users = root
filter_groups = root
[pam]
[domain/domain.de]
ad_domain = domain.de
krb5_realm = DOMAIN.DE
realmd_tags = manages-system joined-with-samba
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = True
fallback_homedir = /home/%u@%d
access_provider = ad
次のコマンドは期待どおりに動作しています。
> id [email protected]
> getent passwd domain\\username
何が間違っているのでしょうか?
答え1
自分の質問に答えると、ドメイン認証を sssd から winbind に切り替えましたが、正常に動作しています。