Server Samba

Da Wiki-itsos.

Situazione iniziale

Macchina virtuale, 64bit, con installato Ubuntu 14.04 server con queste specifiche:

  • utente root attivato
  • ssh installato e funzionante
  • scheda con bridge
  • samba installato

Obiettivo

  • Configurare un server samba funzionante, di una cartella di condivisione
  • Attivare una condivisione anonima Samba
  • Attivare una condivisione Samba sicura
  • Mettere a punto una procedura per la creazione di diverse Classi e, in ciascuna classe, di una account individuale per ciascun studente

Azioni Svolte

Fase Preliminare

Per effettuare gli ultimi aggiornamenti dare i seguenti comandi:

sudo apt-get update
sudo apt-get upgrade

Per installare samba sulla propria macchina dare il comando:

sudo apt-get install samba samba-common

Installare i pacchetti suggeriti per samba con il comando:

sudo apt-get install python-glade2 system-config-samba

Per creare il backup del file smb.conf dare il comando:

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

Per cancellare il file smb.conf

sudo rm /etc/samba/smb.conf

Per creare un nuovo file smb.conf

sudo touch /etc/samba/smb.conf

Per scrivere nel file

pico /etc/samba/smb.conf

Per aggiungere un nuovo gruppo di utenti dare il comando:

addgroup smbprova

Per creare la cartella samba

mkdir /samba

Per creare la cartella secure

mkdir /samba/secure

Per settare come proprietario tech e gruppo smbprova

adduser tech smbprova

Per cambiare i permessi della cartella secure

smbpasswd -a tech

Per fare riavviare il servizio

service smbd restart

Per cercare errori di sintassi

testparm

Sezione global
La sezione [global] si trova sempre all'inizio della configurazione del file /etc/samba/smb.conf e racchiude i principali parametri del server.

[global]
    allow hosts = 192.168.1.0/24                 # Range di IP che possono accedere al server     
    workgroup = WORKGROUP                        # Nome del gruppo di lavoro
    netbios = SAMBA                              # Nome della macchina nel gruppo di lavoro
    security = USER                              # Livello di sicurezza delle condivisioni
    server string = FILE SERVER                  # Descrizione della macchina
    create mask = 0755                           # Permessi sulle cartelle

Condivisione Anonima

1-Editare /etc/samba/smb.conf e aggiungere le seguenti modifiche:

#Nome netbios. Usate Samba<Cognome> senza spazi
netbios name =Cognomehost
#==========Definizione per condivisione anonima=========
[Anonima<Cognome>]
path = /samba/Anonima
browsable = yes
writable = yes
guest ok = yes
read only = no

2-Creare la directory /samba/Anomina

mkdir -p /samba/Anonima

3-Riavviare il servizio

service smbd restart

4-Per cambiare i permessi, daremo i seguenti comandi:

chown -R nobody:nogroup /samba/Anonima/
chmod -R 0555 /samba/Anonima/

Condivisione Sicura

1-creiamo un nuovo gruppo di utenti, che chiameremo smbgrp

addgroup smbgrp

2-creiamo un nuovo utente pippo, che aggiungeremo al gruppo smbgrp

useradd pippo
passwd pippo
adduser pippo smbgrp

3-impostiamo la password dell'utente pippo

smbpasswd -a pippo

4-Ora creiamo il folder /samba/pippo

mkdir -p /samba/pippo

5-Attribuiamo proprietà e permessi alla cartella pippo

chown -R Cantore:smbgrp /samba/pippo
chmod -R 0770 /samba/pippo

6-editare /etc/samba/smb.conf e aggiungere le seguenti modifiche:

#==========Definizione per condivisione sicura=========
[SicuraCpippo]
path = /samba/pippo
valid users = @smbgrp
browsable = yes
writable = yes
guest ok = no
read only = no

7-Riavviare il servizio

service smbd restart

Creazioni di classi e account

1-configurazioni globali di sistema in Smb.conf

#Parametri comuni globali di condivisione
      workgroup = WORKGROUP
      server string = %h server (Samba, Cantore)
      netbios name = Cantore
      security = user
      browsable = yes
      writable = yes
      guest ok = no
      read only = no

2-Creazione di un gruppo

addgroup smb3AInfo --force-badname

3-Aggiunta cartella di Classe

mkdir -p /samba/classe

4-configurazione permessi

chown -R nobody:smbclasse /samba/3classe
chmod -R 774 /samba/classe

5-Creazione in smb.conf della zona di classe

pico /etc/samba/smb.conf
#===========Classe - condivisione sicura==========
[classe-privata]
path = /samba/classe
valid users = @smb3classe

6-Aggiungere nuovo studente, membro del gruppo <NomeClasse> con HomePage all'interno della cartella <NomeClasse>

useradd -g smbclasse -d /samba/classe/studente1  -m studente1

7-Attribuire password

# passwd studente1

Condivisione stampante tramite samba

1-aggiungere i seguenti parametri nella sezione [Global]

printing = cups         # Server di sampa utilizzato
load printers = yes     # Caricare le stampanti

2-creare la sezione [Printers]

[printers]
   path = /var/spool/samba    # Percorso dello spool di stampa
   printable = yes            # Stampante disponibile

3-Poi creare la sezione per la specifica stampante

[HP]
   comment = HP Printer       # Commento sulla condivisione
   path = /var/spool/samba    # Percorso dello spool di stampa
   browsable = yes            # Permette la visualizzazione della lista delle risorse condivise

4-Di default ubuntu non crea la cartella /var/spool/samba quindi la si deve creare a mano, ed impostando i permessi di accesso.

sudo mkdir /var/spool/samba
sudo chmod -R 755 /var/spool/samba

5-riavviare il servizio

sudo service smbd restart