새 Linux Samba 파일 서버를 AD 구성원으로 설정할 때 인증 문제가 계속 발생합니다.

AD에 가입한 후 강제 모드에서 selinux로 실행하면 트리거되는 것처럼 보이지만 selinux 설정에서 selinux를 끄 setenforce 0거나 재부팅 해도 사라지지 않습니다 SELINUX=permissive. 적어도 한 시간 정도는 그렇지 않습니다.

동일한 배포판으로 설정한 첫 번째 테스트 VM에서 설정 단계 및 업데이트가 일관되게 정상적으로 작동했지만 지금은 프로덕션 사용을 위해 설정 중인 서버에서 이 인증 문제가 발생하고 있습니다.

이것은 Rocky Linux 8.5 및 Samba 4.14.5에 있습니다.

smb.conf는 대부분 [global]에 기본 설정을 가지고 있으며 공개 [testshare]를 설정합니다.

[global]
security = ads

        passdb backend = tdbsam

        printing = cups
        printcap name = cups
        load printers = no
        cups options = raw
kerberos method = secrets and keytab
template homedir = /home/%[email protected]%D
template shell = /bin/bash
idmap config ADOMAIN : range = 2000000-2999999
idmap config ADOMAIN : backend = rid
idmap config * : range = 10000-999999
idmap config * : backend = tdb
winbind use default domain = yes
winbind refresh tickets = yes
winbind offline logon = yes

# Allow guest access for public share without password
map to guest = bad user

# these should be set to no for prod use
winbind enum groups = yes
winbind enum users = yes

   # Mac tweaks for ACLs
   map acl inherit = Yes
   store dos attributes = Yes

   # Mac tweaks for Apple Resource forks
   vfs objects = fruit streams_xattr
   fruit:aapl = yes
   fruit:time machine = no
   fruit:resource = xattr
   fruit:nfs_aces = no
   fruit:model = MacSamba
workgroup = ADOMAIN
realm = ADOMAIN.LAN

   [testshare]
   path = /mnt/data01/smb/testshare
   browsable =yes
   writable = yes
   guest ok = yes
   read only = no

도메인 가입이 완료되었습니다

 realm join --membership-software=samba --client-software=winbind adomain.lan

Kerberos 인증이 계속 작동합니다.

wbinfo -K user

이것도 작동합니다

getent passwd ADOMAIN\\user

그러나 다음은 실패

smbclient -L localhost -U guest%

wbinfo -a user

smbclient -d 3 //localhost/testshare -U user

마지막은 이렇게 말합니다.

lp_load_ex: refreshing parameters
Initialising global parameters
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[global]"
added interface ens192 ip=10.18.100.102 bcast=10.18.103.255 netmask=255.255.252.0
Client started (version 4.14.5).
resolve_lmhosts: Attempting lmhosts lookup for name localhost<0x20>
Connecting to 127.0.0.1 at port 445
Enter ADOMAIN\user's password:
GENSEC backend 'gssapi_spnego' registered
GENSEC backend 'gssapi_krb5' registered
GENSEC backend 'gssapi_krb5_sasl' registered
GENSEC backend 'spnego' registered
GENSEC backend 'schannel' registered
GENSEC backend 'naclrpc_as_system' registered
GENSEC backend 'sasl-EXTERNAL' registered
GENSEC backend 'ntlmssp' registered
GENSEC backend 'ntlmssp_resume_ccache' registered
GENSEC backend 'http_basic' registered
GENSEC backend 'http_ntlm' registered
GENSEC backend 'http_negotiate' registered
GSE to 'localhost' does not make sense
Got challenge flags:
Got NTLMSSP neg_flags=0x62898215
NTLMSSP: Set final flags:
Got NTLMSSP neg_flags=0x62088215
NTLMSSP Sign/Seal - Initialising with flags:
Got NTLMSSP neg_flags=0x62088215
SPNEGO login failed: {Access Denied} A process has requested access to an object but has not been granted those access rights.
session setup failed: NT_STATUS_ACCESS_DENIED

감사 로그에는 일반적으로 AVC 거부 오류가 표시되지 않습니다. 나는 dontaudit 규칙을 끄려고 시도했지만 AVC가 나타나지만 도움이 되지 않는 메시지를 거부하도록 허용했습니다.

이 안정을 얻으려면 selinux를 포기해야 합니까? 다른 팁이 있습니까?

no answer