Instalación OwnCloud · 8 min read · Jan 05, 2026

Ejecuta tu propia nube: Instalación de OwnCloud 9 en Debian 8

OwnCloud te ofrece la capacidad de ejecutar un servicio de almacenamiento en la nube que tú administras y controlas. La última versión, ownCloud 9.0, fue lanzada el 8 de marzo.

Instalando ownCloud

Veamos el proceso de instalación de ownCloud 9.0 en un sistema que ejecuta Debian Jessie.

1. Instalar paquetes requeridos y recomendados

Comienza instalando los paquetes de software de soporte. OwnCloud utiliza PHP y recomienda MariaDB como su base de datos. Como root, instala los siguientes paquetes con apt-get:

apt-get install mariadb-server mariadb-client apache2 libapache2-mod-php5 php5-json php5-gd php5-mysql php5-curl php5-intl php5-mcrypt php5-imagick

2. Descargar

A continuación, descarga el paquete ownCloud 9.0. En este paso también descargaremos el hash SHA256, la firma PGP pública de ownCloud y la firma PGP para el paquete de software. Usaremos estos en los siguientes pasos para verificar y autenticar el software antes de instalarlo. SHA256 es el algoritmo de verificación recomendado, pero si prefieres verificar usando MD5, ese hash también está disponible para descargar en el sitio web de ownCloud.

Estos comandos utilizan wget para descargar los archivos, pero también podrías descargarlos fácilmente ingresando las URL en tu navegador web.

wget https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
wget https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2.sha256
wget https://owncloud.org/owncloud.asc
wget https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2.asc

3. Verificar la integridad del paquete descargado

Verifica que el hash SHA256 del archivo de software descargado coincida con la suma proporcionada por ownCloud:

sha256sum -c owncloud-9.0.0.tar.bz2.sha256

Salida exitosa:

owncloud-9.0.0.tar.bz2: OK

Si las sumas no coinciden, ¡no debes continuar! Asegúrate de que tu descarga esté verificada antes de realizar los pasos restantes.

4. Importar la clave pública PGP de ownCloud al llavero de GnuPG

A continuación, utilizaremos GnuPG para verificar la autenticidad del paquete de software. Para hacer esto, primero importa la clave pública PGP de ownCloud en tu llavero de GnuPG.

gpg --import owncloud.asc

Salida exitosa:

[...]  
gpg: Total number processed: 1  
gpg: imported: 1 (RSA: 1)

5. Verificar la autenticidad de la firma del paquete

A continuación, utiliza GnuPG para verificar la firma del paquete de software. Comprobará la firma contra el archivo, utilizando la clave que importaste en el paso anterior.

gpg --verify owncloud-9.0.0.tar.bz2.asc

Salida exitosa:

[…]
gpg: Good signature from “ownCloud < [email protected] >”
[…]

Recibirás una advertencia de que la firma de ownCloud aún no es de confianza. Confiar en la firma es un paso opcional que puedes realizar tú mismo. Para más información sobre cómo confiar en claves públicas, consulta el Manual de Privacidad de GNU, Capítulo 3.

6. Extraer el paquete de software

Después de que la descarga esté verificada y autenticada, extráelo.

tar xjvf owncloud-9.0.0.tar.bz2

7. Copiar el directorio ownCloud en la raíz del documento de Apache2

A continuación, copia el nuevo directorio owncloud y su contenido en tu raíz de documentos web. En Debian 8, Apache2 utiliza /var/www/html como su raíz de documentos predeterminada; puedes personalizar esta ubicación si lo deseas. En este tutorial, colocaremos owncloud directamente en /var/www.

cp -r owncloud /var/www

8. Agregar owncloud a los sitios disponibles de Apache2

Ahora podemos comenzar a configurar Apache2. Crea una copia del archivo de configuración del sitio predeterminado, /etc/apache2/sites-available/000-default.conf, nombrándola owncloud.conf.

cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/owncloud.conf

9. Editar la configuración del sitio ownCloud

Como root, abre /etc/apache2/sites-available/owncloud.conf en un editor de texto. Realiza las siguientes modificaciones:

  1. Localiza la línea ServerName y descoméntala eliminando el # inicial.
  2. Cambia el valor de ServerName para que coincida con el nombre de host que aparecerá en la URL que uses para acceder al servidor: por ejemplo, www.mypersonaldomain.com o myhostname.
  3. Agrega las siguientes líneas al final del archivo, modificando el nombre del directorio ** según sea necesario para ajustarse a la ubicación donde colocaste owncloud:
