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로 전환했는데 제대로 작동합니다.