[Guida] Come creare un file server con Samba su Linux
Oggi vi propongo una breve guida dedicata a Samba in cui vi spiegherò i passi necessari per realizzare un file server capace di mettersi in condivisione con client Windows sfruttando una distro GNU/Linux. Le postazioni Windows non si accorgeranno di nulla, avranno la percezione di essere in comunicazione con un server Windows sulla rete locale. La guida è compatibile anche con i Mac.
Samba: file server con GNU/Linux
Il protocollo SMB/CIFS è in estrema sintesi la tecnologia che consente di configurare un server GNU/Linux così da permettergli di esporre le proprie risorse a una rete di computer Windows. Il pinguino, in particolare, è dotato di un’ottima implementazione di questo protocollo all’interno del pacchetto Samba.
Samba funziona grazie a due servizi:
- nmbd, che si occupa della master browser list e delle operazioni di risoluzione dei nomi. Samba, infatti, include un’implementazione completa di WINS;
- smbd, che gestisce le risorse condivise.
Configurazione generale
Le seguenti sono le istruzioni da utilizzare per configurare Samba su un sistema operativo derivato da Debian. Per l’esempio ho utilizzato un Raspberry Pi con Raspbian:
apt-get install samba apt-get install smbclient systemctl start smbd systemctl start nmbd
All’avvio Samba legge il file smb.conf che possiamo modificare. In particolare, il file richiede una sezione globale contenente direttive che regolano il funzionamento del servizio, come per esempio il nome del server, il tipo di server, la visibilità in rete o i criteri di sicurezza:
[global] workgroup = CASA netbios name = SERVER server string = file server PI security = USER encrypt password = YES server min protocol = SMB2_10 client min protocol = SMB2 client max protocol = SMB3
Successivamente, inseriamo la sezione specifica per la risorsa da condividere. Inserite oltre al path relativo alla vostra cartella, anche gli utenti che volete siano abilitati alla visualizzazione:
[foto] comment = foto viaggi path = /home/pi/Desktop/foto valid users = pc1 pc2 writable = YES
Riavviate, infine, entrambi i servizi:
systemctl restart smbd systemctl restart nmbd
Gestione degli utenti
Samba, per identificare gli utenti, utilizza gli account del sistema GNU/Linux che lo ospita. Non basta, quindi, aver inserito il nome degli utenti nel file di configurazione. Sarà necessario, come ulteriore passaggio, creare gli utenti anche sulla macchina. Nel mio caso:
useradd pc1 passwd pc1 useradd pc2 passwd pc2
Il sistema di password usato da Samba, invece, non è lo stesso del sistema operativo. Dovete quindi creare un’ulteriore chiave in tal senso:
smbpasswd -a pc1 smbpasswd -a pc2
Vi chiederà le credenziali di connessione e il tutto, dopo averle inserite, funzionerà come per magia😉
Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.