mercoledì 28 Ottobre 2020
Home / Hardware / Personal-hosting su RaspberryPi con Owncloud

Personal-hosting su RaspberryPi con Owncloud

Ciao a tutti!

Dropbox, Drive, Box? Nha non ci piacciono.  Perchè essere sempre sotto qualcun’altro?

In questa guida vedremo insieme come installare Owncloud sul nostro RaspberryPi.

Incominciamo chiedendoci: cos’è questo Owncloud?

Owncloud è un software opensurce che ci permette di creare un personal hosting dove i file da noi caricati risiedono sul nostro hard-disk e non su server sconosciuti speduti per il globo.

Owncloud permette di gestire file e cartelle anche da smartphone(con apposita app) e sopratutto di creare e dare permessi a vari utenti che portanno visualizzare o modificare(a nostra scelta ovviamente)un file sul nostro hdd.


 

Requisiti

  • RaspberryPi. (meglio se il 2)
  • Raspbian installato.
  • Ddns configurato. (vedi guida)
  • Hdd-esterno collegato e montato. (vedi guida)
  • Porta 80 router aperta.

Installazione

Aggiungiamo l’utente al gruppo www-data con:
sudo usermod -a -G www-data www-data
Installiamo i pacchetti richiesti:
sudo apt-get install nginx openssl ssl-cert php5-cli php5-sqlite php5-gd php5-common php5-cgi sqlite3 php-pear php-apc curl libapr1 libtool curl libcurl4-openssl-dev php-xml-parser php5 php5-dev php5-gd php5-fpm memcached php5-memcache varnish
 

Creiamo un certificato SSL:
sudo openssl req $@ -new -x509 -days 730 -nodes -out /etc/nginx/cert.pem -keyout /etc/nginx/cert.key
Digitiamo i campi richiesti.

 

Modifichiamo ora i permessi dei certificati:
sudo chmod 600 /etc/nginx/cert.pem

sudo chmod 600 /etc/nginx/cert.key
 

Eliminiamo  il file di configurazione del webserver(in questo caso nginc):
sudo rm /etc/nginx/sites-available/default
Ora ne creiamo una nuova con:
sudo nano /etc/nginx/sites-available/default
Incolliamoci questo: modifichiamo “10.0.0.124” con l’indirizzo ip de nostro raspberry(verificabile con il comando ifconfig)

upstream php-handler {

server 127.0.0.1:9000;

#server unix:/var/run/php5-fpm.sock;

}

     

server {

listen 80;

server_name 10.0.0.124;

return 301 https://$server_name$request_uri;  # enforce https

}

     

server {

listen 443 ssl;

server_name 10.0.0.124;

     

ssl_certificate /etc/nginx/cert.pem;

ssl_certificate_key /etc/nginx/cert.key;

     

# Path to the root of your installation

root /var/www/owncloud;

     

client_max_body_size 2000M; # set max upload size

fastcgi_buffers 64 4K;

     

rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect;

rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect;

rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect;

     

index index.php;

error_page 403 /core/templates/403.php;

error_page 404 /core/templates/404.php;

     

location = /robots.txt {

allow all;

log_not_found off;

access_log off;

}

     

location ~ ^/(?:\.htaccess|data|config|db_structure\.xml|README) {

deny all;

}

     

location / {

            # The following 2 rules are only needed with webfinger

            rewrite ^/.well-known/host-meta /public.php?service=host-meta last;

            rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last;

     

            rewrite ^/.well-known/carddav /remote.php/carddav/ redirect;

            rewrite ^/.well-known/caldav /remote.php/caldav/ redirect;

     

            rewrite ^(/core/doc/[^\/]+/)$ $1/index.html;

     

            try_files $uri $uri/ index.php;

}



location ~ \.php(?:$|/) {

            fastcgi_split_path_info ^(.+\.php)(/.+)$;

            include fastcgi_params;

            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

            fastcgi_param PATH_INFO $fastcgi_path_info;

            fastcgi_param HTTPS on;

    fastcgi_pass php-handler;

}

     

# Optional: set long EXPIRES header on static assets

location ~* \.(?:jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {

            expires 30d;

            # Optional: Don't log access to assets

            access_log off;

}

     

}

 

 

Modifichiamo ora la configurazione PHP con il comando:
sudo nano /etc/php5/fpm/php.ini
Con Ctrl+W cerchiamo la voce:

  • upload_max_filesize                  impostiamola a 2000M
  • post_max_size                           impostiamola a 2000M

Apriamo  e modifichiamo come segue il secondo file:
sudo nano /etc/php5/fpm/pool.d/www.conf
Cerchaimo la voce   listen = /var/run/php5-fpm.sock      togiamo il “;”all’inizio della riga e al posto di php5-fpm.sock inseriamo 127.0.0.1:9000 risultato:

listen = 127.0.0.1:9000

Terzo file (ci siamo quasi tenete duro):
sudo nano /etc/dphys-swapfile
Cabiamo il 100 in 512

Riavviamo ora il raspi con
sudo reboot
Dopo il riavvio andiamo a scaricare owncloud
sudo mkdir -p /var/www/owncloud
sudo wget https://download.owncloud.org/community/owncloud-8.0.2.tar.bz2
sudo tar xvf owncloud-8.0.2.tar.bz2
sudo mv owncloud/ /var/www/owncloud
sudo chown -R www-data:www-data /var/www
rm -rf owncloud owncloud*.tar.bz2
 

 

Settiamo gli ultimi permessi con:
sudo usermod -a -G pi www-data
 

Posizioniamoci nella cartella di owncloud:
cd /var/www/owncloud
Modifichiamo il .htaccess:

Cerchiamo i valori:

  • Php_value upload_max_filesize     Mettiamo 2000M
  • Php_value post_max_size              Mettiamo 2000M
  • Php_value memory_limit                Mettiamo 2000M

Modifichiamo l’ultimissimo file:

sudo nano user.ini
Cerchiamo i valori:

  • Php_value upload_max_filesize     Mettiamo 2000M
  • Php_value post_max_size              Mettiamo 2000M
  • Php_value memory_limit                Mettiamo 2000M

Riavviamo il raspberry con:
sudo reboot


 

Dopo il riavvio aprimo il browser del pc(connesso alla stessa lan) e digitiamo nella barra degli indirizzi:

192.168.1.3/owncloud

 

ovvimente al posto di “192.168.1.3” mettete l’ip del vostro raspi.

Vi si aprirà una schermata di owncloud simile a questa:

Inseriamo un NOME UTENTE Per l’account admin

Inseriamo una PASSWORD Per l’account admin

In DATA FOLDER Mettiamo il percorso di una cartella del nostro hdd(Per es.: /mnt/usbhdd/cloud )

 

Cliccando su FINISH SETUP verremo portati all’interfaccia del nostro nuovo personal hosting con owncloud

 

Spero di essere stato abbastanza chiaro ed esauriente….Per problemi o anche solo curiosità scrivete nel thread (attraverso bottone VEDI SUL FORUM)

GabrieleToselli

 

 

A proposito di Gab Tos

Avatar

Vedi Anche

MagPi in italiano! Costruisci un Computer Portatile Raspberry Pi

Traduzione in italiano di MagPi 98. PDF gratuito da RaspberryItaly

Powered by themekiller.com