[Samba-it] idmap_rid

piviul at riminilug.it piviul at riminilug.it
Tue Apr 5 05:04:38 MDT 2011


Ciao a tutti, migrando un server da debian lenny a squeeze (e
conseguentemente samba da 3.2.5 a 3.5.6) per alcuni utenti e guppi il
mapping uid<->rid e gid<->rid è cambiato. Prima dell'upgrade samba 3.2.5
(o meglio winbind) aveva questa configurazione:
> >    idmap uid = 10000-25000
> >    idmap gid = 10000-25000
> >    idmap backend = rid:DOMINIOCSA=10000-25000
> >    idmap config DOMINIOCSA:backend      = rid
> >    idmap config DOMINIOCSA:base_rid     = 1000
> >    idmap config DOMINIOCSA:range        = 10000 - 25000
> >
> >    allow trusted domains = No
> >    winbind enum users = yes
> >    winbind enum groups = yes
> >    template shell = /bin/bash
> >    winbind offline logon = true

Dopo l'aggiornamento winbind non risolveva più i nomi (e non ho capito
perché) così ho cambiato smb.conf così:
> >    idmap uid = 10000-25000
> >    idmap gid = 10000-25000
> >    idmap backend = rid
> >    idmap range        = 10000-25000
> >
> >    allow trusted domains = No
> >    winbind enum users = yes
> >    winbind enum groups = yes
> >    template shell = /bin/bash
> >    winbind offline logon = true

Ora ho molta confusione e non capisco perché ho dovuto cambiare la
configurazione. Inoltre nella nuova configurazione ho eliminato base_rid
in quanto ho visto essere deprecato.

Comunque, come dicevo, alcuni utenti/gruppi ora hanno cambiato uid/gid.
Ad esempio lo uid di admin era 11202 mentre ora è 10202. E così anche
per gli altri utenti/gruppi che non sono mappati correttamente, c'è
sempre quel 1000 di differenza.

Nella documentazione di idmap_rid vedo che la formula per calcolare lo
uid è ID = RID - BASE_RID + LOW_RANGE_ID. In effetti ad esempio il RID
di admin è 1202 quindi supponendo che il base_rid non sia ancora
cambiato (cioé sia ancora 1000) lo uid corretto è proprio 10202. Ma come
mai prima era 11202?

Ad esempio invece un altro utente ha rid 11782 mentre uid 21782 quindi
il base_rid sembra essere 0. Ma con admin invece sembrava essere 1000.

Inoltre la cosa strana è che a parità di configurazione e di versione di
samba, server membri risolvono gli uid/gid in modo differente aplicando
un base_rid differente (sempre o 0 o 1000) a capocchia e la cosa mi
manda ancora di più in confusione. Ora posso ripassare anche tutti i
permessi ma non vorrei che in seguito debba rifare tutto nuovamente non
trovando in realtà una regola generale che i server membro sembrino seguire.

Se qualcuno avesse qualche idea che mi aiuti a capire gliene sarei molto
grato.

Grazie

Piviul





More information about the samba-it mailing list