17421 Letture

Server cloud personale con ownCloud

Chi, privato, professionista od azienda, avesse la necessità di utilizzare un servizio per la memorizzazione e l'accesso di file da remoto, può orientarsi su una delle tante piattaforme cloud oggi disponibili (Google Drive, OneDrive e Dropbox, giusto per fare qualche nome).
Se però si preferisse evitare di caricare i propri file, specie se contenenti dati sensibili, su server di terzi, uno dei software più interessanti è senza dubbio ownCloud

ownCloud consente di creare un server cloud personale per la gestione di un completo ed efficace servizio di file hosting.
Con ownCloud tutti i file restano all'interno della struttura aziendale e non debbono mai essere caricati su server cloud spesso distanti migliaia di chilometri e la cui memorizzazione dei dati è frequentemente soggetta alla legislazione straniera.

Installando ownCloud, software Linux opensource e distribuito con licenza libera, si possono gestire utenti e gruppi dando loro modo di caricare e scaricare file da remoto, servirsi di calendari e rubriche, usare i visualizzatori di file integrati nel pacchetto, abilitare lo scambio dei file con storage di terzi.


Requisiti per creare il server cloud personale

Per allestire un server cloud personale con ownCloud è necessario disporre di una macchina Linux sulla quale si potrà installare il pacchetto software.

Nel nostro caso installeremo ownCloud su un server CentOS 7 creato a partire dalla Minimal ISO scaricabile da questa pagina.

Server cloud personale con ownCloud

Dopo aver installato CentOS 7, si dovrà effettuare il login da riga di comando digitando root e la password scelta in fase d'installazione della distribuzione Linux.

I tre comandi che seguono permettono, innanzi tutto, di installare le utilità per la diagnostica della rete (ad esempio il comando ifconfig), l'editor Nano e di aggiornare tutti i pacchetti correntemente installati in CentOS:

yum -y install net-tools
yum -y install nano
yum -y update


Configurazione di un IP statico per il server ownCloud su CentOS

La macchina CentOS sulla quale, tra poco, andremo ad installare il software ownCloud, dovrà utilizzare un indirizzo IP locale statico (vedere 192.168.x.x: perché in rete locale vengono usati questi indirizzi?).
In questo modo, infatti, si potranno indirizzare le richieste di connessione dirette al server cloud personale ownCloud e provenienti dalla rete Internet verso la macchina CentOS.
Basterà infatti attivare sul router installato in ufficio, in azienda o a casa il cosiddetto port forwarding (inoltro delle porte): Aprire porte sul router e chiuderle quando non più necessario.
Dopo aver installato e correttamente configurato ownCloud sulla macchina CentOS, basterà inoltrare il traffico in ingresso sulla porta 80 (IP pubblico del router) verso l'IP privato (statico) utilizzato dal server CentOS-ownCloud.

Per assegnare un IP privato statico alla macchina CentOS, bisognerà dapprima digitare:
nmcli dev status

Server cloud personale con ownCloud

Così facendo si potrà verificare il nome dell'interfaccia di rete utilizzata da CentOS (generalmente è enp0s3).

A questo punto, con il comando seguente, si potranno modificare i parametri dell'interfaccia di rete:
nano /etc/sysconfig/network-scripts/ifcfg-enp0s3

Server cloud personale con ownCloud

I parametri indicati con le frecce rosse, dovranno essere aggiunti o modificati così come evidenziato in figura.

Come si vede, noi abbiamo scelto – come IP statico – l'indirizzo 192.168.1.80 ma, ovviamente, questo andrà scelto sulla base della configurazione del router e della rete locale.

Per salvare qualunque file di testo con Nano, è sufficiente utilizzare le combinazioni di tasti CTRL+O e CTRL+X per uscire dal programma.

Digitando il comando seguente, si potrà impostare l'IP del gateway (l'indirizzo locale del router) ed assegnare un nome alla macchina CentOS:
nano /etc/sysconfig/network

Server cloud personale con ownCloud

Infine, impostiamo dei server DNS statici: utilizzeremo quelli di Google (IP 8.8.8.8 e 8.8.4.4).
Per procedere, si dovrà digitare il comando seguente ed aggiungere le righe evidenziate in figura con una freccia di colore rosso:
nano /etc/resolv.conf

Server cloud personale con ownCloud

A questo punto digitando il comando reboot si potrà riavviare la macchina CentOS.

Al rientro, previo login con l'account root, digitando ifconfig si potrà verificare la correttezza dell'IP utilizzato dall'interfaccia di rete.


Installazione dei componenti necessari per il funzionamento di ownCloud

A questo punto si potrà richiedere l'installazione, in CentOS, dei componenti necessari per il corretto funzionamento del server cloud personale ownCloud.
Per procedere, basterà impartire il comando che segue:

yum -y install httpd php php-mysql mariadb-server mariadb sqlite php-dom php-mbstring php-gd php-pdo wget bzip2 mod_ssl

Oltre al web server Apache httpd, il comando consente di caricare sul server PHP, il DBMS MariaDB ("fork" di MySQL) e l'utilità wget per il download di file da server remoti.
ownCloud è compatibile sia con i database MySQL che con quelli MariaDB. Abbiamo scelto quest'ultimo, comunque, trattandosi di un prodotto interamente rilasciato con licenza libera.

SELinux è un modulo del kernel di Linux che fornisce una serie di strumenti per attuare e monitorare politiche di sicurezza. Il comando seguente permetterà ad ownCloud di scrivere dati:

setsebool -P httpd_unified 1

Quindi, digitando alcuni comandi, si potrà abilitare il traffico web (HTTP e HTTPS) attraverso il firewall:

firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload


A questo punto si possono avviare sia il server Apache che il server MariaDB:

systemctl start httpd.service
systemctl start mariadb.service


Da ultimo, si può fare in modo che i due servizi vengano automaticamente caricati ad ogni avvio della macchina CentOS:

systemctl enable httpd.service
systemctl enable mariadb.service


Server cloud personale con ownCloud - IlSoftware.it