Passa ai contenuti principali

Linux - Condividere una cartella in internet con Samba

Essendo ormai il PC (computer più in genere) un mezzo presente in quasi tutte le case, anche più di una unità, non è difficile immaginare che ci possa essere la necessità di poter condividere nella rete locale delle informazioni, in modo particolar dei file in una cartella.


Di tanti modi che possiamo usare (l'ftp ad esempio che tratteremo in un post dedicato) quello più naturale per tutti gli utenti è quello della "cartella remota", ovvero quando scriviamo la sintassi

\\nomepc\cartella

che Windows consente di creare come unità a se stante in Risorse del Computer (o Computer, o Questo PC)

In questo post tratteremo come condividere una cartella residente su Linux (nel caso specifico Ubuntu Server 10.04.4, ma può essere esteso a tutta la famiglia di sistemi operativi Linux, in quanto Samba è il protocollo di scambio file standard)

Useremo ancora una volta un terminale e per effettuare le modifiche dovremo accedere come SuperUser (comando sudo su e poi la password di root) .

Essendo la cartella condivisa con la rete locale, ma sopratutto con internet, l'accesso, ovviamente, sarà consentito solo ad utenti provvisti di login e password.

Per prima cosa, facciamo un backup del file smb.conf con il comando copy

cp -p /etc/samba/smb.conf /home/[utente]/smb,conf.orig

[utente] sta per la cartella personale dell'utente

Samba - 1
Copia del file originale
A questo punto creiamo sul disco (quello di sistema o quello di una unità aggiunta, cfr. Linux - Montare un disco da terminale), creiamo una cartella, ad esempio webdir, e con chmod diamo i permessi 777 (lettura, scrittura, esecuzione su Linux, oppure 666 che è lettura/scrittura) e

Samba -2
Creazione cartella webdir e conferimento permessi 777
Se abbiamo creato degli utenti per la posta (cfr.Linux - Installare un Server di Posta) possiamo aggiungerlo alla lista di samba, in caso contrario con lo stesso metodo, possiamo crearne uno nuovo

useradd -m -s /bin/false [utente]

e poi con il comando

smbpasswd -a [utente]

diamo la password solo per l'accesso alla cartalla di samba

Samba -3
Creazione utente e password per Samba
A questo punto dobbiamo fare una modifica al file /etc/samba/smb.conf che abbiamo copiato prima.

Possiamo usare sia l'editor nano che l'editor di MC (MidnightCommander). Noi in questo post useremo questo.

Samba -4
Cartella Samba
Per fare le modifiche dobbiamo arrivare nella zona di Share Definitions

Samba -5
Zona di Share Definitions
scendere ancora un po' e fare queste modifiche

[Cartella_WEB]
path=/mnt/sdb1/webdir
available=yes
browsable=yes
public=no
writable=yes
create mask=0777
directory mask=0777

Samba -6
Definizione della Cartella Web da condividere
Cartella_WEB è il nome che comparirà su Risorse del Computer (Computer, Questo PC) quando accederemo alla cartella remota

Salviamo le modifiche (F2, invio e poi F10 su MC) e riavviamo il servizio smbd:

Samba -7
Riavvio del demone di Samba
service smbd restart


oppure

service smbd stop 

e dopo

service smbd start 

E' possibile inserire più cartelle da condividere (ad esempio una per i siti, una per lo spazio, ecc...) aggiungendo di seguito alla modifica precedente la stessa inserendo un nome ed un percorso differente, ad esempio, riconsiderando l'esempio precedente

[Cartella_WEB]
path=/mnt/sdb1/webdir
available=yes
browsable=yes
public=no
writable=yes
create mask=0777
directory mask=0777

[Ricoh_Scan]
path=/mnt/sdc1/ricoh/scan
available=yes
browsable=yes
public=no
writable=yes
create mask=0777
directory mask=0777

E via dicendo.

Ora su Computer possiamo accedre alla macchina usado tre metodi: o il nome del PC, o l'indirizzo macchina (l'IP) oppure il nome del DNS.

