Facciamo ballare Fedora: SAMBA!

16 05 2008

fedora8.pngChi si avventura nell’idea di mettersi in casa un serverino avrà immediata la necessità di condividerne i file. Come si sa, samba è il pacchetto che fa per noi. Da wikipedia:

Samba is a free software re-implementation of SMB/CIFS networking protocol, originally developed by Australian Andrew Tridgell. Samba is released under the GNU General Public License. The name Samba comes from SMB (Server Message Block), the name of the standard protocol used by the Microsoft Windows network file system.

Ora, nell’ipotesi che siate più o meno esordienti (e questo blog non è certo per utenti esperti) e nell’ipotesi che siate stati tanto coraggiosi da abbandonare il confortante mondo Debian-based per provare a conoscere la spietata realtà delle distribuzioni server, molto probabilmente starete facendo i conti con Fedora, la costola free di Red Hat.
Queste distribuzioni, appunto, sono grandiose per gestire i servizi di una macchina remota ma non possiedono certo la miracolosa immediatezza di Ubuntu e compagni. Allora orsù, dopo questo preambolo che mi è chiaramente sfuggito di mano, facciamo questa configurazione.
Prima di tutto assicuriamoci di avere installato samba.

yum install samba.i386

Se avete già il programma il vostro gestore di pacchetti vi dirà che non c’è niente da fare, altrimenti procederà con l’installazione.
Ora:

cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd

Questo comando legge tutti gli utenti di sistema elencati in /etc/passwd e crea un file con i medesimi utenti pronti ad essere abilitati per samba.
A quel punto, per sicurezza, cambiate i permessi al file ( che avrete notato è in /etc/samba/smbpasswd)

chmod 600 /etc/samba/smbpasswd

Ora è il tempo di assegnare una password all’utente/i prescelto/i per fruire di samba:

smbpasswd username

A questo punto andiamo in /etc/samba/ e configuriamo smb.conf. Di default troverete un sacco di opzioni la maggior parte delle quali, commentate. Io ho preferito farne una versione snella. Con

cp /etc/samba/smb.conf /etc/samba/smb.conf.old

mi sono fatto fatto una copia di riserva del file originale e poi ho editato il mio. Eccolo qua:

[global]
workgroup = WORKGROUP
netbios name = SMB_SERVER
server string = FEDOLLO
security = USER
hosts allow = ALL
encrypt passwords = yes
maxconnections = 3
max smbd processes = 5
log file = /var/log/samba/sambalog.%m
max log size = 500
log level = 3

[share]
comment = file sharing
path = /Share
valid users = lolleus gettons
writable = YES
browsable = YES
admin users = lolleus

Molto stringato, come si vede. Le opzioni Global servono a dettare il comportamento “di massima” di samba. Poi potete specificare regole determinate per le varie directory condivise ( nel mio caso /Share). E’ interessante questa riga: security = USER che farà si che venga richiesto nome utente e password al tentativo di connessione. Le altre opzioni sono molto intuitive.
Ovviamente samba può essere configurato in modo molto ricco, financo aggiungendo una stampante da condividere in rete. Ma voi avete ancora il vostro file originale rinominato in .old. Dategli un’occhiata e sperimentate!