Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)  (gelezen 3311 keer)

wlevels

  • Gast
SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)
« Gepost op: 2008/09/20, 10:55:04 »
Beste medeforummers,

Allereerst even de melding dat ik wel degelijk gezocht heb, dus zou dit al ergens staan mijn oprechte excuses :)

Ik ben van plan binnenkort een (klein) bedrijfje over te laten stappen van een windows fileserver naar een samba server.
Nu ben ik er inmiddels achter dat chmod niet voldoende rechtenopties heeft om een fatsoenlijke bedrijfsfileserver in te richten, en ben ik aan de slag gegaan met ACL's.

Na wat testen ben ik erachter gekomen dat ACL's alleen kijken naar de primary group (in mijn configuratie dan),
waardoor ik nog een beetje in de problemen zit met rechten goed in te delen.

Ik wil namelijk dat gebruikers lid kunnen worden van meerdere groups, en dat bij het ophalen van een map/bestand niet alleen gekeken wordt wat de primary group is mbt.  rechten, maar ook naar evt. andere toegevoegde groups.

Hoe is het op te lossen? om gebruikers toe te voegen aan meerdere groups of wie heeft een andere oplossing?

Alvast enorm bedankt voor het meedenken/helpen!

SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)
« Reactie #1 Gepost op: 2008/09/20, 11:28:02 »
Geen idee of dit aan je wensen voldoet maar dit is een How-To van mijn forum hoe je Samba goed configureert in Ubuntu-Debian.
En anders kan je eruit halen wat je nodig hebt.

##################
Introductie:

Al een geruime tijd ben ik bezig om samba werkende te krijgen op mijn Linux (Ubuntu) server/fileserver.
Na flink zoeken met Google voor een oplossing, heb ik veel topics gevonden met hetzelfde of bijna hetzelfde probleem die ik had.
Veel mensen zien een zeer belangrijk ding over het hoofd of vergeten het, maar als je het weet dan is het zo als altijd…………. simpel
sudo smbpasswd -a [gebruiker] was voor mijn de bottleneck.


Ik ga er van uit dat je ergens al een map op je Linux PC hebt staan die je wil delen.
Ik heb de map in de root van mijn HDD staan (je kan de mapjes natuurlijk ook ander noemen)
/data/werkmap
/data/mp3

Handig is om Webmin te installeren voor het beheer. ( Hoe je Webmin moet installeren vind je hier )


Samba instaleren:

Open je browser en typ https://localhost:10000/ of ipv "localhost"  het IP adres van de PC waarop Linux+Webmin draait.
Log in als "root"  en vul je root wachtwoord in.
Klik op de knop "Servers"  (3e knop links boven) en vervolgens op "Samba Windows File Sharing"
Instaleer nu Samba via de link op de pagina, Webmin gaat nu Samba instaleren.
(doe niks met de pagina tot dat Webmin klaar is)


Gebruikers aanmaken:

Klik nu op de knop "Systeem"  en vervolgens op "Gebruikers en Groepen"
Klik nu op "Voeg een nieuwe gebruiker toe"

[Details van gebruiker]
Gebruikersnaam: de inlog naam van de account die gebruik mag maken van jou fileserver
(Dit kan een account op een Windows PC zijn of op een Linux PC)

Wachtwoord: "Geen wachtwoord vereist"  & "Aanmelden tijdelijk onmogelijk maken"  aanvinken.
(wees gerust, wachtwoord aan maken doen we dadelijk op een andere manier)

[Wachtwoord Opties]

Minimaal dagen geldig = 0
Dagen vooraf waarschuwen = 7
Vervaldatum: leeg laten
Maximaal dagen geldig = 99999
Aantal dagen inactief: leeg laten

[Groepslidmaatschap]

Primaire groep: Bestaande groep = Users

[Bij het aanmaken..]

Thuismap aanmaken = Nee
Bestanden naar thuismap kopiëren = Nee
Gebruiker toevoegen in andere modules = Ja

Om het af te ronden klik je op "aanmaken"

Voor meerdere gebruikers het stukje "Gebruikers aanmaken"  herhalen.


SMB-password aan maken:

Je SMB-password aan maken kan via je "terminal"  venster gedaan worden of met putty via SSH.
SSH server moet eerst wel draaien, ander gaat het niet.
Je kan SSH ook installeren via Webmin onder de knop "Servers" , maar om een vage rede gaat dat bij mij niet.
Dus de SMB-password maken we aan met het terminal venster.

Ga nu naar je Linux PC en open je terminal venster.
Toepassingen --> Hulpmiddelen --> Terminal

