Ecco una breve guida all’uso di un server Linux per la condivisione di file su una rete locale con client Windows. La guida fa riferimento a un sistema server con Ubuntu Linux 7.10 nella versione desktop, dunque dotata di interfaccia grafica.
Linux è perfettamente compatibile con il meccanismo condivisione di file e stampanti di Windows. Per poter funzionare come file server per dei client Windows utilizza un modulo chiamato Samba, nome che riprende la sigla del protocollo Smb (Server Message Block) sviluppato da Microsoft. La prima cosa da fare per creare un file server Linux, dunque, è proprio installare i due moduli samba e smbfs con apt-get o Synaptic (sudo apt-get install samba smbfs).
Subito dopo bisogna definire gli utenti che possono collegarsi a Samba e impostare i relativi permessi di accesso. Gli utenti definiti in Samba devono essere necessariamente associati ad utenti definiti sul sistema Linux, anche se possono avere nomi utente e password diversi. Ad esempio, se in Ubuntu esiste l’utente filippo (password = pippo ), si può creare in Samba un utente con le stesse credenziali oppure con credenziali differenti, come filippo_stampa (password = pluto). Una volta creata l’associazione, l’utente in Samba erediterà i permessi di quello definito in Ubuntu.
Iniziate aggiungendo l’utente (o gli utenti) definiti sul server all’elenco degli utenti di Samba con il comando sudo smbpasswd -a utenteserver e impostate la password che userete per autenticarvi su Samba. Poi definite l’associazione tra l’utente Ubuntu e quello di Samba: lanciate il comando sudo gedit /etc/samba/smbusers, vi si aprirà l’editor di testi gedit con un file vuoto (a meno che non abbiate già svolto in precedenza la procedura). Ora inserite la riga seguente:
utente_ubuntu = “utente_samba”
che definisce l’associazione tra i due nomi utente (attenzione a non dimenticare le virgolette per l’utente Samba). Salvate il file e uscite da Gedit. Ora dobbiamo dire a Samba di utilizzare gli utenti che abbiamo definito per l’autenticazione sulla rete. Prima di modificare il file di configurazione di Samba per sicurezza fatene un backup con il comando sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.backup. Poi aprite il file con sudo gedit /etc/samba/smb.conf e cercate la riga seguente:
; security = user
Modificatela in questo modo:
security = user
username map = /etc/samba/smbusers
Ricordatevi di togliere il punto e virgola davanti alla parola security. Al termine è necessario riavviare Samba per far sì che le impostazioni abbiano effetto. Per farlo usate il comando sudo /etc/init.d/samba restart.
Una volta terminata la configurazione potete definire le cartelle da condividere usando l’interfaccia grafica di Gnome, e in particolare la finestra di dialogo Cartelle Condivise che si trova in Sistema / Amministrazione / Cartelle condivise. Ricordatevi che dovranno essere cartelle per le quali gli utenti dispongono dei permessi di lettura e scrittura.
Vi consigliamo di creare, per ogni utente, una cartella di rete all’interno della sua home, qualcosa di simile a /home/utente_ubuntu/condivisa. Per condividere una cartella con più utenti potrete usare i comandi seguenti per crearla e impostare gli opportuni i permessi:
sudo mkdir /home/gruppo
sudo chmod 777 /home/gruppo
Ricordatevi anche, nel pannello di configurazione delle cartelle condivise, di togliere la spunta alla voce Sola lettura per concedere i permessi di scrittura su tale cartella.
Quando avete finito, verificate il buon funzionamento della condivisione: in un computer Windows aprite una finestra di Esplora Risorse e inserite nella barra degli indirizzi la stringa “\\192.168.0.200” dove 192.168.0.200 è l’indirizzo Ip del vostro server (dovrete ovviamente rimpiazzare l’indirizzo con quello del vostro server). Se non lo avete già fatto, vi consigliamo di configurare il server con un indirizzo Ip fisso o riservato all’interno della vostra sottorete.
Se l’indirizzo digitato è corretto, Windows vi chiederà le credenziali per la connessione (in questo caso sono le credenziali definite nell’elenco degli utenti di Samba, che per quanto detto possono essere diverse da quelle degli utenti di Ubuntu) e poi vi mostrerà le cartelle condivise. Se qualcosa non dovesse funzionare, controllate tutti i passi che avete compiuto e provate a riavviare Samba col comando citato in precedenza.