Alias /owncloud "/var/www/owncloud/"  
  
  
  Options +FollowSymlinks  
  AllowOverride All  
  
   
  Dav off  
   
  
 SetEnv HOME /var/www/owncloud  
 SetEnv HTTP_HOME /var/www/owncloud  
  

10. Crear un enlace simbólico del archivo de configuración en /etc/apache2/sites-enabled

Crea un enlace simbólico a tu configuración de sitio en el directorio /etc/apache2/sites-enabled:

ln -s /etc/apache2/sites-available/owncloud.conf /etc/apache2/sites-enabled/owncloud.conf

11. Habilitar módulos de Apache2

OwnCloud requiere mod_rewrite. Habilítalo:

a2enmod rewrite

Se recomienda el módulo headers. Habilítalo:

a2enmod headers

Los módulos env, dir y mime también se recomiendan. Estos suelen estar habilitados por defecto, pero puedes habilitarlos manualmente para estar seguro:

a2enmod env
a2enmod dir
a2enmod mime

12. Habilitar la configuración del sitio ownCloud y reiniciar Apache2

Habilita tu configuración de sitio:

a2ensite owncloud

Reinicia el servicio de Apache2 para que tus cambios surtan efecto:

service apache2 restart

13. Establecer permisos para los archivos de ownCloud

Antes de que puedas comenzar a configurar ownCloud, necesitarás asegurarte de que el usuario/grupo HTTP tenga permiso para realizar cambios en los archivos de ownCloud. En Debian, este usuario y grupo se llaman www-data. Haz que sean los propietarios del directorio owncloud y de todo su contenido.

chown -R www-data:www-data /var/www/owncloud/

A continuación, refina estos permisos. Los permisos exactos para la instalación de owncloud son:

  • Todos los archivos deben ser de lectura-escritura para el propietario del archivo, de solo lectura para el grupo propietario y no accesibles para otros.
  • Todos los directorios deben ser ejecutables, de lectura-escritura para el propietario del directorio y de solo lectura para el grupo propietario.
  • El directorio apps/ debe ser propiedad de [usuario HTTP]:[grupo HTTP].
  • El directorio config/ debe ser propiedad de [usuario HTTP]:[grupo HTTP].
  • El directorio themes/ debe ser propiedad de [usuario HTTP]:[grupo HTTP].
  • El directorio assets/ debe ser propiedad de [usuario HTTP]:[grupo HTTP].
  • El directorio data/ debe ser propiedad de [usuario HTTP]:[grupo HTTP].
  • El archivo [ocpath]/.htaccess debe ser propiedad de root:[grupo HTTP].
  • El archivo data/.htaccess debe ser propiedad de root:[grupo HTTP].
  • Ambos archivos .htaccess deben ser de lectura-escritura para el propietario del archivo, de solo lectura para el grupo propietario y no accesibles para otros.

Para ajustarte a esta estructura de permisos, copia y pega el siguiente script en un nuevo archivo. En este ejemplo, el nombre del archivo del script será /root/oc-perms.sh. Modifica el valor de ocpath si estás utilizando una ubicación personalizada.

#!/bin/bash  
ocpath='/var/www/owncloud'  
htuser='www-data'  
htgroup='www-data'  
rootuser='root'  
  
printf "Creando posibles directorios faltantes\n"  
mkdir -p $ocpath/data  
mkdir -p $ocpath/assets  
  
printf "chmod Archivos y Directorios\n"  
find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640  
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750  
  
printf "chown Directorios\n"  
chown -R ${rootuser}:${htgroup} ${ocpath}/  
chown -R ${htuser}:${htgroup} ${ocpath}/apps/  
chown -R ${htuser}:${htgroup} ${ocpath}/config/  
chown -R ${htuser}:${htgroup} ${ocpath}/data/  
chown -R ${htuser}:${htgroup} ${ocpath}/themes/  
chown -R ${htuser}:${htgroup} ${ocpath}/assets/  
  
chmod +x ${ocpath}/occ  
  
