Portál AbcLinuxu, 14. května 2025 02:29

Dotaz: Samba - profily - přístup odmítnut

mosquitor avatar 15.5.2008 16:15 mosquitor | skóre: 4 | blog: mosquitor
Samba - profily - přístup odmítnut
Přečteno: 1331×
Odpovědět | Admin
Zdravím všechny, už tady druhý den laboruju nad sambou a ldapem. Mám nainstalovaný centos 5, na něm sambu a ldap. Komunikace mezi sambou a ldapem vypadá funkčně až na pár důležitých věcí. Při pokusu o přidání win2k počítače do domény mi to zahlásilo, že účet neexistuje. Pokud jsem vytvořil účet počítače ručně pomocí smbldap-useradd ... a pak ho zkusil vložit znovu, tak to přidalo bez problémů. Dále jsem pomocí stejného příkazu přidal testovacího uživatele a chtěl jsem se přihlásit do domény a vyhodilo mi to tuto hlášku
Systém Windows nemůže vytvořit adresář profilu \\MUJSERVER\profiles\test.pds.
Budete přihlášeni pouze pomocí místního profilu. Změny profilu nebudou šířeny
na server. Obraťte se na správce sítě.

PODROBNOSTI: Cesta v síti nebyla nalezena. 
U uživatele root mi to vypsalo to stejné a v logu samby u dané stanice je toto:
...
[2008/05/15 16:05:35, 2] auth/auth.c:check_ntlm_password(309)
  check_ntlm_password:  authentication for user [test] -> [test] -> [test] succeeded
[2008/05/15 16:05:35, 0] smbd/service.c:make_connection_snum(1003)
  '/data/profiles' does not exist or permission denied when connecting to [profiles] Error was Přístup odmítnut
[2008/05/15 16:05:35, 0] smbd/service.c:make_connection_snum(1003)
  '/data/profiles' does not exist or permission denied when connecting to [profiles] Error was Přístup odmítnut
[2008/05/15 16:05:35, 0] smbd/service.c:make_connection_snum(1003)
  '/data/profiles' does not exist or permission denied when connecting to [profiles] Error was Přístup odmítnut
[2008/05/15 16:05:35, 0] smbd/service.c:make_connection_snum(1003)
  '/data/profiles' does not exist or permission denied when connecting to [profiles] Error was Přístup odmítnut
[2008/05/15 16:05:35, 0] smbd/service.c:make_connection_snum(1003)
  '/data/profiles' does not exist or permission denied when connecting to [profiles] Error was Přístup odmítnut
[2008/05/15 16:05:35, 0] smbd/service.c:make_connection_snum(1003)
  '/data/profiles' does not exist or permission denied when connecting to [profiles] Error was Přístup odmítnut
[2008/05/15 16:05:35, 0] smbd/service.c:make_connection_snum(1003)
  '/data/profiles' does not exist or permission denied when connecting to [profiles] Error was Přístup odmítnut
[2008/05/15 16:05:35, 0] smbd/service.c:make_connection_snum(1003)
  '/data/profiles' does not exist or permission denied when connecting to [profiles] Error was Přístup odmítnut
[2008/05/15 16:05:35, 0] smbd/service.c:make_connection_snum(1003)
  '/data/profiles' does not exist or permission denied when connecting to [profiles] Error was Přístup odmítnut
