PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SuSE 9.3 Samba problem als Member Server in NT4 Domain



Jeremia
19.10.05, 09:31
Hab probleme von Windows aus, auf die SMB Shares meines SuSE 9.3 Servers zuzugreifen. Dieser ist Member Server in unserer NT4 Domain und eigentlich wollte ich winbind dazu benutzen, die NT4 User dem Samba Server bekannt zu machen. - Klappt aber nicht

Ich hab die /etc/nsswitch.conf angepasst:


passwd: files winbind
shadow: files winbind
group: files winbind


meine /etc/samba/smb.conf:


[global]
workgroup = MY_DOMAIN
security = DOMAIN
passdb backend = tdbsam
log level = 4
syslog = 0
log file = /var/log/samba/log.smbd
ldap ssl = no
idmap uid = 10000-90000
idmap gid = 10000-90000


wenn ich jetzt versuche, über Windows auf dem Rechner zu verbinden fragt micht Windows nach Benutzername und Password und in den Samba log dateien steht folgendes:



Got user=[Jeremia] domain=[MY_DOMAIN] workstation=[FUSSEL] len1=24 len2=24
[2005/10/19 09:15:14, 3] nsswitch/winbindd_misc.c:winbindd_ping(238)
[26414]: ping
[2005/10/19 09:15:14, 3] auth/auth.c:check_ntlm_password(219)
check_ntlm_password: Checking password for unmapped user [MY_DOMAIN]\[Jeremia]@[FUSSEL] with the new password interface
[2005/10/19 09:15:14, 3] auth/auth.c:check_ntlm_password(222)
check_ntlm_password: mapped user is: [MY_DOMAIN]\[Jeremia]@[FUSSEL]
[2005/10/19 09:15:14, 3] smbd/sec_ctx.c:push_sec_ctx(256)
push_sec_ctx(0, 0) : sec_ctx_stack_ndx = 1
[2005/10/19 09:15:14, 3] smbd/uid.c:push_conn_ctx(365)
push_conn_ctx(0) : conn_ctx_stack_ndx = 0
[2005/10/19 09:15:14, 3] smbd/sec_ctx.c:set_sec_ctx(288)
setting sec ctx (0, 0) - sec_ctx_stack_ndx = 1
[2005/10/19 09:15:14, 3] nsswitch/winbindd_pam.c:winbindd_pam_auth_crap(477)
[26414]: pam auth crap domain: MY_DOMAIN user: Jeremia
[2005/10/19 09:15:14, 4] passdb/secrets.c:secrets_fetch_trust_account_password(290 )
Using cleartext machine password
[2005/10/19 09:15:14, 4] libsmb/credentials.c:cred_create(90)
cred_create
[2005/10/19 09:15:14, 4] libsmb/credentials.c:cred_create(90)
cred_create
[2005/10/19 09:15:14, 4] libsmb/credentials.c:cred_assert(121)
cred_assert
[2005/10/19 09:15:14, 3] smbd/sec_ctx.c:pop_sec_ctx(386)
pop_sec_ctx (0, 0) - sec_ctx_stack_ndx = 0
[2005/10/19 09:15:14, 3] auth/auth_util.c:make_server_info_info3(1188)
User Jeremia does not exist, trying to add it
[2005/10/19 09:15:14, 0] auth/auth_util.c:make_server_info_info3(1195)
make_server_info_info3: pdb_init_sam failed!
[2005/10/19 09:15:14, 2] auth/auth.c:check_ntlm_password(312)
check_ntlm_password: Authentication for user [Jeremia] -> [Jeremia] FAILED with error NT_STATUS_NO_SUCH_USER
[2005/10/19 09:15:14, 3] smbd/process.c:timeout_processing(1334)
timeout_processing: End of file from client (client has disconnected)..


Die abfrage des Passwortes am NT4 Domain Controller funktioniert noch, wenn ich nämlich ein falsches Passwort eingebe, meldet er viel eher "FAILED with error NT_STATUS_WRONG_PASSWORD"

Der haken liegt warscheinlich hier


[2005/10/19 09:15:14, 3] auth/auth_util.c:make_server_info_info3(1188)
User Jeremia does not exist, trying to add it
[2005/10/19 09:15:14, 0] auth/auth_util.c:make_server_info_info3(1195)
make_server_info_info3: pdb_init_sam failed!


Er findet also den Benutzer nicht lokal, obwohl ich winbind in die nsswitch.conf eingetragen habe, und ein "getent passwd" mir auch alle Benutzer der NT4 Domäne anzeigt.

Was noch komisch ist:
Auf meinem Gentoo System habe ich mit genau dieser Konfiguration keine probleme

- So und jetzt kommt ihr (hoff ich) :)

