Tanto per cominciare dire che e' sottointeso che si deve
avere una macchina con una qualsiasi distribuzione Linux
installata, di solito vi troverete installato Samba client
e Samba Server e smbfs, se non c'e' andate sul sito ufficiale
di Samba - http://www.samba.org - e scaricatelo.
Far vedere le risorse condivise di Windows a Linux e' pressocche'
banale.
aprite una shell e scrivete:
smbclient -L ipserversamba (la macchina dove sono condivisi
i file)
se vi chiedete la password scrivetela.
Apparira' una schermata simile:
hsnemesi@hsndebian:~$ smbclient -L 192.168.1.199
Password: (in questo caso nn c'e' nessuna password)
Domain=[BIU] OS=[Windows 5.1] Server=[Windows 2000 LAN
Manager]
Sharename Type Comment
--------- ---- -------
IPC$ IPC IPC remoto
D Disk
Documenti Disk
ADMIN$ Disk Amministrazione remota
C Disk
Domain=[BIU] OS=[Windows 5.1] Server=[Windows 2000 LAN
Manager]
Server Comment
--------- -------
Workgroup Master
--------- -------
come potete vedere appre il nome della macchina (BIU),
il sistema operativo
e poi una lista di voci, a noi interessa Sharename che e'
il nome della condivisione
in questo caso particolare ci interessa: D, C, Documenti.
a questo punto ci creiamo una cartella dove visualizzare
cio' che viogliamo vedere
delle condivisioni col comando mkdir.
es: mkdir /home/pluto/condivisioneD
ora non ci resta altro che montare dentro la nostra cartella
la risorsa di rete desiderata col comando.
seguendo il nostro esempio:
mount -t smbfs //192.168.1.199/D /home/pluto/condivisioneD
e vedrete come per magia nella cartella /home/pluto/condivisioneD
tutto cio che si trova nella risorsa
di rete D.
Nel caso ci siano user e passwd basta aggiungere l'opzione
-o come l'esempio sotto riportato:
mount -t smbfs -o username=tuouser,password=tuapasswd //192.168.1.199/D
/home/pluto/condivisioneD
NB: controllate sempre i permessi.
Tutto qua. Facile no? Solo un paio di comandi.
ORA PROVVEDDIAMO A FAR VEDERE LE RISORSE CONDIVISE DI LINUX
A WINDWOS.
Come prima cosa bisogna configurare Samba modificando il
file smb.conf,
solitamente si trova dentro /etc/samba/.
Prima di iniziare a fare modifica di cui vi potreste pentire
vi consiglio vivamente di farne una copia.
Aprite questo file e cancellate tutto il contenuto (facciamo
prima cosi) :D
Quindi cominciate a scrivere:
[global]
nome del gruppo di lavoro (il cancelletto indica un commento)
workgroup = MIOGRUPPO
hosts allow = 100.100.100. 255.
le macchine (PC) aventi accesso a Samba, nell' esempio
tutta la rete che va 100.100.100.1 a 100.100.100.255
interfaces = 100.100.100.1/24 100.100.100.2/24
individua la o le schede di rete abilitate per samba.
Nell' esempio si ipotizza che il server abbia due schede
di rete: 100.100.100.1 e 100.100.100.2, il /24 sta
ad indicare la maschera di rete
wins support = no
il nostro non deve registrare e risolvere i nomi windows,
quindi questo supporto non ci serve
security = user
questo settaggio ci permette di autenticare in maniera
sicura i nostri utenti al server Samba
log file = /var/log/samba/log.%m
con questa opzione si scrive un file di accesso a Samba
che verra' aggiornato per ogni macchina che si connette.
log level =2
meglio non aumentare questo livello se non ci si vuole
ritrovare dei log pieni di immondizia.
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
questa serve ad accelerare le vostre comunicazioni con
Samba
load printers = yes
printing = bsd
printcap name = /etc/printcap
permette a Samba di mettere a disposizione della rete le
stampanti configurate sul server.
da notare che nn sempre printcap si trova dentro /etc, trovatelo.
preferred master = yes
questa opzione farà sì che il server Samba
per l'elezione per il browsing sia avvantaggiato
dns proxy = no
non vogliamo fare i DNS, almeno non in questo contesto
netbios name = SambaServer
questo e' il nome con il quale il vosto PC sara' visto
in rete, potete cambiarlo come volete.
browseable = yes
obbliga la comparsa del nome netbios nei browsers
encrypt passwords = yes
utilizzate questa opzioni se volete che i vostri client
vengano riconosciuti dal sistema di autenticazione di GNU/Linux
smb passwd file = /etc/samba/smbpasswd
dentro questo file ci stanno le passwords degli utenti
config file = /etc/samba/smb.conf.%u
questa opzione ci consente di utilizzare un altro file
di configurazione al posto di smb.conf, per esempio:
smb.conf.franco, o se uso %G per esempio: smb.conf.amministratori
se amministratori è il gruppo primario di
appartenza per quell'utente. Attenzione: tutti gli utenti
e i gruppi di cui loro fanno parte devono essere
inseriti sul sistema GNU/Linux anche se le loro passwords
possono essere diverse da quelle di Samba.
E con questo finiamo la sezione [global]. Adesso passiamo
ai vari servizi.
Ipotizziamo che i vostri utenti siano: Ciccio, Pino, Totò,
Maria, Franca, Tanino, Jachino, Fina e Carmela; essi
sono distribuiti in tre gruppi: Cucina (utenti: Ciccio,
Carmela e Jachino), Casa (utenti: Maria, Franca e
Tanino) e Giardino (utenti: Pino, Totò e Fina). In
questo caso potremmo creare un servizio, come se fosse una
share, di interscambio globale a cui tutti gli utenti hanno
accesso sia in lettura che in scrittura, ma non
vogliamo che ognuno possa modificare/cancellare i files
di un altro, certo potremmo usare la umask di Linux, ma
noi siamo terra-terra ed utilizziamo il smb.conf, in questo
modo:
[Pubblico]
comment = Area di interscambio pubblica
user = %S
path = /home/samba/pub
browseable = yes
writeable = yes
public = yes
l'opzione user = %S permette l'accesso a questo servizio
da parte di qualunque utente riconosciuto da samba.
Il resto credo sia intuitivo, altrimenti ve lo andate a
cercare!
Non dimenticate di settare i permessi giusti affinchè
la directory /home/samba/pub sia visibile dagli utenti.
Poi potremmo voler fare una share per ogni gruppo alla
quale solo gli utenti di quel gruppo possono accedere sia
in lettura che in scrittura, così:
[Gruppo]
comment = Cartella riservata al gruppo
user = %S
path = /home/samba/%G
browseable = yes
writeable = yes
public = no
La variabile %G individuerà, di volta in volta,
a quale delle sottocartelle, che si chiamano così
come i gruppi: Cucina, Casa e Giardino, indirizzare il servizio.
Non dimenticate di settare i permessi giusti affinchè
le directory /home/samba/Cucina, /home/samba/Casa e /home/samba/Giardino
siano visibile dagli utenti.
Adesso vogliamo creare un servizio di utilità come
Comunicazioni ufficiali, che sia accessibile
a tutti ma in sola lettura e dove solo un utente, adeguatamente
autorizzato, possa scrivere. Ecco come:
[Doc_ufficiali]
comment = Comunicazioni ufficiali a tutti
user = %S
path = /home/samba/doc_uff
browseable = yes
ready only = yes
public = yes
admin users = Ciccio
l'opzione admin users = permette di identificare un utente
come amministartore di quel servizio. Bell'opzione, ma da
usare con cautela!
Non dimenticate di settare i permessi giusti affinchè
la directory /home/samba/doc_uff sia visibile dagli utenti.
Se volessi estendere i diritti di amministartore ad un intero
gruppo farei cosi:
admin users = @Cucina
Potrei continuare pressapoco all'infinito col fare esempi,
ma siccome mi è seccato, mi fermo qui, aggiungendo
soltanto una sezione di esempio per le stampanti:
[stpampante]
user = %S
comment = Stampante sul server
path = /var/spool/lpd/stampante
printer name = stampante
public = no
writeable = no
printable = yes
browseable = yes
Non dimenticate di settare i permessi giusti affinchè
la directory /var/spool/lpd/stampante sia visibile dagli
utenti.
E questo è tutto.
Parte del tutorial e' stato scritto da me, altra parte
e' stato prelevato da internet e modificato.
Dan^K^e
per contatti:
e-mail: hsnemesi@email.it
msn: hsnemesi@email.it
yahoo: bl4cknightwolf
icq: 146283389
ircnet: #tuttoirc
|