Sziasztok!
Holnap kezdek telepíteni egy Samba AD DC-t Debian 12-n. ((Az elmúlt hetekben tematikusan átolvastam a vonatkozó SambaWiki oldalakat, és az interneten fellelhető néhány egyéb leírást.))
- A Samba AD DC-n a sysvol és netlogon megosztáson kívül nem lesz egyéb megosztás, de mellette lesz két samba member szerver, amelyeken a megosztások lesznek.
- A Samba provisioning --use-rfc2307 paraméterrel lesz futtatva. A csoportok és felhasználók létrehozásakor a NIS kiterjesztés által elvárt gidNumber, uidNumber, loginShell, unixHomeDirectory adatokat meg fogom adni.
- A tartományba 110 PC lesz beléptetve és lesz a hálózatban még 20 PC, amelyek ugyan nem lesznek tartományba beléptetve, de a samba member szervereken lévő megosztásokat el kell, hogy érjék.
A SambaWiki oldalon olvastam a következőket:
- Adding Unix attributes to an existing computer account: You need to set the uidNumber attribute to access samba shares on a domain with the Windows machine network account.
- Computers, or: 'machine network accounts', must have the uidNumber attribute set to access shares on samba domain members. The Users and Computers Primary Group must have a gidNumber attribute set.
- Adding Unix attributes to an existing computer account
- Setting attributes on a computer account
- Idmap_config_ad :: Prerequisites
Ennyi információ után a kérdés:
- Ezek szerint a Domain Computers csoportnál is be kell állítani a gidNumber értéket? Milyen következménnyel jár, ha a Domain Computers csoportnál nem állítom be a gidNumber értéket?
- Továbbá a tartományba léptetett PC-knek is be kell állítani egy egyedi uidNumber értéket? Milyen következménnyel jár, ha nem állítom be a tartományba léptetett PC-knek az uidNumber értéket?
((Jelenleg még egy Samba 4.5.8-as AD CD-t használunk, ott nem állítottam be a tartományba léptetett PC-knek uidNumber értéket, és a Domain Computers csoportnak se adtam meg gidNumber értéket (member server nincs), ennek ellenére a felhasználók elérik a Samba AD DC-n lévő megosztásokat.))
- 419 megtekintés
Hozzászólások
A két member server közös fájlrendszert fog használni vagy lesz köztük bármilyen nem-SMB kommunikáció? Ha nem, akkor ha rám hallgatsz, ne szívasd magad az RFC 2037-el. (NFS elérésnél látszódhatnak "kívülre" a uid/gid értékek, de az meg eleve ellenjavalt, hogy Samba által kezelt elérési utat NFS-en is kiossz, mert bár van némi mapping az NTACL-ekről a POSIX ACL-ekre, nem tökéletes)
1. Ha senki nem használja, akkor semmi, ha bármi használja (mert member serverek úgy vannak beállítva, hogy használják), akkor arra a csoportra nem lesz id-d.
2. Ha akarsz nekik id-t adni (mert valaha bármikor bárki lekérheti, bármelyik gép), akkor igen.
Még ha kellenek is az egységes UID/GID értékek a Linuxokon, szerintem a rid/autorid idmap backendekkel jobban jársz: https://wiki.samba.org/index.php/Idmap_config_rid (a RID a SID legutolsó - utáni része, egy folyamatosan növekvő egész szám minden SID-del rendelkező objektumra (securityPrincipal osztályú LDAP objektumok). Nem lesz sorfolytonos a usereidre, de garantáltan egyedi és nem kell kézzel matatni...
BlackY
"Gyakran hasznos ugyanis, ha számlálni tudjuk, hányszor futott le már egy végtelenciklus." (haroldking)
- A hozzászóláshoz be kell jelentkezni
Köszönöm a választ. Elnézést, amiért ilyen sokára válaszolok.
A két member server nem fog közös fájlrendszert használni: az egyik egy VM (ez már telepítve, beléptetve MEMBER-ként), a másik egy fizikai gép lesz (ez még nincs kész).
Az idmap backendek tekintetében azért esett a választásom első körben az ad-ra, mert ez állt legközelebb ahhoz, amit most (korábban, eddig) használunk. Javaslatod alapján újra átolvasgattam az ad, rid, és autorid idmap backendek leírásait. Alapvetően nem gondolom az ad backend használatát problémásnak, de átgondolva az igényeket, végül az autorid-et elvetettem, az ad és a rid backendek közül pedig a rid-et választottam. Annak ellenére, hogy a rid backendet választottam, a Samba AD DC szerveren a samba provisioninget --use-rfc2307 paraméterrel futtattam (a rid backend úgy is figyelmen kívül hagyja az esetlegesen beállított RFC2307 értékeket), de így megmarad a lehetősége annak, hogy ha később szükség lesz rá, akkor mégis beállítsak RFC2307 értékeket.
- A hozzászóláshoz be kell jelentkezni
A Setting up Samba as a Domain Member - Starting the Services leírás szerint a member serveren csak az smbd, nmbd és winbind szolgáltatásokat kell elindítani.
Kérdések:
- A member serveren a samba / samba-ad-dc szolgáltatást disabled-re kell állítani, és legyen masked?
- Az ad backend leírásánál az smb.conf-ban használva van a vfs objects = acl_xattr és a map acl inherit = yes érték (a rid backend leírásában ezek az értékek nem szerepelnek). Ezeket az értékeket csak akkor kell használni (ad vagy rid backend-től függetlenül), ha Windows oldalról állítom be a megosztás jogosultságait? A man samba oldal szerint ezek (S)hare szintű paraméterek, ennek ellenére tehetem a [global]-ba és akkor az összes megosztásra érvényes lesz? Vagy megtehetem azt is, hogy ezeket a beállításokat csak azoknál a megosztásoknál állítom be, ahol a megosztás jogosultságait Windows oldalról (is) állítgatom?
- A hozzászóláshoz be kell jelentkezni
A 2. kérdésemre megtaláltam a válaszokat a Setting up a Share Using Windows ACLs SambaWiki oldalon.
- A hozzászóláshoz be kell jelentkezni
Az elsőre: ha csak member server, akkor igen, smbd/winbind (nmbd szerintem felesleges) kell, a többit lehet maskolni.
A másodikra: testparm megmondja, nekem úgy rémlik, csak share szinten állítható. Itt arra figyelj, hogy ha DC-n állítgatod sysvol/netlogon share-nél, akkor az alapértelmezetteket (acl, dfs, ilyesmik) is fel kell venned (bár mintha egy idő után berakták volna, hogy ezek expliciten legyen ott, de nem esküszöm meg rá).
BlackY
"Gyakran hasznos ugyanis, ha számlálni tudjuk, hányszor futott le már egy végtelenciklus." (haroldking)
- A hozzászóláshoz be kell jelentkezni
Köszönöm a választ!
Az nmbd-re fölöslegességéről én is olvastam, majd meglátom, hogy engedélyezve marad-e vagy sem.
Akkor a samba-ad-dc szolgáltatást maskolom.
- A hozzászóláshoz be kell jelentkezni
Az alábbi már eltér az eredeti kérdéstől, de úgy gondoltam, hogy nem nyitok új szálat.
A member serveren lesznek a megosztások, elsők között a "home" megosztás (\\m1\users\%LogonUser%), amelyet az alábbi leírásokból kiindulva, és a saját igényeket figyelembe véve próbáltam beállítani.
A member szerveren létrehoztam a könyvtárstruktúrát, beállítottam a mappa tulajdonosát és az engedélyét:
# mkdir /srv/samba/share1/users
# chgrp "SULI\Domain Users" /srv/samba/share1/users/
# chmod 2750 /srv/samba/share1/users/
# tail -6 /etc/samba/smb.conf
[users]
path = /srv/samba/share1/users/
read only = no
force create mode = 0600
force directory mode = 0700
Majd a mappára beállítottam az alábbi Posix ACL-t:
# setfacl -m user::rwx,\
user:root:rwx,\
group::---,\
group:root:---,\
group:"SULI\Domain Admins":rwx,\
mask::rwx,\
other::---,\
default:user::rwx,\
default:user:root:rwx,\
default:group::---,\
default:group:root:---,\
default:group:"SULI\Domain Admins":rwx,\
default:mask::rwx,\
default:other::--- /srv/samba/share1/users/
Az alábbi két parancsot nem futtattam. Kellenek ezek, vagy a fenti setfacl parancsban az other-rel ugyanezt érem el?
# setfacl -m group:"SULI\Domain Users":--- /srv/samba/share1/users/
# setfacl -m default:group:"SULI\Domain Users":--- /srv/samba/share1/users/
A Samba AD CD szerveren létrehoztam egy felhasználót:
# samba-tool user add tesztelektanulo \
--use-username-as-cn \
--surname=Teszt \
--given-name='Elek Tanulo' \
--home-drive='H:' \
--home-directory='\\m1.suli.lan\users\tesztelektanulo'
New Password:
Retype Password:
User 'tesztelektanulo' added successfully
Majd a member szerveren létrehoztam az új felhasználó hálózati "home" mappáját:
# mkdir /srv/samba/share1/users/tesztelektanulo
<del># chmod 700 /srv/samba/share1/users/tesztelektanulo</del>
# chown 'SULI\tesztelektanulo' /srv/samba/share1/users/tesztelektanulo/
A 2. parancs nem törli az SGID bitet? Szükség van erre a parancsra?
Majd a felhasználó mappájára beállítottam két további Posix ACL szabályt:
# setfacl -m user:'SULI\tesztelektanulo':rwx,default:user:'SULI\tesztelektanulo':rwx /srv/samba/share1/users/tesztelektanulo/
A felhasználó mappája az alábbi ACL-ekkel rendelkezik:
# getfacl /srv/samba/share1/users/tesztelektanulo/
getfacl: Removing leading '/' from absolute path names
# file: srv/samba/share1/users/tesztelektanulo/
# owner: SULI\\tesztelektanulo
# group: SULI\\domain\040users
# flags: -s-
user::rwx
user:root:rwx
user:SULI\\tesztelektanulo:rwx
group::---
group:root:---
group:SULI\\domain\040admins:rwx
mask::rwx
other::---
default:user::rwx
default:user:root:rwx
default:user:SULI\\tesztelektanulo:rwx
default:group::---
default:group:root:---
default:group:SULI\\domain\040admins:rwx
default:mask::rwx
default:other::---
Jók lesznek ezek a beállítások?
Kb. 500 felhasználót kell felvennem, és nem akarom az ADUC-ban egyesével beállítani a homeDerectory-t path-t.
- A hozzászóláshoz be kell jelentkezni