Práva k adresářům mám nastavena na 777. Zde je výpis smb.conf:
[global]
	passwd chat = "Changing UNIX password for*\nNew password*" %n\n "*Retype new password*" %n\n"
	delete user from group script = /usr/sbin/smbldap-groupmod -x "%u" "%g"
	show add printer wizard = yes
	time server = Yes
	passwd program = /usr/sbin/smbldap-passwd -u %u
	netbios name = mujserver
	cups options = raw
	printing = cups
	logon script = logon.bat
	dos charset = 852
	workgroup = mojedomena
	debug level = 2
	os level = 65
	ldap admin dn = cn=manager,dc=mojedomena,dc=cz
	printcap name = cups
	dont descend = /proc,/dev,/etc,/lib,/lost+found,/initrd
	max log size = 2000
	log level = 2
	log file = /var/log/samba/log.%m
	load printers = yes
	guest account = nobody
	ldap user suffix = ou=Users
	socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=8192 SO_SNDBUF=8192
	mangling method = hash2
	logon drive = H:
	username map = /etc/samba/smbusers
	domain master = Yes
	passdb backend = ldapsam:ldap://127.0.0.1/
	logon home = \\%l\homes
	wins support = true
	netbios aliases = intranet
	server string = Samba Server Version %v
	ldap group suffix = ou=Groups
	ldap machine suffix = ou=Computers
	winbind nested groups = no
	ldap suffix = dc=mojedomena,dc=cz
	unix password sync = Yes
	logon path = \\%l\profiles\%u
	syslog = 0
	ldap idmap suffix = ou=Idmap
	unix charset = UTF-8
	domain logons = Yes
	acl inherit = yes
	store dos attributes = yes

	add user script = /usr/sbin/smbldap-useradd -m "%u"
	add machine script = /usr/sbin/smbldap-useradd -t 0 -w "%u"
	delete user script = /usr/sbin/smbldap-userdel "%u"
	set primary group script = /usr/sbin/smbldap-usermod -g '%g' '%u'
	add group script = /usr/sbin/smbldap-groupadd -p "%g"
	delete group script = /usr/sbin/smbldap-groupdel "%g"
	add user to group script = /usr/sbin/smbldap-groupmod -m "%u" "%g"

[homes]
	comment = Domovska slozka
	browseable = no
	writeable = yes
	path = /data/homes

[printers]
	comment = Sitove tiskarny
	path = /data/spool
	browseable = no
	printable = yes
	guest ok = yes
	read only  = Yes

[netlogon]
	comment = Network Logon Service
	path = /data/shares/netlogon
	browseable = no
	read only = yes

[profiles]
#	nt acl support = yes
	profile acls = yes
	writable = yes
	path = /data/profiles
	guest ok = yes
#	create mask = 0600
#	directory mask = 0700
	browseable = yes

[public]
	path = /data/public
	comment = Sdilena slozka
	writable = yes
	public = yes
	guest ok = yes
	guest only = yes
	browsable = yes
Díky moc za případné tipy Radek
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

15.5.2008 16:25 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Samba - profily - přístup odmítnut
Odpovědět | | Sbalit | Link | Blokovat | Admin
Při pokusu o přidání win2k počítače do domény mi to zahlásilo, že účet neexistuje.
Samba musí umět vytvořit i odpovídající unixový účet – buď musíte (asi přes NSS) účty z LDAPu brát zároveň jako systémové účty, nebo musíte Sambě poskytnout skript, kterým příslušného uživatele smaže a vytvoří.

Vyzkoušejte přihlásit se jako příslušný uživatel a vytvořit adresář pro profil přímo z Linuxu – pokud to půjde, bude asi potřeba zvýšit úroveň logování Samby, aby bylo vidět, proč přístup odmítne.
mosquitor avatar 16.5.2008 10:16 mosquitor | skóre: 4 | blog: mosquitor
Rozbalit Rozbalit vše Re: Samba - profily - přístup odmítnut
Založit adresář lze, ovšem netuším, jestli mám správně nastaveno co má být nastaveno. Protože když nastavím heslo pomocí passwd, tak píše, že to změnil i v LDAP, ale pro přihlášení do domény to heslo nezmění.
[root@mujserver ~]# passwd test
Changing password for user test.
New UNIX password:
Retype new UNIX password:
LDAP password information changed for test
passwd: all authentication tokens updated successfully.
Pokud provedu změnu hesla pomocí smbpasswd tak to změní heslo do domény.
Pokud se zkouším připojit pomocí ssh tak funguje jen to heslo změněné pomocí passwd.

