Tutorial

Cómo instalar y configurar ownCloud en Ubuntu 18.04

ApplicationsStorageUbuntu 18.04

Introducción

ownCloud es un servidor de intercambio de archivos de código abierto y una plataforma de colaboración que puede almacenar su contenido personal, como documentos e imágenes, en una ubicación centralizada. Esto le permite tener el control de su contenido y de la seguridad, al no tener que depender de servicios de alojamiento de contenido externos como Dropbox.

En este tutorial, instalaremos y configuraremos una instancia de ownCloud en un servidor Ubuntu 18.04.

Requisitos previos

Para completar los pasos de esta guía, necesitará lo siguiente:

  • Un usuario sudo y un firewall en su servidor: puede crear un usuario con privilegios sudo y configurar un firewall básico siguiendo la guía de configuración inicial para servidores de Ubuntu 18.04.
  • Una pila LAMP: ownCloud requiere un servidor web, una base de datos y PHP para funcionar correctamente. La configuración de un servidor con pila LAMP (Linux, Apache, MySQL y PHP) cumple con todos estos requisitos: Siga esta guía para instalar y configurar este software.
  • Un certificado SSL: la manera de configurar esto depende de que tenga o no un nombre de dominio que se resuelva en su servidor.
    • Si dispone de un nombre de dominio, la alternativa más sencilla para proteger su sitio es Let’s Encrypt, que proporciona certificados de confianza gratuitos. Para la configuración, siga nuestra guía de Let’s Encrypt para Apache.
    • Si no cuenta con un dominio y solo utiliza esta configuración para pruebas o cuestiones personales, puede emplear en su lugar un certificado autofirmado. Le proporciona el mismo tipo de cifrado, aunque sin la validación de dominio. Para la configuración, siga la guía de certificados SSL autofirmados para Apache.

Paso 1: Instalar ownCloud

El paquete de servidor de ownCloud no existe dentro de los repositorios predeterminados de Ubuntu. Sin embargo, ownCloud ofrece un repositorio dedicado para la distribución que podemos añadir a nuestro servidor.

Para comenzar, descargue la clave de versión usando el comando curl e impórtela con la utilidad apt-key mediante el comando add:

  • curl https://download.owncloud.org/download/repositories/10.0/Ubuntu_18.04/Release.key | sudo apt-key add -

El archivo “Release.key” contiene una clave pública PGP (Pretty Good Privacy) que apt usará para verificar que el paquete de ownCloud sea auténtico.

Además de importar la clave, cree un archivo llamado owncloud.list en el directorio sources.list.d para apt. El archivo contiene la dirección del repositorio de ownCloud.

  • echo 'deb http://download.owncloud.org/download/repositories/10.0/Ubuntu_18.04/ /' | sudo tee /etc/apt/sources.list.d/owncloud.list

Ahora, podemos usar el administrador de paquetes para buscar e instalar ownCloud. Junto con el paquete principal, también instalaremos algunas bibliotecas de PHP adicionales que ownCloud utiliza para añadir más funciones. Actualice su índice local de paquetes e instale todo escribiendo lo siguiente:

  • sudo apt update
  • sudo apt install php-bz2 php-curl php-gd php-imagick php-intl php-mbstring php-xml php-zip owncloud-files

Todo lo que necesitamos está ahora instalado en el servidor, Por ello, a continuación podemos finalizar la configuración para comenzar a usar el servicio.

Paso 2: Ajustar la raíz del documento

El paquete de ownCloud que instalamos copia los archivos web a /var/www/owncloud en el servidor. Actualmente, los ajustes del host virtual de Apache están configurados para mostrar los archivos desde un directorio diferente. Debemos cambiar el ajuste de DocumentRoot en nuestra configuración para apuntar al nuevo directorio.

Encontrará los archivos del host virtual a los que hace referencia su nombre de dominio o dirección IP usando la utilidad apache2ctl con la opción DUMP_VHOSTS. Filtre el resultado con el nombre de dominio o la dirección IP de su servidor para saber qué archivos debe editar en los siguientes comandos:

  • sudo apache2ctl -t -D DUMP_VHOSTS | grep server_domain_or_IP

El resultado probablemente tenga un aspecto similar a este:

Output
*:443 server_domain_or_IP (/etc/apache2/sites-enabled/server_domain_or_IP-le-ssl.conf:2) port 80 namevhost server_domain_or_IP (/etc/apache2/sites-enabled/server_domain_or_IP.conf:1)

En los paréntesis, puede ver cada uno de los archivos que hacen referencia al nombre del dominio o a la dirección IP que usaremos para acceder a ownCloud. Estos son los archivos que deberá editar.

Para cada coincidencia, abra el archivo en un editor de texto con privilegios sudo:

  • sudo nano /etc/apache2/sites-enabled/server_domain_or_IP.conf

En su interior, busque la directiva DocumentRoot. Cambie la línea de modo que apunte al directorio /var/www/owncloud:

Example DocumentRoot edit
<VirtualHost *:80>
    . . .
    DocumentRoot /var/www/owncloud
    . . .
</VirtualHost>

