COME COSTRUIRE UN NAS CON MENO DI 100€ [SAMBA SERVER]

8 maggio 2021

Una guida completa all'installazione e alla configurazione di Samba server su Raspberry Pi. Compatibile con Windows, MacOS e Linux!

Ads

In questo articolo andremo a vedere come realizzare una delle più popolari ed economiche soluzioni per costruire un NAS in casa. 

Per chi non avesse ben chiaro cosa sia e quali sono i suoi utilizzi, ecco le prime righe della sua pagina Wikipedia

Un Network Attached Storage (NAS) è un dispositivo collegato alla rete la cui funzione è quella di consentire agli utenti di accedere e condividere una memoria di massa, in pratica costituita da uno o più dischi rigidi, all'interno della propria rete o dall'esterno.

Quello che andremo a fare è utilizzare la rete casalinga nostra per poter condividere al suo interno qualsiasi tipo di file, senza dover collegare via USB o SATA (o chi per loro) nessun dispositivo al nostro computer. 

 

#DI COSA ABBIAMO BISOGNO?

Per utilizzare il programma che vedremo a breve, abbiamo bisogno di un computer sempre acceso che funzioni da "server" dal quale gestire tutte le nostre risorse.

Ma allora ci staremo chiedendo, com'è possibile che costi meno di 100€? Non tutti i computer sono uguali, alcuni sono molto piccoli e, nel nostro caso, girano su ARM per consumare poco e rendere molto. In questa guida andremo ad utilizzare un Raspberry Pi 4 (anche un modello inferiore dovrebbe andare bene). Va benissimo anche un vecchio fisso che abbiamo in casa, con 4GB di RAM ed un processore a 64bit. Non avremo neanche bisogno di installare Windows, basta una versione di Linux leggerissima senza interfaccia grafica, ci servirà solo il terminale. Valide opzioni da considerare sono Debian, Ubuntu Server, Arch (con kernel LTS). Ovviamente teniamo a mente il consumo (e quindi costo) elettrico di tenere sempre acceso un computer fisso: un Raspberry Pi con hard disk non consuma oltre 15W.

Avere un Raspberry Pi collegato in casa è sempre una cosa utile, oltre che divertente. Può essere utilizzato in un'infinità di modi. Per funzionare ha bisogno di un alimentatore e di una Micro SD da almeno 8GB. Nonostante questo è consigliabile comprare anche un case con una ventola integrata. Su Amazon sono presenti svariati kit tutto in uno, eccone alcuni

Raspberry Pi 4: https://amzn.to/2JG7SaU

Sono un po' tutti uguali, cerchiamo di non spendere oltre 80/90€ per la versione con MicroSD da 64GB. Va segnalato che le ventole in dotazione sono spesso rumorose e poco performanti. Se ne abbiamo le capacità possiamo sostituire la ventola con una Noctua. Ecco il nostro risultato

Non è per niente bello da vedere ed il case è stato tagliato brutalmente per far entrare la ventola, ma le temperature sono molto più basse ed il rumore è quasi nullo. Attenzione a quello che facciamo, potremmo rovinare il case in maniera definitiva

APPROFONDIMENTO: Nel caso non sapessimo cosa sia un Raspberry Pi, non è altro che un computer in miniatura con la particolarità di avere un processore con architettura ARM. Se collegato a mouse, monitor e tastiera può essere utilizzato serenamente come computer di tutti i giorni per attività leggere. Ecco alcuni video interessanti a riguardo.

Con un Raspberry Pi, se siamo abbastanza smanettoni, possiamo divertirci parecchio. Sul sito abbiamo già visto un progetto per proteggerci net-wide da ads e tracker quando navighiamo il web 

AdGuard Home su Raspberry Pi: Link

RASPBIAN SI O NO? Facciamo una piccola nota per utenti più esperti. Quando compriamo un kit per Raspberry Pi, in confezione troveremo una Micro SD con già flashato Raspberry Pi OS (R.I.P Raspbian), ma è davvero la soluzione migliore? La risposta dipende dai vari contesti in cui andremo ad utilizzarlo.. Una valida alternativa che ci sentiamo di consigliare (per utenti pratici) è Arch on Arm, una versione community-driven della famosa Arch Linux. Questa è sicuramente la scelta più leggera per chi vuole un'esperienza minimalista ed altamente efficiente. Oltretutto, poter utilizzare il potenziale dell'AUR su un Raspberry Pi, può farci risparmiare tanto tempo

#HARD DISK

Ovviamente se vogliamo costruire un NAS abbiamo bisogno di storage! Essendo questa una soluzione economica basata su un Raspberry Pi, andremo ad utilizzare dei normali Hard Disk esterni. È una soluzione ideale per un uso domestico, per soluzioni più professionali meglio guardare un NAS come questo:

