OwnCloud le ofrece la posibilidad de ejecutar un servicio de almacenamiento en la nube que usted mismo administra y controla. La última versión, ownCloud 9.0, se lanzó el 8 de marzo.
Instalando ownCloud
Veamos el proceso de instalación de ownCloud 9.0 en un sistema que ejecuta Debian Jessie.
1. Instale los paquetes requeridos y recomendados
Comience instalando los paquetes de software compatibles. OwnCloud usa PHP y recomienda MariaDB como su base de datos. Como root, instale 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, descargue 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 softare. Los usaremos en los siguientes pasos para verificar y autenticar el software antes de instalarlo. SHA256 es el algoritmo de verificación recomendado, pero si prefiere verificar usando MD5, ese hash también está disponible para descargar en el sitio web de ownCloud.
Estos comandos usan wget para descargar los archivos, pero también puede descargarlos fácilmente ingresando las URL en su 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
Verifique 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 debe continuar! Asegúrese de que su descarga esté verificada antes de realizar los pasos restantes.
4. Importe la clave pública PGP de ownCloud al conjunto de claves GnuPG
A continuación, usaremos GnuPG para verificar la autenticidad del paquete de software. Para hacer esto, primero importe la clave PGP pública de ownCloud en su conjunto de claves 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
Luego, use GnuPG para verificar la firma del paquete de software. Verificará la firma contra el archivo, utilizando la clave que importó en el paso anterior.
gpg --verify owncloud-9.0.0.tar.bz2.asc
Salida exitosa:
[...]
gpg:Buena firma de "ownCloud <[email protected]>"
[...]
Recibirá una advertencia de que la firma de ownCloud aún no es de confianza. Confiar en la firma es un paso opcional que debe realizar usted mismo. Para obtener más información sobre cómo confiar en las claves públicas, consulte el Manual de privacidad de GNU, Capítulo 3.
6. Extraer paquete de software
Después de verificar y autenticar la descarga, extráigala.
tar xjvf owncloud-9.0.0.tar.bz2
7. Copie el directorio ownCloud en la raíz del documento Apache2
A continuación, copie el owncloud recién creado directorio y su contenido en la raíz de su documento web. En Debian 8, Apache2 usa /var/www/html como su documento raíz predeterminado; puede personalizar esta ubicación si lo desea. En este tutorial, colocaremos owncloud directamente en /var/www .
cp -r owncloud /var/www
8. Agregue owncloud a los sitios disponibles de Apache2
Ahora podemos comenzar a configurar Apache2. Cree una copia del archivo de configuración del sitio predeterminado, /etc/apache2/sites-disponible/000-default.conf , nombrándolo owncloud.conf .
cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/owncloud.conf
9. Editar la configuración del sitio ownCoud
Como raíz, abra /etc/apache2/sites-disponible/owncloud.conf en un editor de texto. Realice las siguientes modificaciones:
- Ubique el Nombre del servidor línea y descoméntelo eliminando el # inicial
- Cambiar el Nombre del servidor valor para que coincida con el nombre de host que aparecerá en la URL que utiliza para acceder al servidor:por ejemplo, www.mypersonaldomain.com o minombre de host
- Agregue las siguientes líneas al final del archivo, modificando el nombre del directorio según sea necesario para ajustarse a la ubicación donde colocó 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>
10. Archivo de configuración de enlace simbólico en /etc/apache2/sites-enabled
Cree un enlace simbólico a la configuración de su 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 Apache2
OwnCloud requiere mod_rewrite . Habilitarlo:
a2enmod rewrite
Los encabezados Se recomienda el módulo. Habilitarlo:
a2enmod headers
El entorno , dir y mimo También se recomiendan los módulos. Por lo general, están habilitados de forma predeterminada, pero puede habilitarlos manualmente para estar seguros:
a2enmod env
a2enmod dir
a2enmod mime
12. Habilite la configuración del sitio ownCloud y reinicie Apache2
Habilite la configuración de su sitio:
a2ensite owncloud
Reinicie el servicio Apache2 para que sus cambios surtan efecto:
service apache2 restart
13. Establecer permisos para archivos ownCloud
Antes de que pueda comenzar a configurar ownCloud, deberá asegurarse de que el usuario/grupo HTTP tenga permiso para realizar cambios en los archivos de ownCloud. En Debian, este usuario y grupo se denominan www-data . Conviértalos en propietarios de owncloud directorio y todo su contenido.
chown -R www-data:www-data /var/www/owncloud/
A continuación, refine estos permisos. Los permisos exactos para la instalación de owncloud son:
- Todos los archivos deben ser de lectura y escritura para el propietario del archivo, de solo lectura para el propietario del grupo y no accesibles para otros
- Todos los directorios deben ser ejecutables, de lectura y escritura para el propietario del directorio y de solo lectura para el propietario del grupo
- Las aplicaciones/ el directorio debe ser propiedad de [usuario HTTP]:[grupo HTTP]
- La config/ el directorio debe ser propiedad de [usuario HTTP]:[grupo HTTP]
- Los temas/ el directorio debe ser propiedad de [usuario HTTP]:[grupo HTTP]
- Los activos/ el directorio debe ser propiedad de [usuario HTTP]:[grupo HTTP]
- Los datos/ el directorio debe ser propiedad de [usuario HTTP]:[grupo HTTP]
- El [ocpath]/.htaccess el archivo debe ser propiedad de raíz:[grupo HTTP]
- Los datos/.htaccess el archivo debe ser propiedad de raíz:[grupo HTTP]
- Ambos .htaccess los archivos deben ser de lectura y escritura para el propietario del archivo, de solo lectura para el propietario del grupo y no accesibles para otros
Para ajustarse a esta estructura de permisos, copie y pegue el siguiente script en un nuevo archivo. En este ejemplo, el nombre del archivo del script será /root/oc-perms.sh . Modificar el ocpath valor si está utilizando una ubicación personalizada.
#!/bin/bash
ocpath='/var/www/owncloud'
htuser='www-data'
htgroup='www-data'
rootuser='root'
printf "Creating possible missing Directories\n"
mkdir -p $ocpath/data
mkdir -p $ocpath/assets
printf "chmod Files and Directories\n"
find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750
printf "chown Directories\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
Haga que el script sea ejecutable:
chmod u+x /root/oc-perms.sh
Ejecutarlo:
/root/oc-perms.sh
14. Crear base de datos ownCloud y usuario de base de datos
A continuación, prepare una base de datos para utilizar ownCloud. Inicie sesión en el cliente MariaDB como usuario raíz de la base de datos:
mysql -u root -p
Se le pedirá la contraseña del usuario raíz de la base de datos. Si instaló MariaDB por primera vez en el paso 1, se le solicitó que creara esta contraseña. Entra ahora. Se le ubicará en el indicador del cliente de MariaDB.
Elija un nombre para su base de datos owncloud (ocdbname ), el usuario de la base de datos owncloud (ocuser ) y la contraseña de ese usuario (ocuserpw ). Luego ejecute los siguientes dos comandos en el indicador de MariaDB, reemplazando los valores entre paréntesis con los suyos propios:
CREATE DATABASE [ocdbname];
GRANT ALL ON [ocdbname].* TO [ocuser]@localhost IDENTIFIED BY '[ocuserpw]';
Salga del cliente de la base de datos:
quit
15. Configurar cliente ownCloud
Navegue con un navegador web a su instalación ownCloud, p. http://minombredehost/nube propia . Se le presentarán campos donde puede crear una cuenta de administrador ownCloud e ingresar los valores de configuración de la base de datos.
Nombre de usuario y Contraseña son valores para el usuario que administrará la instalación; configúralos como quieras.
Usuario de base de datos , Contraseña de la base de datos y Nombre de la base de datos debe ajustarse al [ocuser] , [ouserpw] y [ocdbname] valores que creó en el paso anterior.
Haz clic en Finalizar configuración.
¡Felicidades! Está listo para comenzar a usar ownCloud.
Opcional:Usar SSL
Es recomendable cifrar el tráfico de red que entrará y saldrá de ownCloud. Estos son algunos pasos para poner en funcionamiento HTTPS con su instalación.
1. Habilitar SSL en Apache2
a2enmod ssl
a2ensite default-ssl
2. Agregue la configuración SSL Virtualhost a owncloud.conf
Apache2 viene con una configuración de sitio SSL predeterminada, ubicada en /etc/apache2/sites-disponible/default-ssl.conf . Copie el contenido de este archivo y péguelo en la parte superior de owncloud.conf . Dentro del
Agregue un Nombre de servidor línea con su nombre de host como valor, por ejemplo:
ServerName myhostname
Edite el DocumentRoot línea para reflejar el directorio principal de la instalación owncloud, por ejemplo:
DocumentRoot /var/www/
3. Genere un nuevo certificado/par de claves, si es necesario
El
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
El archivo de certificado SSL y SSLCertificateKeyFile los valores apuntan a archivos que ya deberían existir en su sistema, instalados como parte del openssl predeterminado y certificado SSL paquetes Sin embargo, es posible que deba volver a generar estos archivos en determinadas circunstancias, si realiza cambios en la configuración en /etc/hosts , por ejemplo.
Si necesita regenerar estos archivos, use el comando:
make-ssl-cert generate-default-snakeoil --force-overwrite
Para obtener más información y para solucionar errores de certificado, consulte las notas en /usr/share/doc/apache2/README.Debian.gz .
4. Recargar la configuración de Apache2
service apache2 reload
Ahora debería poder acceder a su instalación ownCloud usando un https:// URL Tenga en cuenta que recibirá una advertencia en su navegador web porque su certificado está autofirmado. Deberá agregar manualmente su sitio como una excepción antes de establecer la conexión segura.