Nastavení NAS - Samba
Než začneme nastavovat domácí NAS, potřebujeme mít k routeru připojený disk, buď mSATA SSD disk do routeru, nebo nějaký jiný disk připojený přes USB. Disk by měl být naformátovaný a namountovaný.
Předtím, než budeme cokoli dělat s disky, je potřeba nainstalovat balíčky k tomu určené, pokud ještě nemáme (jinak budou problémy). V reForis se jde do Správa balíčků → Balíčky a zaškrtne se Samba:

Dole na stránce se potvrdí Uložit a je třeba chvíli vyčkat, než se balíčky stáhnou a nainstalují. Ve chvíli kdy je to hotovo, vpravo nahoře se zobrazí notifikace (“zvoneček”).
Dále zapneme Sambu (to je software, který má nastarosti sdílení). V LuCI Systém → Po spuštění najdeme Samba4 a v tomto řádku klikneme na Zakázáno (přepne se tím na Zapnuto) a ve stejném řádku klikneme na Start.
Router restartujeme Správa→Údržba→Restartovat.
Teď je potřeba se zamyslet nad tím, k čemu síťové úložiště chceme použít a jak to bude s uživateli a jejich právy. To je samozřejmě dost individuální. Na svém příkladu ukáži snad dost širokou paletu možností. Budu mít dva uživatele user1 a user2. Každý bude mít vlastní složku a jedna sdílená složka bude na media, ta bude přístupná i pro hosty. Pro zjednodušení pro tento článek bude na stejném disku, v praxi bude pravděpodobně na nějakém usb disku s vysokou kapacitou.
Začneme v terminálu, připojíme se na router a přihlásíme se.
ssh root@192.168.1.1
Zde nás čeká vytváření uživatelů.Takto vytvoříme uživatele user1. Tyto uživatele vytváříme jen pro potřeby Samby, takže bez domovského adresáře, bez hesla a ve skupině users:
useradd --home-dir /var --gid users --no-create-home --shell /bin/false user1
Stejně vytvoříme i uživatele user2:
useradd --home-dir /var --gid users --no-create-home --shell /bin/false user2
Každému uživateli vytvoříme heslo do Samby:
smbpasswd -a user1
smbpasswd -a user2
Pokračujeme vytvořením složek na našem disku (ten už máme namountovaný) v /mnt/ssd
Já si vytvořím na disku složku users a v ní vytvořím složky pro jednotlivé uživatele:
mkdir /mnt/ssd/users
mkdir /mnt/ssd/users/user1 /mnt/ssd/users/user2
Podíváme se do adresáře ssd a vypíšeme si jeho obsah:
cd /mnt/ssd/
ls -l
root@turris:/mnt/ssd/users# ls -l drwxr-xr-x 6 root root 4096 Jul 4 18:26 user1 drwxr-xr-x 5 root root 4096 Jul 4 08:58 user2
Zde vidíme vlastníka root, toho u kořenové složky nechám, protože v této složce bude jenom předem vytvořená struktura bez možnosti ji (třeba omylem) měnit nebo smazat. Některé složky budou pro budoucí aplikace – např. Transmission na stahování torrentů nebo pyLoad na stahování z download serverů. Tyto jednotlivé složky už práva na zápis mít budou. Vytvoříme si strukturu pro uživatele user1:
cd user1
mkdir Private Downloads Shared Torrents
chown user1:users -R /mnt/ssd/users/user1/
chown root:root /mnt/ssd/users/user1/
Teď je potřeba přidělit každé složce práva podle potřeby. Složka Private bude úložiště jen pro uživatele user1, tedy:
chmod 700 Private/
Kromě složky Shared, tam budou moci přistupovat i guest uživatelé, změnímě práva na čtení prouze pro group users (Může tam na čtení jiný zaregistrovaný user, ale ne guest):
chmod 750 Torrents/ Downloads/
Zkontrolujeme:
ls -l
by mělo vyhodit toto:
root@turris:/mnt/ssd/users/user1# ls -l drwx------ 2 user1 users 4096 Jul 4 18:28 Private drwxr-x--- 3 user1 users 4096 Jul 4 20:26 Downloads drwxr-xr-x 2 user1 users 4096 Jul 4 20:23 Shared drwxr-x--- 2 user1 users 4096 Jul 4 19:07 Torrents
Obdobně vytvoříme adresáře i pro uživatele user2.
Potom si v /mnt/ssd/ vytvoříme složku media, která bude sloužit ke sdílení médií. Přímo v kořenové složce bude předem daná struktura adresářů (filmy, seriály, …) a do nich už budou moci zapisovat všichni registrovaní uživatelé:
mkdir /mnt/ssd/media
cd /mnt/ssd/media
mkdir Filmy/ Seriály/ Dokumenty/ Muzika/ Audio/
chown root:users Filmy/ Seriály/ Dokumenty/ Muzika/ Audio/
chmod -R 775 Filmy/ Seriály/ Dokumenty/ Muzika/ Audio/
A nyní nastavení sdílení. Přihlásíme se do LuCI a jdeme do sekce Služby → Síťová sdílení. V obecném nastavení vybereme Rozhraní lan a zaškrtneme Povolit starší (nezabezpečené) protokoly/autentizaci.
Ve Sdílené adresáře klikneme na Přidat. Nejdříve složka pro uživatele user1 – Název: user1, Cesta: /mnt/ssd/user1, zbytek je vidět na obrázku. Přidáme další – Název: user2, Cesta: /mnt/ssd/user2 a poslední Název: media, Cesta: /mnt/ssd/media. Do VFS objekty všude vyplnit btrfs. Další nastavíme podle obrázku, pozor na rozdílné masky pro users a media:

Nakonec klikneme na Uložit & použít. Teď je čas restartovat router a jít si na kafíčko. Vše by mělo být funkční.
Připojení síťových složek
Ve Windows v průzkumníku souborů můžete zadat:
\\192.168.1.1
Po přihlášení jako jeden z uživatelů můžete brouzdat složkami a zkoušet kam to pustí / nepustí (tak jak jsme si nakonfigurovali). Nejlepší je si připojit síťový disk - klikne se pravým tlačítkem na Tento počítač a vybrat v menu Připojit síťovou jednotku... Například vybereme jednotku M: a do Složka vložíme:
\\192.168.1.1\media
Takto se nám disk připojí na stálo. Obdobně si nastavíme další jednotku pro osobní složku jednotlivého uživatele.
Na linuxu do file manageru napíšeme (většina by měla podporovat protokol smb):
smb://192.168.1.1/
A můžeme brouzdat síťovými složkami. Lepší je si složku namountovat (mount obvykle funguje lépe - rychlejší přenos dat). Zde dávám jednoduchý postup na jednorázový mount na Ubuntu forcích - předpokládám uživatele na desktopu desktopuser, který si namountuje disk media jako user1:
sudo apt install cifs-utils
sudo mkdir /media/desktopuser/NAS
sudo chown desktopuser:desktopuser /media/desktopuser/NAS/
sudo mount -t cifs //192.168.1.1/media /media/desktopuser/NAS -o username=user1,uid=desktopuser
Automatický mount při spuštění nastavíme buď ve fstab, nebo vytvoříme spouštěcí skript.