Další věcí kterou jsem testoval je smbclient:
[root@mujserver ~]# smbclient -L mujserver -U test
Password:
Domain=[MOJEDOMENA] OS=[Unix] Server=[Samba 3.0.25b-1.el5_1.4]

        Sharename       Type      Comment
        ---------       ----      -------
        tmp             Disk      Temporary file space
        public          Disk      Sdilena slozka
        profiles        Disk
        homes           Disk      Domovska slozka
        IPC$            IPC       IPC Service (Samba Server Version 3.0.25b-1.el5_1.4)
        test            Disk      Domovska slozka
Domain=[MOJEDOMENA] OS=[Unix] Server=[Samba 3.0.25b-1.el5_1.4]

        Server               Comment
        ---------            -------
        INTRANET             Samba Server Version 3.0.25b-1.el5_1.4
        MUJSERVER            Samba Server Version 3.0.25b-1.el5_1.4
        TEST-01

[root@mujserver ~]# smbclient //mujserver/tmp
Password:
Anonymous login successful
Domain=[MOJEDOMENA] OS=[Unix] Server=[Samba 3.0.25b-1.el5_1.4]
tree connect failed: NT_STATUS_BAD_NETWORK_NAME
[root@mujserver ~]# smbclient //mujserver/tmp -U test
Password:
Domain=[MOJEDOMENA] OS=[Unix] Server=[Samba 3.0.25b-1.el5_1.4]
tree connect failed: NT_STATUS_BAD_NETWORK_NAME
Je mi jasné, že je problém v tom, že nemůže najít cestu, ale nevím kde to nastavit, aby to fungovalo správně.
16.5.2008 10:42 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Samba - profily - přístup odmítnut
Máte správně nastavená práva v tom LDAPu? Pokud passwd hlásí, že mění informace o heslu, ale heslo se nezmění, napadá mne jedině zvýšit úroveň logování LDAPu a tam uvidíte, jaké příkazy se posílají a jaký je jejich výsledek.

K tomu přístupu k //mujserver/tmp – jestli je ten konfigurační soubor uvedený v dotazu kompletní, nikdy v něm nevidím nastavení sdílení tmp.
mosquitor avatar 16.5.2008 10:48 mosquitor | skóre: 4 | blog: mosquitor
Rozbalit Rozbalit vše Re: Samba - profily - přístup odmítnut
Ne není kompletní, tmp, jsem doplnil až dnes:
[tmp]
	comment = Temporary file space
	path = /data/tmp
	read only = no
	public = yes 
	browsable = yes

# ls -l /data
celkem 56
drwxrwxrwx 2 root root  4096 kvě 14 15:59 homes
drwxrwxrwx 2 root root 16384 kvě  9 07:19 lost+found
drwxr-xrwt 3 root root  4096 kvě 16 09:23 profiles
drwxrwxrwx 4 root root  4096 kvě 14 16:16 shares
drwxrwxrwx 2 root root  4096 kvě 14 16:14 spool
drwxrwxrwx 2 root root  4096 kvě 16 10:03 tmp
16.5.2008 11:27 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Samba - profily - přístup odmítnut
Ukazuje něco Samba v logu při zvýšení úrovně logování? Protože to vypadá, že to je nějaký obecný problém se jmény a nesouvisí to s konkrétními adresáři nebo sdíleními.
mosquitor avatar 16.5.2008 12:19 mosquitor | skóre: 4 | blog: mosquitor
Rozbalit Rozbalit vše Re: Samba - profily - přístup odmítnut
Nic moc zajímavého, jen více rozepsané. Alespoň podle mého skromného odhadu:
...
[2008/05/16 11:52:31, 2] passdb/pdb_ldap.c:init_sam_from_ldap(545)
  init_sam_from_ldap: Entry found for user: test
