Guía instalación ownCloud

Aprovechando que ownCloud acaba de lanzar su última versión de servidor, me he decidido a realizar la instalación sobre un VPS, aquí os explico los pasos. Para ello he utilizado los servicios de DigitalOcean.

ownCloud-500

Guía de instalación ownCloud

Antes de empezar con la instalación y configuración veamos un poco en que consiste el servicio de almacenamiento en la nube ownCloud. Se trata de una aplicación de software libre de alojamiento de archivos, que nos permite el almacenamiento en línea y nos ofrece diferentes aplicaciones. Puede ser instalador sobre un servidor web, generalmente Apache, que utilice PHP (superior a su versión 5.3) y una base de datos, ya sea MySQL/MariaDB, SQLite o PostgreSQL.

El proyecto fue iniciado en el año 2010 por el desarrollador Frank Karlitschek, que también es desarrollador del proyecto KDE. Está liberado utilizando la licencia de software libre AGPLv3

Entre sus principales características encontramos almacenamiento en línea, sincronización de ficheros entre diversos equipos, soporte cifrado de archivos, compartimiento de estos entre diferentes usuarios o de manera pública, lector de música en línea, servidor de ficheros WebDav, calendario con sincronización con CalDAV, administración de contactos, editor de textos en línea, visor de documentos, galería de imágenes, entre otros.

Creación de VPS

Un VPS, es decir un servidor virtual privado, es un método que permite partir un servidor físico en varios servidores, para que cada una de las partes funcione de manera independiente con un su propio sistema operativo, mejorando de manera sustancial respecto a un servicio de hosting compartido tradicional. Para ello, a modo de ejemplo, voy a utilizar DigitalOcean. Es el que yo utilizo, cada uno puede utilizar el que más le convenga, faltaría más. He utilizado el más barato, que son 5 dólares al mes, con 512 MB de memoria, una sola CPU y 20 GB de espacio. Los recomendado para unos 150 usuarios, depende del espacio que le queramos dar a cada usuario, es desde 100GB a 10 TB. La memoría y CPU también va en proporción.

También he creado un subdominio llamado cloud.ochobitsunbyte.pw, copiando la idea del mismo servicio ofrecido por openmailbox. Ambas cosas, es decir la creación de un VPS y la configuración de DNS, las expliqué en su día, en un artículo sobre la creación de un servidor de correo desde cero.

El sistema operativo ha sido Ubuntu 14.04, primero de todo he actualizado los repositorios y los paquetes:

  1. apt update
  2. apt upgrade

No, no me he equivocado, desde hace un tiempo ‘apt-get‘ ya no es necesario, ya que sólo se mantiene como un alias de ‘apt‘. Como primer paso en la guía de instalación de un servidor web, con LAMP, vamos a instalar Apache.

  1. apt install apache2

Si vamos al navegador y escribimos el subdominio que hemos creado previamente, ya vemos el resultado:

owncloud-apache

Ya hemos dicho que también necesitamos tener instalado PHP, así que lo instalamos:

  1. apt install php libapache2-mod-php5 php5-mysql

Para comprobar que la versión instalada nos viene bien, utilizaremos el comando y parámetros:

  1. php5 --version

Con el siguiente resultado:

Comprobar versión php5

Comprobar versión php5

La versión instalada es la 5.5.9, que es superior a la 5.3, así que genial. Ahora toca instalar la base de datos, yo voy a utilizar MariaDB.

De manera adicional añadimos una serie de paquetes:

  1. apt install php5-gd php5-json php5-curl php5-intl php5-mcrypt php5-imagick

Para realizar la instalación en Ubuntu me he servido de la guía oficial. Tenemos que importar primero la llave pública:

  1. sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db

Desde el siguiente enlace consultamos los repostiros que tenemos que añadir en el efichero /etc/apt/sources.list

  1. http://downloads.mariadb.org/mariadb/repositories/

También se puede hacer el mismo paso mediante comandos, en mi caso:

  1. sudo add-apt-repository 'deb [arch=amd64,i386] http://tedeco.fi.upm.es/mirror/mariadb/repo/10.1/ubuntu trusty main'

Actualizamos e instalamos:

  1. apt update
  2. apt install mariadb-server

Durante la instalación nos pedirá añadir una contraseña, la añadimos. Hay que intentar que sea compleja y no la hayamos utilizado antes ni sea la misma que la del servidor. Par asegurar la instalación del motor de base de datos, utilizaremos el siguiente script:

  1. mysql_secure_installation

Vamos a crear la base de datos accediente a la consola:

  1. mysql -u root -p
  2. #Creamos usuario y base de datos:
  3. CREATE USER 'usuarioowncloud'@'localhost' IDENTIFIED BY 'chachi';
  4. CREATE DATABASE dbowncloud;
  5. GRANT ALL ON dbowncloud.* TO 'usuarioowncloud'@'localhost';
  6. FLUSH PRIVILEGES;

Salimos escribiendo ‘exit‘.

A continuación nos descagamos los ficheros de la última versión, desde su web.

Una vez descargado el fichero, lo descomprimimos y enviamos los ficheros a la carpeta /var/www/html

  1. tar -xvf owncloud-9.0.1.tar.bz2 -C /var/www/html/

Añadimos el usuario y grupo www-data, a la carpeta /var/www/html/owncloud

  1. chown www-data:www-data -R /var/www/html/owncloud/

Creamos el fichero de configuración del proyecto en la configuración de Apache, creando el fichero /etc/apache2/sites-available/cloud.ochobitsunbyte.pw.conf

Configuración Virtual Host

Configuración Virtual Host

Para añadir el nuevo Virtual Host, escribimos:

  1. a2ensite owncloud

Y reiniciamos el servicio:

  1. service apache2 reload

Si nos vamos a nuestra navegador y escribimos la URL, ya podremos acceder a la interfaz.

Configuración interfaz web

Configuración interfaz web

En principio añadiendo el usuario y contraseña para el administrador, más las credenciales de la base de datos, ya tendríamos que acceder para empezar a trabajar. Mi instalación, parece ser por utilizar MariaDB ha fallado, lo he solucionado, tal y como indican en este post. Una vez solucionado ya podemos ver el aspecto de la interfaz:

Aspecto interfaz

Aspecto interfaz

Ya hemos visto la instalación, en el siguiente post hablo de su configuración y seguridad:

Configurar y asegurar servidor ownCloud

Espero que haya sido interesante, nos leemos en la próxima 😉