OwnCloud es un software de código libre y multiplataforma que nos permite almacenar y sincronizar archivos entre diferentes dispotivos y usuarios. Disponer de un servidor para OwnCloud propio nos otorga ventajas respecto a otros sistemas de almacenamiento privados. Entre las principales ventajas de disponer un servidor para Owncloud podemos contar con más privacidad, costes ajustados a nuestras necesidades, control total de la información, personalización de permisos, encriptación, cliente web/Android/iOS, edición de documentos, entre muchas otras.
Crea tu VPS para OwnCloud
Para poder instalar OwnCloud necesitaremos un servidor Linux. En cuanto a requisitos de hardware para un servidor Linux para OwnCloud recomendamos empezar con:
- La última versión de Ubuntu, Debian o AlmaLinux
- 1 vCores
- 2GB de RAM
- 30GB de disco SSD
Cómo crear tu primer VPS Hosting para OwnCloud
Si aún no has creado ningún servidor VPS en Clouding puedes hacer clic en el siguiente enlace donde detallamos como crear tu primer servidor en la nube.
Instalación de OwnCloud en un servidor Linux
En este ejemplo vamos a utilizar Ubuntu 20.04, Apache, MariaDB y para cumplir con los requisitos de OwnCloud ejecutaremos los siguientes comandos:
# apt update && apt upgrade -y
# apt install -y apache2 libapache2-mod-php mariadb-server openssl php-imagick php-common php-curl php-gd php-imap php-intl php-json php-mbstring php-mysql php-ssh2 php-xml php-zip php-apcu php-redis redis-server wget
# apt install -y ssh bzip2 rsync curl jq inetutils-ping coreutils
A continuación, tenemos que crear un Virtualhost para OwnCloud:
# vi /etc/apache2/sites-available/owncloud.conf
El contenido a añadir es el siguiente:
<VirtualHost *:80>
ServerName 80f8afcc-d0d9-4f91-b313-0686475d89a1.clouding.host
DocumentRoot /var/www/owncloud
Alias /owncloud "/var/www/owncloud/"
<Directory /var/www/owncloud/>
Options +FollowSymlinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/owncloud
SetEnv HTTP_HOME /var/www/owncloud
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
*En ServerName tenemos que especificar el dominio que utilizaremos para acceder a OwnCloud. En este caso utilizamos el nombre de host del VPS que puedes obtener en el panel de cliente.
Activamos el nuevo Virtualhost con los siguientes comandos:
# a2ensite owncloud.conf # service apache2 reload
Conectamos al servidor MariaDB y creamos un usuario y base de datos para OwnCloud:
# mysql -u root -p
# CREATE DATABASE IF NOT EXISTS owncloud;
# CREATE USER 'owncloud'@'localhost' IDENTIFIED BY '12345';
# GRANT ALL PRIVILEGES ON *.* TO 'owncloud'@'localhost' WITH GRANT OPTION;
# FLUSH PRIVILEGES;
# exit
Ahora que ya tenemos todos los requisitos previos instalados podemos pasar a instalar OwnCloud. En este caso utilizaremos el repositorio oficial de OwnCloud:
# echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/server:/10/Ubuntu_20.04/ /' | sudo tee /etc/apt/sources.list.d/isv:ownCloud:server:10.list # curl -fsSL https://download.opensuse.org/repositories/isv:ownCloud:server:10/Ubuntu_20.04/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/isv_ownCloud_server_10.gpg > /dev/null # sudo apt update # sudo apt install owncloud-complete-files
Establecemos los permisos de usuario correctos:
# cd /var/www/ # chown -R www-data. owncloud
Ahora accedemos a través del navegador a la URL http://80f8afcc-d0d9-4f91-b313-0686475d89a1.clouding.host/ que hemos configurado en el VirtualHost de Apache para OwnCloud.
Para completar la instalación nos pedirá que creemos un usuario administrador y el path donde va a almacenar los datos:
También, tendremos que especificar el usuario y base de datos creados anteriormente para OwnCloud:
Por último, hacemos login con el usuario creado:
Una vez hecho login podemos descargar las APP o empezar a subir ficheros a través del explorador web:
Para terminar de configurar OwnCloud tendremos que crear un Cron Job, configurar la cache y configurar el logrotate.
Para crear el cron job para OwnCloud ejecutamos:
# crontab -u www-data -e
*/15 * * * * /usr/bin/php -f /var/www/owncloud/occ system:cron
Si accedemos a Ajustes -> General de OwnCloud en el explorador web podremos ver que el cron se ejecuta correctamente:
Para configurar la cache de OwnCloud ejecutaremos:
# vi /var/www/owncloud/config/config.php
Al final del archivo justo antes del cierre añadimos las siguientes lineas:
'filelocking.enabled' => true,
'memcache.local' => '\OC\Memcache\APCu',
'memcache.locking' => '\OC\Memcache\APCu',
# touch /etc/logrotate.d/owncloud
cat <<EOM >/etc/logrotate.d/owncloud
/var/www/owncloud/data/owncloud.log {
size 10M
rotate 12
copytruncate
missingok
compress
compresscmd /bin/gzip
}
EOM
Instalar certificado SSL Let's Encrypt
Si necesitamos que OwnCloud funcione por HTTPS podemos instalar el certificado siguiendo los pasos del siguiente enlace Adquirir certificados Let's Encrypt con Certbot
Con estos pasos ya tenemos una instalación de OwnCloud en producción preparada para almacenar y compartir documentos.