Network Attached Storage

Inleiding

Om een Network Attached Storage (NAS) in een Linux omgeving te gebruiken zijn er een aantal methoden:
• Network File System (NFS): door SUN Microsystems ontwikkeld. Meestal gebruikt in een Unix of Linux omgeving.
• Service Message Block (SMB): door IBM ontwikkeld om bestanden over een netwerk te delen;
• Common Internet File System:  een sub-set van SMB door Microsoft ontwikkeld. In het spraakgebruik wordt SMB en CIFS als hetzelfde gezien. Ook Microsoft gebruikt tegenwoordig de acroniem SMB. SAMBA is de Unix/Linux implementatie van SMB.
Omdat er vaak in een gemengde omgeving van Linux en Windows wordt gewerkt zal ik in dit artikel uitleggen hoe SMB kan worden geconfigureerd om bestanden op een NAS te gebruiken vanuit Ubuntu. Ik zal twee methoden behandelen.
Welke je kiest is afhankelijk van hoe je Ubuntu en de NAS gebruikt. Het verschil in beide methoden zit in de manier van koppelen (mounten) van een map (Windows share) op de NAS naar een map in Ubuntu. Dit koppelen kan je vergelijken met Netwerkverbinding maken in Windows. Hierbij leg je een verbinding van een map op de NAS naar een drive letter in Windows.
Beide methodes zijn getest met Ubuntu Studio 16.04 en QNAP 4.3.3.0299

Samba installeren

De inhoud van de betreffende Windows share zal worden weergegeven in een map van het Ubuntu systeem. We gaan dus eerst een map aanmaken in Ubuntu. Om duidelijk te laten zien dat het om een Windows share gaat geven we de map bijvoorbeeld een naam zoals images_share voor de Windows share images.
We maken nu een sub-map aan in de map media. We openen daarom een terminal sessie en geven de volgende commando’s:
sudo mkdir /media/images_share
sudo chown <gebruiker> /media/images_share
  (waarin <gebruiker> de Ubuntu gebruikersnaam is).

Voor beide methodes moeten we nu eerst Samba installeren en configureren in Ubuntu. Omdat dit system-utilities zijn gebruiken we Synaptic om de gewenste bestanden te installeren.
Via menu >s ystem > synaptic starten we synaptic op. We geven als zoekopdracht cifs. We zetten nu vinkjes bij cifs-utils, samba en samba-client. Daarna klikken op toepassen. De programma’s worden nu geïnstalleerd.

De volgende stap is het aanpassen van de Werkgroepnaam in Ubuntu. Geef in de terminal het volgende commando:

sudo leafpad /etc/samba/smb.conf

verander de naam van de Workgroup naar je eigen werkgroepnaam en zet er onder:
name resolve order = bcast host

Sla het bestand op en herstart nu de laptop.

We zijn met de voorbereidingen klaar voor het gezamenlijke deel van beide methodes en kiezen nu één van beide methodes om verder te gaan.

Linux Pluggable Authentication Modules

Bij deze methode wordt aangekoppeld tijdens het inloggen door de gebruiker.
Pluggable Authentication Modules (PAM) bieden de mogelijkheid transparant een verbinding te leggen naar mappen op de NAS. Bij deze methode is vereist dat:

  • de gebruiker met zijn gebruikersnaam en wachtwoord inlogt als Ubuntu opstart en
  • de Ubuntu-gebruikersnaam met het wachtwoord gelijk zijn aan de NAS-gebruikersnaam met het wachtwoord.

Bij deze methode worden de in Ubuntu opgeslagen gebruikersnaam en wachtwoord gebruikt.
Voldoe je niet aan bovengenoemde voorwaarden dan kies je de tweede methode:

Mount via fstab.

Bij deze methode wordt aangekoppeld tijdens het opstarten van Ubuntu. Deze methode kies je:

  • als je automatische inlogt  bij Ubuntu. Dit is gebruikelijk bij een versleuteld systeem met één gebruiker;
  • of als de Ubuntu-gebruikersnaam en het wachtwoord ongelijk zijn aan de NAS-gebruikersnaam en het wachtwoord.

Linux Pluggable Authentication Modules

We gaan PAM installeren. We starten synaptic weer op en installeren nu  Libpam-mount. Nu moeten we deze nog configureren. Geef in de terminal het volgende commando:
sudo leafpad /etc/security/pam_mount.conf.xml