Geef nu de opdracht "sudo -s"  vervolgens je root wachtwoord.
Nu heb je root rechten, dat wil zegen dat je dingen kan installeren.
Geef nu de opdracht smbpasswd -a [gebruiker]
En vervang "[gebruiker]"  voor de gebruikers naam die we eerder via Webmin hebben aangemaakt (zonder de 2 haken)
Nu krijg je de melding dat je een nieuw wachtwoord kan in geven en als je dat hebt gedaan word er gevraagd of dat je hetzelfde wachtwoord wil bevestigen.

Dit herhaal je voor de eventuele andere gebruikers die je hebt aangemaakt.

Nu we toch in het terminal scherm zitten kan je ook SSH instaleren, hoeft niet, maar is wel makkelijk.
De opdracht is simpel --> apt-get install ssh


Samba configureren:

Ga nu naar je browser waar in webmin nog in is geopend.
Klik nu op "server"  --> "Samba Windows File Sharing"  & vervolgens op "Edit Config File"

Kopieer uit het code blok hier onder mijn config file en pas hem aan voor je eigen situatie.


Dit is een voorbeeld van mijn Samba config file[global]
   workgroup = DOMA
   netbios name = MOSCOW
   server string = %h server
   obey pam restrictions = Yes
   passdb backend = tdbsam
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* .
   syslog = 0
   log file = /var/log/samba/log.%m
   max log size = 1000
   load printers = No
   dns proxy = No
   wins support = yes
   panic action = /usr/share/samba/panic-action %d
   invalid users = root

   

[Werkmap-Jana]
   path = /data-doma/werkmap-jana
   valid users = server, jana
   admin list = server
   write list = server, jana
   read only = Yes
   guest ok = Yes
   hosts allow = 192.168.1.0/255.255.255.0
   create mask = 0777
   directory mask = 0777

[Werkmap-Pivni]
   path = /data-doma/werkmap-pivni
   valid users = server, jana
   admin list = server
   write list = server
   read only = Yes
   guest ok = Yes
   hosts allow = 192.168.1.0/255.255.255.0
   create mask = 0777
   directory mask = 0777

[MP3]
   path = /data-doma/mp3
   valid users = server, jana, michal
   admin list = server
   write list = server
   read only = Yes
   guest ok = Yes
   hosts allow = 192.168.1.0/255.255.255.0
   create mask = 0777
   directory mask = 0777

[Root-server]
   path = /
   valid users = server
   admin users = server
   read only = No
[global]

 - workgroup = DOMA
DOMA is de naam van mijn network, maak hier van wat jij wil.
Vergeet dit dan niet bij de werkstations ook te doen.
WinXP home is standaard "MSHOME"
WINXP Pro is standaard "WERKGROEP"  (Engelse versie = WORKGROUP)

-   netbios name = MOSCOW
Mijn server heet Moscow en met de "netbios name"  via http://moscow op mijn netwerk benaderen.
Dus als ik webmin wil opstarten, dan type ik https://moscow:10000
Dat is veel makkelijker te onthouden dan een IP adres.
Let op! Dit werkt alleen maar via je eigen netwerk.


[Werkmap-Jana]

 -path = /data-doma/werkmap-jana
Dit is de werkmap van Jana, in deze map heeft zij lees- en schrijfrechten.
Server heeft hier alle rechten.

 - valid users = server, jana
 - admin list = server
 - write list = server, jana
Zo stel je dan de rechten af op de map "werkmap-jana"

 - hosts allow =x.x.x.0/255.255.255.0
(Hier ben ik nog niet uit of dat dit wel nut heeft, dat moet ik nog testen)

Vul hier het IP adres in van je router, de laatste cijfer eindig vaak met een 1, maak hier 0 van.
255.255.255.0 is het subnetmask, vaak is dit hetzelfde wat ik hier heb, controleer dat even.


[Werkmap-Pivni]

 -path = /data-doma/werkmap-pivni
Dit is de werkmap van Pivni, in deze map heeft hij lees- en schrijfrechten.
Server heeft hier alle rechten en Jana heeft alleen maar leesrecht.

 - valid users = server, pivni, jana
 - admin list = server
 - write list = server, pivni
Zo stel je dan de rechten af op de map "werkmap-pivni"

 - hosts allow =x.x.x.0/255.255.255.0
(Hier ben ik nog niet uit of dat dit wel nut heeft, dat moet ik nog testen)

Vul hier het IP adres in van je router, de laatste cijfer eindig vaak met een 1, maak hier 0 van.
255.255.255.0 is het subnetmask, vaak is dit hetzelfde wat ik hier heb, controleer dat even.


[MP3]

 -path = /data-doma/mp3