mfg Jeremiah

PS:
Wenn ich in der Smb.conf eintrage "winbind enable local accounts = yes" kommt folgende Fehlermeldung:


[2005/10/19 09:27:42, 3] auth/auth_util.c:make_server_info_info3(1188)
User Zocchr79 does not exist, trying to add it
[2005/10/19 09:27:42, 3] nsswitch/winbindd_acct.c:winbindd_create_user(880)
[26474]: create_user: user=>(Jeremia), group=>()
[2005/10/19 09:27:42, 0] nsswitch/winbindd_acct.c:winbindd_create_user(884)
winbindd_create_user: Refusing to create user that already exists (Jeremia)
[2005/10/19 09:27:42, 3] nsswitch/winbindd_acct.c:winbindd_create_user(880)
[26474]: create_user: user=>(Jeremia), group=>()
[2005/10/19 09:27:42, 0] nsswitch/winbindd_acct.c:winbindd_create_user(884)
winbindd_create_user: Refusing to create user that already exists (Jeremia)
[2005/10/19 09:27:42, 0] auth/auth_util.c:make_server_info_info3(1195)
make_server_info_info3: pdb_init_sam failed!
[2005/10/19 09:27:42, 2] auth/auth.c:check_ntlm_password(312)
check_ntlm_password: Authentication for user [Jeremia] -> [Jeremia] FAILED with error NT_STATUS_NO_SUCH_USER


Er versucht also einen Benutzer anzulegen, den es nicht gibt, kann es aber nicht, weil es ihn schon gibt ??!!

emba
19.10.05, 15:14
wie ist denn der output von wbinfo -u? lässt du die domänenkomponente mit drin (DOMAIN\User)?

hast du "valid user" parameter in den shares gesetzt?
was sagt ein "id domainuser"?

greez

Jeremia
19.10.05, 15:47
wie ist denn der output von wbinfo -u?


# >wbinfo -u | head
MY_DOMAIN\aboami72
MY_DOMAIN\aborck
MY_DOMAIN\abrste77
MY_DOMAIN\achjue48
MY_DOMAIN\ackkat76
MY_DOMAIN\adacla61
MY_DOMAIN\adamic64
MY_DOMAIN\administrator
MY_DOMAIN\adrrei48
MY_DOMAIN\adrste71


Er zeigt mir alle Domänen Benutzer an (ca. 3118) (auch jener, mit dem ich von XP aus versuche anzumelden)



lässt du die domänenkomponente mit drin (DOMAIN\User)?

Jupp, (siehe wbinfo -u) habe in der SMB.CONF eingetragen:


winbind use default domain = No



hast du "valid user" parameter in den shares gesetzt?


Jupp, habs mit und ohne Domänenanteil im benutzernamen versucht:

smb.conf:


[home]
comment = Home halt
path = /home/
valid users = MY_DOMAIN\Jeremia
read only = No



was sagt ein "id domainuser"?

Aha, auf dem SuSE 9.3:


#> id "MY_DOMAIN\Jeremia"
id: MY_DOMAIN\Jeremia: No such user

wärend das Gentoo System sagt:


#> id "MY_DOMAIN\Jeremia"
uid=13083(MY_DOMAIN\Jeremia) gid=10000(MY_DOMAIN\domaenen-benutzer) groups=10000(MY_DOMAIN\domaenen-benutzer),10001(MY_DOMAIN\domaenen-admins)


Und das sagt mir jetzt was?

-
Danke schonmal soweit

emba
19.10.05, 16:50
Und das sagt mir jetzt was?
dass du ein prob mit NSS hast
ich verstehe nur nicht, warum getent passwd alle auflistet und id den nutzer nicht

was sagt der winbindd bei entsprechend hohem debuglevel, wenn du "id user" machst?

verwendest du die korrekte libnss_winbind.so? also jene, die dein winbindd rpm mitgebracht hat? nicht dass noch eine alte gelinkt ist (von einem älteren winbindd)

greez

Jeremia
20.10.05, 08:27
Also, hab gerade nochmal ausprobiert:



