Advanced Filesharing met Ubuntu Linux in 4 stappen

In deze uitleg wordt ervan uitgegaan dat je een werkend netwerk hebt met een Windows XP, Windows Vista, Windows 7 of Windows 8 machines hebt draaienen een Ubuntu Linux machine, oftewel: alle machines kunnen met elkaar pingen.

Daarnaast is Windows XP, Windows Vista, Windows 7 of Windows 8 ingesteld op Advanced Filesharing door via My Computer -> Tools -> Folder Options -> View het vinkje bij Use Simple Filesharing uit te zetten.

Let op: zorg ervoor dat het account waarmee je mappen deelt (meestal het administrator account) altijd een wachtwoord heeft, omdat advanced file sharing anders geblokeerd wordt.

Stap 1 – Installatie van Samba
In de eerste stap is het van belang om binnen Ubuntu Linux drie dingen te installeren:

  1. samba – de implementatie van het smb-protocol van Microsoft om printers en bestanden te kunnen delen.
  2. system-config-samba – een interface om eenvoudig instellingen te kunnen doen van samba.

Voor de volgende drie commando’s uit in de terminal:

sudo apt-get install samba

sudo apt-get install system-config-samba

In sommige gevallen werkt het interface om de samba instellingen eenvoudig te doen niet omdat Python-glade niet geïnstalleerd is. Je kunt dit installeren door in de terminal sudo apt-get install python-glade2 uit te voeren.

Stap 2 – Aanmaken gebruikers

In de tweede stap moet je in Ubuntu Linux exact dezelfde gebruikers aanmaken inclusief wachtwoorden als in Windows XP, Windows Vista, Windows 7 of Windows 8. Dit omdat voor de authenticatie in het smb-protocol gebruikers en wachtwoorden gebruikt worden.

Je kunt de benodigde gebruikers aanmaken met het tooltje: User Accounts.

In dit tool maak je alle gebruikers aan die je ook binnen je Windows XP, Windows Vista, Windows 7 of Windows 8 machines hebt draaien. Let op: de inlognamen en wachtwoorden moet 100% gelijk zijn.

Stap 3 – Instellen van Samba

In de derde stap start je Samba op en krijg je onderstaand scherm. Door op de + te klikken krijg je het sub-scherm “Create Samba Share”. Door voor “Browse” te kiezen kun je een map selecteren die je wilt delen. In dit voorbeeld is dat de map “Music”.

1-18-2013 09-42-32 AM

Kies voor “Writable” en “Visible”, zodat vanuit het netwerk iedereen in Samba alle rechten heeft om bestanden in de map te bekijken, aan te passen en nieuwe bestanden toe te voegen. Het beperken van rechten per gebruiker kun je op het niveau van het bestandssysteem (ext3, ext4, …).

1-18-2013 09-42-49 AM

In het tabblad “Access” kies je vervolgens dat iedereen toegang krijgt. Ook hier geldt weer dat het beperken van rechten per gebruikerop op het niveau van het bestandssysteem (ext3, ext4, …) plaatsvindt.

Ten slotte moet je in Samba moet een koppeling leggen tussen de Windows-gebruikers en Linux-gebruikers door een nieuwe Samba user aan te maken. In onderstaand voorbeeld zie je dat jan toegevoegd is.

1-18-2013 12-05-47 PM

Je moet dit ook voor de gebruikers doen die je gebruikt in je eigen netwerk.

stap 4a – Instellen van rechten op bestanden of mappen (eenvoudig)

In de vierde stap stel je de rechten in op het niveau van het bestandssysteem. Zoals in onderstaand screenshot te zien is, heeft de eigenaar alle rechten (rwx), de groep beperkte rechten (r-x) en anderen ook beperkte rechten (r-x).

1-18-2013 09-44-08 AM

Met onderstaand commando kun je de rechten op de map “Music” zo aanpassen dat iedereen alle rechten krijgt.

1-18-2013 09-44-29 AM

In onderstaand scherm zie je dat de rechten van de map “Music” veranderd zijn (rwxrwxrwx in plaats van rwxr-xr-x).

