# Samba, winbind ja AD käyttäjien loggaus

## shS

En ole varma siitä, mitä olen tehnyt väärin, mutta arvelen, että suurella todennäköisyydellä jotain.  :Crying or Very sad: 

Ainoa Samban versio, minkä sain winbindin kanssa toimimaan oikein oli 3.0.2a-r2. Muissa versioissa (3.0.1-r1, 3.0.4-r1) winbind ei suostunut toimimaan lainkaan (wbinfo -u antoi Error looking up domain users, wbinfo -t antoi virheen 0x0).

Tietokonetili on AD toimialueella ja saan käyttäjät ja ryhmät PDC:ltä komennolla

# wbinfo -u

ja

# wbinfo -g

Näen, että kaikki ovat oikeilla paikoillaan (muotoa DOMAIN+tunnus ja DOMAIN+ryhmä)  komennolla 

# getent passwd

# getent group

"Shadow" tiedosto ei sisällä mitään tietoja mistään käyttäjästä. En pysty kirjautumaan Gentoohon käyttämällä toimialueen käyttäjätilejä (Login incorrect)

Pitäisikö wbinfo --set-auth-user= paikalle laittaa paikallinen vai toimialueen järjestelmänvalvoja?

smb.conf :

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.

[global]

   workgroup = TOIMIALUE

   netbios name = FURY128

   server string = %v @ Samba

   realm = TOIMIALUE.FI

   password server = 10.10.10.100

   security = ADS

   encrypt passwords = yes

   printcap name = cups

   load printers = yes

   log file = /var/log/samba/%m.log

   max log size = 50

   socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

   dns proxy = no

   idmap uid = 10000-20000

   winbind use default domain = yes

   winbind separator = /

   winbind enum users = yes

   winbind enum groups = yes

   preferred master = no

   wins server = 10.10.10.100

   wins proxy = no

   idmap gid = 10000-20000

   use sendfile = Yes

   printing = cups

   map to guest = bad user

   template shell = /bin/bash

   obey pam restrictions = yes

   pam password change = yes

   add user script = /usr/sbin/useradd -s /bin/false '%u%'

   delete user script = /usr/sbin/userdel '%s'

   add user to group script = /usr/sbin/gpasswd -a '%u' '%g'

   delete user from group script = /usr/sbin/gpasswd -d '%u' '%g'

   set primary group script = /usr/sbin/usermod -g '%g' '%u'   

   add group script = /usr/sbin/groupadd %g && getent group '%g'|awk -F: '{print $3}'

   delete group script = /usr/sbin/groupdel '%g'

   add machine script = /usr/sbin/useradd -d /dev/null -g 100 \ -s /bin/false -M %u

   dos charset = 850

   unix charset = ISO8859-15

   [homes]

   comment = Home Directories

   browseable = no

   writeable = yes

   [print$]

   path = /var/lib/samba/printers

   browseable = yes

   read only = yes

   write list = @root

   guest ok = yes

   [public]

   comment = Public Stuff

   path = /var/pub

   public = yes

   read only = yes

   write list = @staff @root

   [printers]

   comment = All Printers

   print command = lpr-cups -P %p -o raw %s -r

   path = /var/spool/samba

   printer admin = root, shs

   create mask = 0600

   guest ok = Yes

   printable = Yes

   use client driver = Yes

   browseable = No

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.

nsswitch.conf

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.

# /etc/nsswitch.conf:

# $Header: /home/cvsroot/gentoo-src/rc-scripts/etc/nsswitch.conf,v 1.4 2002/11/18 19:39:22 azarah Exp $

passwd:      compat winbind

shadow:      compat winbind

group:       compat winbind

# passwd:    db files nis

# shadow:    db files nis

# group:     db files nis

hosts:       files dns winbind

networks:    files dns

services:    db files

protocols:   db files

rpc:         db files

ethers:      db files

netmasks:    files

netgroup:    files

bootparams:  files

automount:   files

aliases:     files

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.

krb5.conf

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.

[libdefaults]

	ticket_lifetime = 600

	default_realm = TOIMIALUE.FI

	default_tkt_enctypes = des3-hmac-sha1 des-cbc-crc

	default_tgs_enctypes = des3-hmac-sha1 des-cbc-crc

[realms]

	TOIMIALUE.FI = {

	kdc = PALVELIN.TOIMIALUE.FI:88

	admin_server = ADMIN.TOIMIALUE.FI:749

	}

[domain_realm]

	.toimialue.fi = TOIMIALUE.FI

	toimialue.fi = TOIMIALUE.FI

[kdc]

	profile = /etc/krb5kdc/kdc.conf

[logging]

	kdc = FILE:/var/log/krb5kdc.log

	admin_server = FILE:/var/log/kadmin.log

	default = FILE:/var/log/krb5lib.log

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.

----------

## arwen

Näyttäs äkkiseltään ihan OK:lta. Onkos sulla "winbind" daemoni pyörimässä? (mikä on avain koko juttua saada toimimaan)

Kerran olen tälläisen systeemin tehny tämän ohjeen perusteella http://us4.samba.org/samba/ftp/docs/htmldocs/winbind.html

----------

## shS

root@FURY128 shs # ps -ae | grep winbindd

30489 ?        00:00:00 winbindd

30491 ?        00:00:00 winbindd

----------

## shS

Eli nyt näyttäisi jo paremmalta, muokkasin /etc/pam.d hakemiston login ja system-auth tiedostoja hyväksymään winbindin ja pääsen loggautumaan toimialueen käyttäjänä. Tämä tosin toimii ainoastaan TOIMIALUE+käyttäjä muodossa, eikä pelkästään "käyttäjä"-muodossa, vaikka olen määritellyt smb.conf:n "winbind use default domain = true"

Myöskään "winbind use default domain = yes" ei vaikuta asiaan. Loggautuminen tulee aina tehdä "TOIMIALUE+käyttäjä" muodossa.

Käyttäjien kotihakemistotkaan eivät ilmesty itsestään "/home/TOIMIALUE" hakemiston alle, vaikka "/home/TOIMIALUE" hakemiston ryhmä on asetettu "TOIMIALUE+Domain Users" käyttäjille ja chmodattu muotoon 775. Käyttäjä saa tulosteen 

# No directory /home/TOIMIALUE/pekka!

# Logging in with home = "/".

Su'aus ei myöskään toimi pelkästään toimialueen käyttäjänimellä vaan vaatii myös toimialueen.

# root@FURY128 shs # su pekka

# Unknown id: pekka

mutta näin toimii:

# root@FURY128 shs # su TOIMIALUE+pekka

# TOIMIALUE+pekka@FURY128 shs $ 

myöskään getent ei anna passwd tiedostosta tietoja pelkästään käyttäjänimellä.

root@FURY128 shs # getent passwd pekka

root@FURY128 shs # getent passwd TOIMIALUE+pekka

TOIMIALUE+pekka:x:10014:10000:pekka eskola:/home/TOIMIALUE/pekka:/bin/bash

?

----------

## shS

pitkällisen säätämisen tuloksena sain loggauksen default domainiin toimimaan jostain kumman syystä  :Razz: 

ongelmana on nyt GDM, joka ei tunnista toimialueen käyttäjiä... siis normaali loggaus kyllä onnistuu, mutta ei GDM:n kautta. 

 :Razz: 

----------

## shS

entrance ei myöskään toimi toimialueen käyttäjätunnuksilla  :Sad: 

----------

## shS

heti sain toimimaan, kun ymmärsin konffata noita login managerin omia /etc/pam.d polussa sijaitsevia tiedostoja

 :Embarassed: 

----------