printf "chmod/chown .htaccess\n"  
if [ -f ${ocpath}/.htaccess ]  
 then  
  chmod 0644 ${ocpath}/.htaccess  
  chown ${rootuser}:${htgroup} ${ocpath}/.htaccess  
fi  
if [ -f ${ocpath}/data/.htaccess ]  
 then  
  chmod 0644 ${ocpath}/data/.htaccess  
  chown ${rootuser}:${htgroup} ${ocpath}/data/.htaccess  
fi

Haz que el script sea ejecutable:

chmod u+x /root/oc-perms.sh

Ejecuta:

/root/oc-perms.sh

14. Crear base de datos ownCloud y usuario de base de datos

A continuación, prepara una base de datos para que ownCloud la use. Inicia sesión en el cliente de MariaDB como el usuario root de la base de datos:

mysql -u root -p

Se te pedirá la contraseña del usuario root de la base de datos. Si instalaste MariaDB por primera vez en el paso 1, se te pidió que crearas esta contraseña. Ingresa ahora. Serás colocado en el aviso del cliente de MariaDB.

Elige un nombre para tu base de datos owncloud (ocdbname), el usuario de la base de datos owncloud (ocuser) y la contraseña para ese usuario (ocuserpw). Luego ejecuta los siguientes dos comandos en el aviso de MariaDB, reemplazando los valores entre corchetes con los tuyos:

CREATE DATABASE [ocdbname];
GRANT ALL ON [ocdbname].* TO [ocuser]@localhost IDENTIFIED BY '[ocuserpw]';

Sal del cliente de base de datos:

quit

15. Configurar el cliente ownCloud

Navega en un navegador web a tu instalación de ownCloud, por ejemplo, http://myhostname/owncloud. Se te presentarán campos donde podrás crear una cuenta de administrador de ownCloud y ingresar los valores de configuración de la base de datos.

Configuraciones de OwnCloud.

Nombre de usuario y Contraseña son valores para el usuario que administrará la instalación; establece estos valores como desees.

Usuario de base de datos, Contraseña de base de datos y Nombre de base de datos deben ajustarse a los valores [ocuser], [ocuserpw] y [ocdbname] que creaste en el paso anterior.

Haz clic en Finalizar configuración.

¡Felicidades! Estás listo para comenzar a usar ownCloud.

OwnCloud ha sido instalado.

Opcional: Usar SSL

Es aconsejable cifrar el tráfico de red que pasará dentro y fuera de ownCloud. Aquí hay algunos pasos para poner HTTPS en funcionamiento con tu instalación.

1. Habilitar SSL en Apache2

a2enmod ssl
a2ensite default-ssl

2. Agregar configuración de Virtualhost SSL a owncloud.conf

Apache2 viene con una configuración de sitio SSL predeterminada, ubicada en /etc/apache2/sites-available/default-ssl.conf. Copia el contenido de este archivo y pégalo en la parte superior de owncloud.conf. Dentro de la sección default:443>, realiza las siguientes modificaciones:

Agrega una línea ServerName con tu nombre de host como valor, por ejemplo:

 ServerName myhostname****

Edita la línea DocumentRoot para reflejar el directorio principal de la instalación de owncloud, por ejemplo:

 DocumentRoot /var/www/

3. Generar un nuevo par de certificado/claves, si es necesario

La sección default:443> ya contiene tres líneas importantes para habilitar SSL cuando el sitio es accedido por HTTPS:

SSLEngine on  
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem  
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

Los valores SSLCertificateFile y SSLCertificateKeyFile apuntan a archivos que ya deberían existir en tu sistema, instalados como parte de los paquetes predeterminados openssl y ssl-cert. Sin embargo, es posible que necesites regenerar estos archivos bajo ciertas circunstancias: si realizas cambios en la configuración en /etc/hosts, por ejemplo.

Si necesitas regenerar estos archivos, utiliza el comando:

make-ssl-cert generate-default-snakeoil --force-overwrite

Para más información y para solucionar errores de certificado, consulta las notas en /usr/share/doc/apache2/README.Debian.gz.

4. Recargar la configuración de Apache2

service apache2 reload

Ahora deberías poder acceder a tu instalación de ownCloud usando una URL https://. Ten en cuenta que recibirás una advertencia en tu navegador web porque tu certificado es autofirmado. Necesitarás agregar manualmente tu sitio como una excepción antes de establecer la conexión segura.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.