NAS Synology 56TB: https://amzn.to/2RDFcTi

La scelta dell'hard disk dipende ovviamente dalle nostre esigenze, ecco qui diverse opzioni

HDD 2.5"

Toshiba Canvio Basics (1TB): https://amzn.to/3vS8Y5Y
Toshiba Canvio Basics (2TB): https://amzn.to/3nYcuZz
WD Elements (3TB): https://amzn.to/3uvPzHt
WD Elements (4TB): https://amzn.to/2Sr2wUO
WD Elements (5TB): https://amzn.to/3vN7r0Q

HDD 3.5"

WD Elements (4TB): https://amzn.to/3vQAdh3
WD Elements (6TB): https://amzn.to/33qgEjy
WD Elements (8TB): https://amzn.to/3nUcPfW
WD Elements (10TB) https://amzn.to/3xU2yEV

Nel caso in cui avessimo bisogno di cifratura hardware possiamo guardare questi modelli 

WD My Book (vari tagli): https://amzn.to/3h8y0cP
WD My Passport (vari tagli): https://amzn.to/3trgSl6

#PREPARIAMO IL RASPBERRY PI

Nel caso non avessimo ancora effettuato la prima configurazione del nostro Raspberry Pi, possiamo seguire la dettagliata guida ufficiale scritta dal team degli sviluppatori 

Come configurare il Raspberry Pi per la prima volta: Link

Una volta configurato non ci resta che abilitare SSH, in modo da poter controllare il nostro Raspberry Pi da qualsiasi computer. Per abilitare SSH diamo questi due comandi dal terminale 

sudo systemctl enable sshsudo systemctl start ssh

Fatto ciònon ci resta che trovare l'indirizzo IP che è stato assegnato al nostro Pi. Apriamo il terminale e scriviamo

hostname -I

Ci verrà restituito un indirizzo come questo 192.168.1.9, non scordiamolo. Ognuno di noi avrà un indirizzo diverso, quindi non spaventiamoci se nel corso dell'articolo i numeri saranno diversi: basterà sostituirli con quelli corretti.  

Una volta fatto possiamo staccare mouse e tastiera, non ci serviranno più! Torniamo al nostro computer principale. 

  • Su Windows possiamo utilizzare il WSL o altrimenti PuTTY per connetterci al nostro Raspberry Pi
  • Su Linux e MacOS ci basterà utilizzare il terminale già preinstallato nel nostro sistema operativo   

SUGGERIMENTO: È consigliato impostare il Raspberry Pi con un indirizzo IP statico. Qui una guida.

#CONNETTERSI IN SSH

Una volta tornati al nostro computer principale apriamo il terminale che abbiamo scelto in base al nostro sistema operativo e digitiamo 

ssh pi@192.168.1.9

dove al posto di 192.168.1.9 dobbiamo inserire l'indirizzo IP che abbiamo trovato prima con il comando

hostname -I

Ricordiamoci che le credenziali default del Raspberry Pi saranno

  • username: pi
  • password: raspberry

Se vogliamo modificare la password (facciamolo) ci basta scrivere

passwd
dal terminale e seguire le istruzioni.

#MONTIAMO GLI HARD DISK

Tranquilli, non abbiamo comprato questi Hard Disk da IKEA. Montare è inteso come la parola inglese mount, ovvero far leggere al sistema operativo dispositivi esterni.

Teoricamente le ultime versioni di Raspberry Pi OS montano in automatico qualsiasi dispositivo esterno USB, ma per esperienza sappiamo che che questo non sempre succede. Nel caso di problemi consigliamo di seguire la guida ufficiale degli sviluppatori del Raspberry Pi

Come configurare un dispositivo esterno: Link

Ecco un esempio nel caso di due Hard Disk rispettivamente da 8TB e 3TB montanti su un Raspberry Pi. Dove ovviamente la voce mount point varia da dispositivo a dispositivo!

#INSTALLIAMO SAMBA SERVER

In questa guida andremo ad utilizzare forse il più famoso e storico programma per creare piccoli NAS in casa: Samba. Questo programma è una re-implementazione del protocollo di rete SMB. Utilizzando Samba sul nostro Raspberry Pi potremo facilmente condividere cartelle tra i nostri computer (Windows, MacOS e Linux). Questo software ovviamente non è l'unico, utenti più esperti potrebbero preferirne altri, eccone alcuni qui

Iniziamo il processo di installazione e configurazione nel caso di Raspberry Pi OS (quella preinstallata in tutti i Kit). Come prima cosa, apriamo il terminale collegati via SSH al nostro Raspberry Pi e digitiamo 