1-18-2013 09-45-03 AM

Uiteraard staat op deze manier alles open voor iedereen op het niveau van het bestandssysteem: “Veilig is anders ;-))”, echter is in het leren van Advanced Filesharing de een goede eerste stap.

stap 4b – Instellen van rechten op bestanden of mappen (moeilijk/veilig)

Zoals genoemd is de manier van instellen in stap 3b niet veilig, want alles staat open voor iedereen. In deze stap wordt uitgelegd hoe je per gebruiker verschillende rechten kun uitdelen. Je zult hiervoor met groepen moeten gaan werken.

Standaard kun je in Ubuntu Linux alleen gebruikers aanmaken en geen groepen, echter kun je eenvoudig een extra tooltje hiervoor installeren: gnome-system-tools. Je doet dit met het volgende commando:

sudo apt-get install gnome-system-tools

Vervolgens krijg je de beschikking over een nieuwe toos dat je kunt gebruiken: “Users and Groups”.

1-18-2013 10-18-46 AM

In dit tool maak je alle gebruikers aan die je ook binnen je Windows XP, Windows Vista, Windows 7 of Windows 8 machines hebt draaien. Let op: de inlognamen en wachtwoorden moet 100% gelijk zijn.

Vervolgens moet je een keuze maken voor de groepen die je aanmaakt. In onderstaande tekening zie je dat jan en karin R-X rechten krijgen op de map “Music”. Miep, jeanne en karel krijgen RWX rechten. In ext3/4 koppel je aan een bestand of map een owner (met RWX-rechten) en een group (met RWX-rechten). Daarnaast kun je voor alle anderen (others) aangeven wat hun rechten zijn.

Dit levert een beperking, omdat een owner een gebruiker moet zijn (en geen group mag zijn).

1-18-2013 11-47-35 AM

Het gevolg hiervan is dat je:

  • een deel van de gebruikers RWX-rechten kunt geven en de rest van de gebruikers R-X-rechten, zoals in bovenstaand voorbeeld, of
  1. een deel van de gebruikers R-X-rechten kunt geven en de rest van de gebruikers geen rechten.

In de rest van de uitleg wordt verder gegaan met het voorbeeld uit het plaatje. Oftewel: aan de group van de map Music wordt een group gekoppeld met miep, jeane en karel als lid. Vervolgens worden de juiste rechten gezet. Daarnaast worden de juiste rechten voor others gezet.

Het aanpassen van de group van de map Music kan met het volgende commando:

1-18-2013 11-54-35 AM

Als volgende stap ga je met het commando chmod de juiste rechten zetten voor de group en others.

Zoals in stap 3a getoond is kun je met het commando chmod te rechten op mappen en bestanden wijzigen.Chmod kun je ook geavanceerder gebruiker:sudo chmod u-r mapnaamMet bovenstaand commando zet je de rechten van de user (u) op niet (-) lezen (r) van mapnaam.sudo chmod u-w mapnaamMet bovenstaand commando zet je de rechten van de user (u) op niet (-) schrijven (w) van mapnaam.sudo chmod u-x mapnaamMet bovenstaand commando zet je de rechten van de user (u) op niet (-) uitvoeren (x) van mapnaam.Je kunt de – vervangen door een + om de rechten weer toe te voegen. Ook kun je u vervangen door de g. Hiermee wijzig je de rechten voor de groep. Als laatste kun je de u vervangen door een o om zo de rechten van de rest (others) te wijzigen.

Zoals in bovenstaande kader te lezen is kun je in bovenstaand voorbeeld de rechten voor de group aanpassen met de volgende commando:

1-18-2013 12-00-04 PM

Zoals in bovenstaande kader te lezen is kun je in bovenstaand voorbeeld de rechten voor others aanpassen met de volgende commando:

1-18-2013 12-00-40 PM

In mijn situatie hadden others RWX rechten, dus haal ik de W-rechten weg. De rede dat ik de x niet weghaal is dat de x bij mappen staat voor het “browsen” van de mappen. Bij bestanden staat de x voor het uitvoeren van het bestand.

Interessante bronnen