Dit is een map waar alleen gebruiker "server"  alle rechten heeft.
Server heeft hier alle rechten en Pivni, Jana en Michal hebben alleen maar leesrecht.

 - valid users = server, pivni, jana, michal
 - admin list = server
 - write list = server
Zo stel je dan de rechten af op de map "werkmap-pivni"

 - hosts allow =x.x.x.0/255.255.255.0
(Hier ben ik nog niet uit of dat dit wel nut heeft, dat moet ik nog testen)

Vul hier het IP adres in van je router, de laatste cijfer eindig vaak met een 1, maak hier 0 van.
255.255.255.0 is het subnetmask, vaak is dit hetzelfde wat ik hier heb, controleer dat even.


[Root-server]
 - path = /
 - valid users = server
 - admin users = server

Zo als je al aan "path"  kan zien is dit de root van mijn Linux server.
Hier heeft alleen Server rechten en voor de rest niet (ook geen leesrecht)

Kijk hier mee alsjeblieft uit, hier mee kan je mappen en bestanden van je Linux PC lezen, bewerken, maar ook verwijderen.
Hiermee kan je dus heel je server mee verpesten.

Vindt je dit eng, zet het er dan niet bij!!
I don't suffer from insanity, I enjoy every minute of it.
Microsoft geeft je een raam, Linux geeft je een heel huis :D

wlevels

  • Gast
SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)
« Reactie #2 Gepost op: 2008/09/20, 11:34:00 »
Citaat van: Gandyman
Geen idee of dit aan je wensen voldoet maar dit is een How-To van mijn forum hoe je Samba goed configureert in Ubuntu-Debian.
En anders kan je eruit halen wat je nodig hebt.....
Daar zal zeker wel wat bruikbaars instaan, alvast bedankt, ik ga er zo eens doorheen bladeren :-P

thanks!

[EDIT]

Hey Gandyman, thanks voor de info/handleiding, helaas staat hier niet in wat ik precies wil weten. Ik wil weten hoe gebruikers lid kunnen worden van meerdere groups, of in ieder geval hoe gebruikers op verschillende mapjes met verschillende grouplidmaatschappen rechten kunnen krijgen.

Toch bedankt voor je info, er staat natuurlijk wel wat dingetjes in die ik nog niet wist!:)

SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)
« Reactie #3 Gepost op: 2008/09/20, 11:39:39 »
Krijg een hoop � hier ;)

Ah, heb niks gezegd :)

SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)
« Reactie #4 Gepost op: 2008/09/20, 12:17:00 »
Citaat van: wlevels
[EDIT]

Hey Gandyman, thanks voor de info/handleiding, helaas staat hier niet in wat ik precies wil weten. Ik wil weten hoe gebruikers lid kunnen worden van meerdere groups, of in ieder geval hoe gebruikers op verschillende mapjes met verschillende grouplidmaatschappen rechten kunnen krijgen.

Toch bedankt voor je info, er staat natuurlijk wel wat dingetjes in die ik nog niet wist!:)
Hm?
Dan moet je toch nog ff 10 minuten blijven staren naar de tekst.

Ik pak even dit stukje uit de How-To
Citaat
[Werkmap-Jana]

-path = /data-doma/werkmap-jana
Dit is de werkmap van Jana, in deze map heeft zij lees- en schrijfrechten.
Server heeft hier alle rechten.

- valid users = server, jana
- admin list = server
- write list = server, jana
Zo stel je dan de rechten af op de map "werkmap-jana"

- hosts allow =x.x.x.0/255.255.255.0
(Hier ben ik nog niet uit of dat dit wel nut heeft, dat moet ik nog testen)

Vul hier het IP adres in van je router, de laatste cijfer eindig vaak met een 1, maak hier 0 van.
255.255.255.0 is het subnetmask, vaak is dit hetzelfde wat ik hier heb, controleer dat even.
Hier zie je dat jana bepaalde rechten heeft gekregen haar eigen map.

Dan de MP 3 map
Citaat
[MP3]

-path = /data-doma/mp3
Dit is een map waar alleen gebruiker "server"  alle rechten heeft.
Server heeft hier alle rechten en Pivni, Jana en Michal hebben alleen maar leesrecht.

- valid users = server, pivni, jana, michal
- admin list = server
- write list = server
Zo stel je dan de rechten af op de map "werkmap-pivni"
Je ziet hier dat de geldige gebruikers "server, pivni, jana, michal" zijn.

Niemand heeft schrijf rechten alleen lees rechten.
Dit kan je weer veranderen door bij de write list de naam "jana" te zetten.

En zo of op deze manier stel je dat in voor iedere map die je wilt delen op het netwerk.
I don't suffer from insanity, I enjoy every minute of it.
Microsoft geeft je een raam, Linux geeft je een heel huis :D

wlevels

  • Gast
SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)
« Reactie #5 Gepost op: 2008/09/20, 12:25:45 »
Citaat van: Gandyman
Hm?
Dan moet je toch nog ff 10 minuten blijven staren naar de tekst.
Ja maar dan stel je de rechten in per gebruiker, ik weet dat dat werkt, maar ik vroeg me af of het ook mogelijk was om met groepen te werken, bijvoorbeeld:

datatree:

DATA
  - MAPJE1
  - MAPJE2

Op mapje1 geef je de group "mapje1rwx" rwx-rechten
Op mapje1 geef je de group "mapje1r" r-rechten

Op mapje2 geef je de group "mapje2rwx" rwx-rechten
Op mapje2 geef je de group "mapje2r" r-rechten
 
Ik zou het dan liefst vervolgens zo inrichten:

User moet rwx-rechten in mapje1 hebben en r-rechten in mapje2. Dan wou ik dus user toevoegen aan de groups "mapje1rwx" en "mapje2r". Helaas gaat dit niet omdat je de user maar 1 primary group kunt toewijzen, ik vraag me dus af of het mogelijk is om een user lid te maken van meerdere groups.

Opzich is het geen probleem om de gebruikers per map rechten toe te wijzen, maar stel je werkt met een bedrijfsomgeving van 100 users, en je moet 50 users rechten geven op een nieuw aangemaakt mapje, daar wordt je niet blij van als je op userniveau de rechten moet toewijzen.

greets

sorry voor de onduidelijkheid

Offline rja

  • Lid
SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)
« Reactie #6 Gepost op: 2008/09/20, 16:15:15 »
Citaat van: wlevels
User moet rwx-rechten in mapje1 hebben en r-rechten in mapje2. Dan wou ik dus user toevoegen aan de groups "mapje1rwx" en "mapje2r". Helaas gaat dit niet omdat je de user maar 1 primary group kunt toewijzen, ik vraag me dus af of het mogelijk is om een user lid te maken van meerdere groups.
Dat moet mogelijk zijn met acl. - weinig gebruikt onder Linux, maar wel onder Solaris.

Op mijn systeem heb ik

via : usermod -a -G samba rja

Opgelet : niet de -a vergeten, want dan kun je zelf buitensluiten, omdat je niet meer in de groep admin zit om root te worden, heb ik door schade en schande  net en geleerd

rja toevoegd aan de groep samba

sudo mkdir map
sudo setfacl -m g:samba:rwx map

De groep samba rechten in die directory gegeven.

Om met acl te werken onder ubuntu, moet je wel de optie acl meegegeven in /etc/fstab op de filesystems waar je met acl wilt werken.

wlevels

  • Gast
SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)
« Reactie #7 Gepost op: 2008/09/20, 16:49:45 »
Citaat van: rja
Opgelet : niet de -a vergeten, want dan kun je zelf buitensluiten, omdat je niet meer in de groep admin zit om root te worden, heb ik door schade en schande  net en geleerd

rja toevoegd aan de groep samba
Nu weet ik dus ook de oorzaak waarom ik net ook geen rootaccounts meer had :-S

Ok, ga het eens proberen (nadat ik mijn systeem opnieuw geinstalleerd heb OMG haha

Offline rja

  • Lid
SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)
« Reactie #8 Gepost op: 2008/09/20, 16:55:09 »
Citaat van: wlevels
Nu weet ik dus ook de oorzaak waarom ik net ook geen rootaccounts meer had :-S

Ok, ga het eens proberen (nadat ik mijn systeem opnieuw geinstalleerd heb OMG haha
Je hoeft niet opnieuw te installeren.

In het boot recovery kiezen, root prompt kiezen.

En dan :  usermod -a -G admin

Daana werkt het weer.

wlevels

  • Gast
SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)
« Reactie #9 Gepost op: 2008/09/20, 17:30:06 »
Citaat van: rja
Je hoeft niet opnieuw te installeren.

In het boot recovery kiezen, root prompt kiezen.

En dan :  usermod -a -G admin

Daana werkt het weer.
thanks voor de info, had hem al opnieuw draaien, heb toch van de kale installatie vmware images, maar dan is die voor de volgende keer haha.

wlevels

  • Gast
SAMBA tekortkoming mbt. primary en secondary groups?(ACL's)
« Reactie #10 Gepost op: 2008/09/20, 18:24:59 »
bedankt iedereen voor het meedenken, het is nu door rja opgelost.

Ik weet ook waar de fout heeft gelegen, ik heb via webmin in de users zitten kijken, en heb niet vanuit de groepen users toegevoegd, maar wou vanuit de user groepen toevoegen, dit was foutgegaan, maar nu begrijp ik het.

thanks!