Per fare questo, supponendo che il PC si trovi in una sottorete 192.168.x.x, sul router dobbiamo attivare le porte 445 protocollo TCP e 138 del protocollo UDP

Samba -8
Porte da attivar sul router per accedere alle cartelle web da internet
Come in tutti i post che abbiamo pubblicato fino ad ora su questo argomento, noi usiamo il dns thematrixmachine.net 

Quindi scrivendo\\thematrixmachine.net su Computer, abbiamo

Samba -9
Accesso mediante Risorse del Computer alla cartella remota via internet

Inserendo Nome utente e password nella cartella abbiamo

Samba -10
Accesso mediante Risorse del Computer alla cartella remota via internet
In ultimo come abbiamo visto nel post Android - Condividere dati tra dispositivo e PC in Wi-Fi usando per Android l'app File Expert, possiamo accedere alla cartella web usando il nostro smartphone e copiare ed incollare i dati.

Samba -11
Cartella Windows/Samba di File Expert su Android

Samba -12
Visualizzazione della Cartella web su Smartphone
Con questo sistema possiamo copiare ed incollare i dati (photo e file) sul nostro server anche da remoto (usando internet)

Può tornare comodo da sapere: I dischi formattati con NTFS (sotto Windows) possono essere usati su Linux in lettura e scrittura.

Va da se che essendo differenti nella gestione, la metodologia dei permessi di Linux non funziona nei dischi formattati NTFS montati sotto Linux, ma è sempre attivo il permesso 777, lettura, scrittura, esecuzione per tutti e tre i tipo di utente, ovvero locale, gruppo, tutti.

Dipende da cosa si deve fare e a cosa serve montare un disco NTFS sotto Linux, perché non è un metodo sicuro.

L'unico vantaggio è che in caso di problemi sotto Linux il disco può essere letto subito sotto Windows.

Nel caso di questo post, può essere utile nel caso si usi un disco esterno USB (HDD, SSD, Flash Disk) e lo si vuole leggere indistintamente sotto Windows o Linux

Commenti

Anonimo ha detto…
porta 137 o 138 ?

Post più popolari

Windows 7 - Installare ed usare una stampante sul Print Server GetNet 3 Port 2 USB e 1 LPT

Su una rete di calcolatori (che sia di uso casalingo, Small Office o Medium Office) la perifrica più ricercata è la stampante. In molti casi la soluzione più semplice è quella di collegarla ad un PC che fa da server e da qui condividerla con tutta la rete. Spesso, però, ciò non è fattibile.  Per ovviare al problema esistono delle "scatrolette" che consentono di collegare la periferica ad uno switch o router (a seconda della grandezza della rete) chiamate Print Server. Alcuni Print Server (come quello oggetto del nostro post) possono usare più stampanti. Nel caso specifico il modello della GetNet può usare 1 stampante su Porta Parallela (LPT) e 2 stampanti (non multifunzioni) su porta USB 1.1 GetNet Print Server 1 Parallel e 2 USB Il modello in questione ha in dotazione un CD che dovrebbe essere installato, ma non è compatibile con Windows a 64 bit (che sia XP, Vista, 7 o 8), e da problemi con Windows Vista, 7, 8 Nel caso specifico illustre...

HP Z440 Workstation - Il problema dello spegni ed accendi improvviso ed il reset del BIOS

Chi possiede una Workstation HP Z440 (con processore Xeon) o è incappato o potrebbe incappare in un problema, dalla sera alla mattina che può essere devastante se, da un lato non ci sono state avvisaglie e si sta lavorando a qualche progetto. Scrivo questa nota per me, ma nello spirito del blog , la condivido per chi si trovasse nello stesso problema.

Windows 11 - Trovare il mouse sul monitor con il pulsante CTRL

Capita spesso che ci perdiamo il puntatore del mouse sullo schermo, soprattutto ora che sui PC fissi è abbastanza comune usare 2 o più monitor Questo tipo di programma era, in altri tempi, un add-on dell'Intellimouse di Microsoft (quelli a pallina del secolo e millennio scorso) che, ora, è stato inserito di default nel sistema