sudo apt updatesudo apt upgrade 

Una volta aggiornato tutto, procediamo ad installare i pacchetti necessari. Sempre da terminale digitiamo 

sudo apt install -y samba samba-common-bin nano

Adesso abbiamo due opzioni, possiamo creare/scegliere delle cartelle all'interno del nostro HDD esterno da condividere sulla rete locale, altrimenti possiamo scegliere l'intero dispositivo. Per farlo dobbiamo andare ad editare il file

smb.conf
, apriamo quindi il terminale e digitiamo 

sudo nano /etc/samba/smb.conf

Scorriamo fino alla fine del file e aggiungiamo queste righe 

[morethantech]path = /media/hdd1writeable=Yescreate mask=0777directory mask=0777public=no

Dove

  • [morethantech] va sostituito con il nome che vogliamo dare alla condivisione, è quello che leggeranno gli altri dispositivi (dobbiamo lasciare le parentesi quadre). Sconsigliamo vivamente di utilizzare spazi o simboli particolari.

  • path = /media/hdd1 indica il percorso della cartella che deve essere condivisa. Quindi VA CAMBIATO /media/hdd1 con il percorso di mount selezionato nel passaggio precedente. Se ad esempio abbiamo un hard disk che si chiama topolino (montato su /media) con una cartella al suo interno di nome paperino dovremo scrivere path = /media/topolino/paperino

Per chiudere e salvare le modifiche fatte va premuto CTRL + X poi Y ed infine ENTER

NANO: Piccola parentesi per i meno esperti su nano. Questo programma è un editor non avanzato da terminale. Questo vuol dire che il mouse non funziona, non esiste un pulsante salva e tutte le altre comodità a cui siamo abituati.  

#IMPOSTIAMO UNA PASSWORD

Adesso non ci resta che impostare una password per il nostro Samba server. Per farlo apriamo il terminale (sempre collegati via SSH) e digitiamo 

sudo smbpasswd -a pi

Una volta fatto seguendo le istruzioni dobbiamo riavviare il server con il comando 

sudo systemctl restart smbd

 

#COME ACCEDERE ALLA CARTELLA DA WINDOWS

Configurato il server Samba non ci resta che accendere il nostro computer con Windows ed aprire esplora risorse. Clicchiamo la tab in alto a destra con la voce Computer (1) e successivamente Map network drive (2)


Fonte immagine

Si aprirà quindi una finestra che ci chiederà alcuni dettagli. Sulla voce Folder (1) dobbiamo andare ad inserire il percorso che abbiamo selezionato prima (ad esempio  \media\topolino\paperino). Mi raccomando, cambiamo la scritta in foto, è solo un esempio! Una volta fatto clicchiamo Finish (1) 

ATTENZIONE: Quando inseriamo il percorso dobbiamo cambiare il simbolo \ con il simbolo /, Windows funziona così. Quindi \media\topolino\paperino diventa /media/topolino/paperino


Ci verranno chieste adesso le credenziali di accesso (1). Lo username sarà pi mentre la password quella che abbiamo selezionato precedentemente (attenzione, non quella del raspberry, quella di samba). Fatto ciò premiamo OK (2)


Fonte immagine

 

#CONNETTERSI A MAC OS

Per connetterci a MacOS dobbiamo recarci dentro Finder


Fonte immagine

All'interno di finder, nella barra superiore, cerchiamo la voce Go (1) ed infine clicchiamo Connect to server nella tendina che si è aperta (2)


Fonte immagine

Si aprirà una piccola finestra dove dobbiamo inserire (1)

smb://192.168.1.9/media/paperino/topolino

Dove al posto di 192.168.1.9 dobbiamo inserire l'indirizzo IP restituito dal comando hostname- I. Al posto di /media/paperino/topolino il nostro percorso scelto prima. Non ci resta che premere connect (2)

 

Fonte immagine

Prima di completare la connessione dobbiamo inserire username e password (1). Ricordiamo che il nostro username è pi mentre la password è quella scelta prima (attenzione, non quella del raspberry, quella di samba). Clicchiamo connect (1)

Fonte immagine

#CONCLUSIONE

Ed ecco che a basso prezzo abbiamo costruito un NAS per utilizzo domestico molto efficiente. Ma non fermiamoci qui! Abbiamo un Raspberry Pi collegato alla rete con degli hard disk, facciamo qualche ricerca e scopriamo nuovi progetti interessanti. Un Raspberry Pi è la miglior maniera per impare Linux ed allo stesso tempo implementare in piccolo, progetti pensati per server




FONTI

pimylifeup: Link