Owncloud 9 Apache Mysql su Raspberry Pi 3 e Raspbian

 

Owncloud 9 Apache Mysql su Raspberry Pi 3 e Raspbian

 

Owncloud 9 Apache Mysql su Raspberry Pi 3 e Raspbian. Io su Raspberry Pi 3, ho un server Webdav e mi trovo bene, qua la guida. ma ho voluto provare Owncloud, poichè è molto più personalizzabile, e ti permette di condividere link, con password e data di scadenza. Io ho utilizzato come disco esterno una pen drive da 128G, formattata in NTFS, ma si può utilizzare anche un hard disk esterno, possibilmente alimentato. 

sudo mkdir /media/usb-hdd

identificare la chiavetta con:

sudo tail -f /var/log/messages

oppure:

sudo fdisk -l

conoscere UUID per procedere con il mount automatico:

sudo blkid /dev/sda1

il comando sopra restituirà qualcosa del genere:

/dev/sda1: UUID="10C67902162A661E" TYPE="ntfs" PARTUUID="eaf9ab2e-01"

quindi configurare fstab:

sudo nano /etc/fstab

che dovrebbe essere come sotto:

UUID=10C67902162A661E /media/usb-hdd/ ntfs-3g permissions,defaults,auto

poi:

sudo reboot

 

Installazione di Owncloud ed i servizi necessari:

 

wget -nv https://download.owncloud.org/download/repositories/stable/Debian_8.0/Release.key -O Release.key
sudo apt-key add - < Release.key
sudo sh -c "echo 'deb https://download.owncloud.org/download/repositories/stable/Debian_8.0/ /' >> /etc/apt/sources.list.d/owncloud.list"
sudo apt-get update && sudo apt-get install owncloud

verrà chiesto di scegliere una password per mysql.

 

Configurazione Mysql:

 

sudo mysql -u root -p

inserire la password di mysql, e poi i 4 comandi sotto, scegliendo Utente e Password per l'utente owncloud:

CREATE DATABASE owncloud;
GRANT ALL PRIVILEGES ON owncloud.* TO USER@localhost IDENTIFIED BY 'PASSWORD';
FLUSH PRIVILEGES;
exit

riavviare mysql:

sudo service mysql restart

 

Web Server Apache2 con SSL:

 

sudo openssl genrsa -out server.key 4096
sudo openssl req -new -key server.key -out server.csr

ci saranno alcune voci da riempire, ma quella più importante è COMMON NAME, che io ho fatto puntare al mio hostname DynDNS per l'accesso da remoto:

Owncloud 9 Apache Mysql su Raspberry Pi 3 e Raspbian

Owncloud 9 Apache Mysql su Raspberry Pi 3 e Raspbian

 

sudo openssl x509 -req -days 1825 -in server.csr -signkey server.key -out server.crt -sha256
sudo chmod 400 server.key
sudo mv server.key /root/server.key
sudo mv server.crt /root/server.crt
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/000-default.conf_bak
sudo nano /etc/apache2/sites-available/000-default.conf

e modificare DocumentRoot come sotto:

DocumentRoot /var/www/owncloud

poi ancora:

sudo rm -rf /var/www/html/
sudo nano /etc/apache2/sites-available/default-ssl.conf

e modificare le voci DocumentRoot, SSLCertificateFile, SSLCertificateKeyFile, come sotto:

DocumentRoot /var/www/owncloud
SSLCertificateFile /root/server.crt
SSLCertificateKeyFile /root/server.key

abilitare la crittografia:

sudo a2ensite default-ssl.conf
sudo service apache2 reload
sudo a2enmod ssl
sudo service apache2 restart

alcune modifiche necessarie:

sudo nano /etc/php5/apache2/php.ini

fare una modifica al file php.ini, nella sezione File Uploads, portando upload_max_filesize = 5000.

sudo sed -i 's/AllowOverride None/AllowOverride All/'  /etc/apache2/apache2.conf
sudo /etc/init.d/apache2 restart

creazione della cartella di storage e relativi permessi:

sudo mkdir -p /media/usb-hdd/owncloud/dati
sudo chown -R www-data:www-data /media/usb-hdd/owncloud/dati
sudo chmod 0770 /media/usb-hdd/owncloud/dati
sudo reboot

come ultimo ritocco, aumentare la capacità di upload, andando a modificare il file .htacces, ed installare fail2ban:

sudo nano /var/www/owncloud/.htaccess

portando: php_value upload_max_filesize, e php_value post_max_size a 5000M

sudo apt-get install fail2ban

Se tutto è andato bene andare all'indirizzo https://ip_del_raspberry/owncloud ed apparirà la pagina iniziale, dove si dovrà scegliere nome utente e password per l'accesso, ed inserire il nome del database ed user e password dell'utente owncloud.

Owncloud 9 Apache Mysql su Raspberry Pi 3 e Raspbian

 

enjoy 😉