Voeg de volgende parameter toe in het bestand:
<volume sgrp="<groep>" fstype="cifs" server="ip-adres" path="Images" mountpoint="/media/images_share" />
Hierin is <groep> bijvoorbeeld de groep van de gebruiker met dezelfde naam als de gebruiker of een bestaande groep waarin de gewenste gebruikers worden opgenomen. Je kan bijvoorbeeld ook de bestaande groep sambashare  kiezen. Het ip-adres is het adres van de NAS (niet de naam!)
Sla het bestand op.

We voegen aan de gekozen groep de gebruikers toe of controleren of de gewenste gebruikers er in staan. Ga naar naar: menu>Systeem>Gebruikers en groepen.

Klik op Groepen beheren, selecteer de gewenste groep, bijvoorbeeld sambashare en klik op Eigenschappen. Er moet een vinkje staan bij gewenste groepsleden.  Sluit af en geef je root-wachtwoord op.

 

Groepen instellen Eigenschappen groep sambashare

 

We gaan de hierboven genoemde gebruikersgroep schrijftoegang geven tot de map images_share.
Navigeer via het Bestandsysteem naar de map media. Klik met de rechtermuisknop op het icon images_share en klik op de tab Rechten. Selecteer bij Groep de gekozen gebruikersgroep. Je krijgt dan de vraag Recursief toepassen?. Bevestig deze vraag met Ja. Bij Toegang kies je Lezen en schrijven. Bij de vraag Recursief toepassen?, kies je weer Ja. Sluit af.

Rechten instellen Recursief toepassen?

 

Om te testen of het koppelen goed gaat, herstarten we de laptop.

Mount via fstab

Deze methode heeft als nadeel dat je zelf een bestand moet aanmaken met gebruikersnaam en wachtwoord. Je moet dus zorgen dat dit bestand niet zomaar door iedereen te lezen valt. Dit is eigenlijk alleen echt veilig te realiseren op een (gedeeltelijk) versleuteld systeem. Het bestand .smbcredentials moet in een versleutelde map staan. De punt voor de bestandsnaam geeft aan dat het een verborgen bestand is.

Geef in de terminal het commando: sudo leafpad ~/.smbcredentials

In het bestand zetten we:

username=gebruikersnaam
password=gebruikerswachtwoord

en slaan het op.

N.B. Dit zijn de gebruikersnaam en het gebruikerswachtwoord van de Windows share op de NAS.

Om het bestand te beveiligen geven we In de terminal het commando:

sudo chmod 600 ~/.smbcredentials

Geef in de terminal het volgende commando:

sudo leafpad /etc/fstab

Voeg in het bestand de volgende regel toe:

//ip-adres/images /media/images_share cifs uid=<gebruiker>,credentials=/home/<gebruiker>/.smbcredentials,iocharset=utf8,sec=ntlm,vers=3.0 0 0

en sla het bestand op.

N.B.1. ip-adres is het adres (niet de naam!) van de NAS en <gebruiker> is de naam van de Ubuntugebruiker.
N.B.2. vers=3.0 geeft de SMB versie aan. Gebruik voor een oudere NAS bijvoorbeeld 1.0, 2.0 of 2.1.

Om te testen of het koppelen goed gaat geven we in de terminal het volgende commando:
sudo mount -a

Gekoppelde mappen op het bureaublad

De gekoppelde Windows Shares verschijnen op het bureaublad. Dat geldt ook voor gekoppelde USB-sticks en -schijven. Dit kan worden uitgeschakeld. Kies menu>Instellingen en systeembeheerder. Selecteer Instellingenbeheerder Xfconf. In het linker deel van het venster selecteer je: xfce4-desktop. Bij desktop-icons>show-removable haal je het vinkje weg onder Waarde.

Instellingengewerker voor Xfconf

 

Conclusie

De te kiezen methode voor het aankoppelen van NAS mappen wordt mede bepaald door het gebruik van gebruikersnamen en wachtwoorden. De beveiliging van gegevens is uiteraard een belangrijk aspect. Voor de uiteindelijke gebruiker kunnen de mappen op de NAS dan transparant, alsof het lokale mappen zijn, worden gebruikt.

Links

  1. https://nl.wikipedia.org/wiki/Network_File_System
  2. https://www.samba.org/
  3. http://www.linux-pam.org/
  4. https://xfce.org/
Categorieën