Guarde y cierre el archivo cuando termine. Complete este proceso para cada uno de los archivos que hace referencia a su nombre de dominio (o dirección IP, si no configuró un dominio para su servidor).

Cuando termine, compruebe la sintaxis de sus archivos de Apache para asegurarse de que no haya errores de escritura detectables en su configuración:

  • sudo apache2ctl configtest
Output
Syntax OK

Según su configuración, es posible que una advertencia sobre la configuración de ServerName a nivel global. Siempre que el resultado termine con Syntax OK, puede ignorar esa advertencia. Si ve errores adicionales, regrese y compruebe los archivos que acaba de editar en busca de errores.

Si se supera con éxito la verificación de su sintaxis, vuelva a cargar el servicio de Apache para activar los nuevos cambios:

  • sudo systemctl reload apache2

Con esto, Apache debería poder presentar sus archivos ownCloud.

Paso 3: Configurar la base de datos de MySQL

Antes de pasar a la configuración web, debemos configurar la base de datos. Durante el proceso de configuración basado en la web, debemos proporcionar para la base de datos un nombre, un nombre de usuario y una contraseña a fin de que ownCloud pueda conectarse y administrar su información en MySQL.

Comience iniciando sesión en su base de datos con la cuenta administrativa de MySQL.

  • sudo mysql

Si configura la autenticación con contraseña para la cuenta root de MySQL, es posible que deba usar esta sintaxis:

  • mysql -u root -p

Cree una base de datos dedicada para su uso por parte de ownCloud. Daremos a esta base de datos el nombre owncloud:

  • CREATE DATABASE owncloud;

Nota: Cada instrucción de MySQL debe terminar en punto y coma (;). Asegúrese de comprobar que esto exista si experimenta un problema.

A continuación, cree una cuenta de usuario de MySQL independiente para administrar la base de datos recién creada. Desde el punto de vista de la administración y la seguridad, crear bases de datos y cuentas de una función es una idea recomendable. Como en el caso del nombre de la base de datos, seleccione el nombre de usuario que prefiera. Para esta guía, optamos por el nombre owncloud.

  • GRANT ALL ON owncloud.* to 'owncloud'@'localhost' IDENTIFIED BY 'owncloud_database_password';

Advertencia: Asegúrese de usar una contraseña real cuando el comando indique lo siguiente: owncloud_database_password

Una vez asignado el acceso del usuario a la base de datos, realice la operación flush privileges para garantizar que la instancia en ejecución de MySQL conozca la asignación reciente de privilegios:

  • FLUSH PRIVILEGES;

Ahora puede cerrar la sesión en MySQL escribiendo lo siguiente:

  • exit

Una vez que se instale el servidor de ownCloud y se configure la base de datos, estaremos listos para enfocar la atención en la configuración de la aplicación de ownCloud.

Paso 4: Configurar ownCloud

Para acceder a la interfaz web de ownCloud, abra un navegador web y diríjase a la siguiente dirección:

https://server_domain_or_IP

Nota: Si utiliza un certificado SSL autofirmado, es probable que se le presente una advertencia porque el certificado no está firmado por una de las autoridades de confianza de su navegador. Esto está previsto y es normal. Haga clic en el botón o enlace correspondientes para continuar con la página de administración de ownCloud.

Debería ver la página de configuración web de ownCloud en su navegador.

Cree una cuenta de administrador seleccionando un nombre de usuario y una contraseña. Por seguridad, no se recomienda usar opciones como “admin” para el nombre de usuario:

Cuenta de administrador de ownCloud

A continuación, deje la configuración de la carpeta de datos como está y desplácese hasta la sección de configuración de la base de datos.

Complete los datos con nombre de la base de datos, el nombre de usuario de la base de datos y la contraseña de la base de datos que creó en la sección anterior. Si utilizó la configuración de esta guía, tanto el nombre de la base de datos como el nombre de usuario serán owncloud. Deje localhost como host de la base de datos:

Configuración de la base de datos de ownCloud

Haga clic en Finish setup para terminar de configurar ownCloud usando la información que proporcionó. Accederá a una pantalla de inicio de sesión en la que podrá iniciar sesión usando su cuenta nueva:

Pantalla de inicio de sesión de ownCloud

La primera vez que inicie sesión, aparecerá una pantalla en la que podrá descargar aplicaciones para sincronizar sus archivos entre varios dispositivos. Puede descargarlas y configurarlas ahora o hacerlo más adelante. Cuando termine, haga clic en la x de la esquina superior derecha de la pantalla de presentación para acceder a la interfaz principal:

Interfaz principal de ownCloud

Aquí, podrá crear o cargar archivos en su nube personal.

Conclusión

ownCloud puede replicar las capacidades de servicios externos populares de almacenamiento en la nube. El contenido puede compartirse entre usuarios o de forma externa con URL públicas. La ventaja de ownCloud es que la información se guarda en un lugar que usted controla y administra sin intervención de terceros.

Explore la interfaz y, para obtener funciones adicionales, instale complementos usando la tienda de aplicaciones de ownCloud.

Creative Commons License