[2008/05/16 11:52:31, 2] passdb/pdb_ldap.c:init_group_from_ldap(2158)
  init_group_from_ldap: Entry found for group: 513
[2008/05/16 11:52:31, 2] passdb/pdb_ldap.c:init_group_from_ldap(2158)
  init_group_from_ldap: Entry found for group: 513
[2008/05/16 11:52:31, 2] auth/auth.c:check_ntlm_password(309)
  check_ntlm_password:  authentication for user [test] -> [test] -> [test] succeeded
[2008/05/16 11:52:32, 2] passdb/pdb_ldap.c:init_sam_from_ldap(545)
  init_sam_from_ldap: Entry found for user: test
[2008/05/16 11:52:32, 2] passdb/pdb_ldap.c:init_group_from_ldap(2158)
  init_group_from_ldap: Entry found for group: 513
[2008/05/16 11:52:32, 2] passdb/pdb_ldap.c:init_group_from_ldap(2158)
  init_group_from_ldap: Entry found for group: 513
[2008/05/16 11:52:32, 2] auth/auth.c:check_ntlm_password(309)
  check_ntlm_password:  authentication for user [test] -> [test] -> [test] succeeded
[2008/05/16 11:53:07, 2] passdb/pdb_ldap.c:init_sam_from_ldap(545)
  init_sam_from_ldap: Entry found for user: test
[2008/05/16 11:53:07, 2] passdb/pdb_ldap.c:init_group_from_ldap(2158)
  init_group_from_ldap: Entry found for group: 513
[2008/05/16 11:53:07, 2] passdb/pdb_ldap.c:init_group_from_ldap(2158)
  init_group_from_ldap: Entry found for group: 513
[2008/05/16 11:53:07, 2] passdb/pdb_ldap.c:init_group_from_ldap(2158)
  init_group_from_ldap: Entry found for group: 513
[2008/05/16 11:53:07, 2] passdb/pdb_ldap.c:init_group_from_ldap(2158)
  init_group_from_ldap: Entry found for group: 513
[2008/05/16 11:53:07, 0] smbd/service.c:make_connection_snum(1003)
  '/data/profiles' does not exist or permission denied when connecting to [profiles] Error was Přístup odmítnut
...
16.5.2008 13:39 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Samba - profily - přístup odmítnut
Nemáte na tom počítači SElinux nebo podobný bezpečnostní systém, který by mohl způsobit, že se budou práva lišit podle aplikace, která k souboru/adresáři přistupuje?
mosquitor avatar 16.5.2008 15:03 mosquitor | skóre: 4 | blog: mosquitor
Rozbalit Rozbalit vše Re: Samba - profily - přístup odmítnut
Takže jste se trefil do černého :) Díky za nakopnutí
Teď jen nastavit správně práva, aby nemohl každý lézt kam chce.
Stačilo si pořádně přečíst konfigurační soubor samby:
#---------------
# SELINUX NOTES:
#
# If you want to use the useradd/groupadd family of binaries please run:
# setsebool -P samba_domain_controller on
#
# If you want to share home directories via samba please run:
# setsebool -P samba_enable_home_dirs on
#
# If you create a new directory you want to share you should mark it as
# "samba-share_t" so that selinux will let you write into it.
# Make sure not to do that on system directories as they may already have
# been marked with othe SELinux labels.
#
# Use ls -ldZ /path to see which context a directory has
#
# Set labels only on directories you created!
# To set a label use the following: chcon -t samba_share_t /path
#
# If you need to share a system created directory you can use one of the
# following (read-only/read-write):
# setsebool -P samba_export_all_ro on
# or
# setsebool -P samba_export_all_rw on
#
# If you want to run scripts (preexec/root prexec/print command/...) please
# put them into the /var/lib/samba/scripts directory so that smbd will be
# allowed to run them.
# Make sure you COPY them and not MOVE them so that the right SELinux context
# is applied, to check all is ok use restorecon -R -v /var/lib/samba/scripts
#
#--------------

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.