#> winbindd -d 3 -i
winbindd version 3.0.13-1.1-SUSE started.
Copyright The Samba Team 2000-2004
lp_load: refreshing parameters
Initialising global parameters
params.c:pm_process() - Processing configuration file "/etc/samba/smb.conf"
Processing section "[global]"
Processing section "[iso]"
adding IPC service
adding IPC service
added interface ip=192.168.0.1 bcast=192.168.0.255 nmask=255.255.255.0
added interface ip=10.110.5.19 bcast=10.110.127.255 nmask=255.255.128.0
added interface ip=192.168.0.1 bcast=192.168.0.255 nmask=255.255.255.0
added interface ip=10.110.5.19 bcast=10.110.127.255 nmask=255.255.128.0
Registered MSG_REQ_POOL_USAGE
Registered MSG_REQ_DMALLOC_MARK and LOG_CHANGED
Added domain MY_DOMAIN S-0-0
IPC$ connections done anonymously
bind_rpc_pipe: transfer syntax differs
rpc_pipe_bind: check_bind_response failed.
cli_nt_session_open: rpc bind to \PIPE\lsarpc failed
rpc: trusted_domains
IPC$ connections done anonymously
Added domain BUILTIN S-1-5-32
Added domain WHNPD6B S-1-5-21-4135767409-1771643938-1742498096
rpc: trusted_domains


dann hab ich "id 'pd\Jeremia'" ausgeführt und winbind sagte:




richtig, nix (??!!)
nur id meldet das übliche "id: pd\Jeremia: No such user"

Versuche ich allerdings ein "id 'wwwrun'" (root gibt es in der Domäne, wwrun nur lokal) sieht es schon anders aus:


# >id wwwrun
uid=30(wwwrun) gid=8(www) groups=8(www)

winbind:


[29412]: request interface version
[29412]: request location of privileged pipe
[29412]: setgrent
[29412]: getgrent
IPC$ connections done anonymously
rpc: enum_dom_groups
[29412]: getgrent
[29412]: getgrent
[29412]: getgrent
[29412]: endgrent
[29412]: setgrent
[29412]: getgrent
[29412]: getgrent
[29412]: getgrent
[29412]: getgrent
[29412]: endgrent


Was die libs angeht: Gute Frage, ich gehe mal stark davon aus, bei einem SUSE 9.3 hab aber ein Update gefahren, werd mal samba deinstallieren und das von der dvd neu einspielen.

Wie finde ich denn raus, ob winbind die richtige libnss_winbind.so benutzt, ein "ldd" bringt mich da irgendwie nicht weiter


# > ldd $(which winbindd)
linux-gate.so.1 => (0xffffe000)
libcrypt.so.1 => /lib/libcrypt.so.1 (0x40021000)
libresolv.so.2 => /lib/libresolv.so.2 (0x40053000)
libnsl.so.1 => /lib/libnsl.so.1 (0x40066000)
libdl.so.2 => /lib/libdl.so.2 (0x4007b000)
libpopt.so.0 => /usr/lib/libpopt.so.0 (0x4007f000)
libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0x40087000)
libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x4009f000)
libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x40112000)
libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0x40135000)
libcom_err.so.2 => /lib/libcom_err.so.2 (0x40138000)
libldap-2.2.so.7 => /usr/lib/libldap-2.2.so.7 (0x4013b000)
liblber-2.2.so.7 => /usr/lib/liblber-2.2.so.7 (0x4016d000)
libc.so.6 => /lib/tls/libc.so.6 (0x4017b000)
libcrypto.so.0.9.7 => /usr/lib/libcrypto.so.0.9.7 (0x40294000)
/lib/ld-linux.so.2 (0x40000000)
libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x40387000)
libssl.so.0.9.7 => /usr/lib/libssl.so.0.9.7 (0x4039c000)


mfg
Jeremia

Jeremia
20.10.05, 08:40
Also ich hab gerade alle RPMS die was mit SAMBA zu tun haben deinstalliert und wieder installiert, leider kein Erfolg :o

emba
20.10.05, 09:27
ok,

mach mal

rpm -ql samba-winbind (wenn das rpm so heißt)
da siehst du, wo er die NSS files hinpackt
diese müssen theoretisch den selben timestamp wie das datum deiner letzten installation haben

normalerweise muss bei jeder abfrage, wenn "files" sie aus NSS nicht beantworten kann, der winbindd einspringen, was bei dir nicht der fall ist, da er nichts anzeigt wenn du "id DOM\user" machst

das prob gilt es zu fixen, dann läuft auch der smbd

kannst du bitte hier nochmal nachschauen, ob das für dich zutrifft?
http://de.samba.org/samba/docs/man/Samba3-HOWTO/winbind.html#id2637595

greez

Jeremia
20.10.05, 11:45
# >/etc/init.d/nscd status
Checking for Name Service Cache Daemon: running

# >/etc/init.d/nscd stop
Shutting down Name Service Cache Daemon done

# > id "MY_DOMAIN\Jeremia"
uid=13083(MY_DOMAIN\Jeremia) gid=10000(MY_DOMAIN\domaenen-benutzer) groups=10000(MY_DOMAIN\domaenen-benutzer)


....

Hatte mir das MAN auch schon angeschaut, hab nur irgendwie nicht weit genug gelesen ;-)

Dank dir für die Hilfe

mfg
Jeremia