Se llevará a cabo en un servidor LAMP (Linux, Apache, MySQL/MariaDB, PHP). La distribución GNU/Linux puede ser cualquiera Ubuntu, Trisquel, Manjaro, etc. Se ha realizado la configuración con Nextcloud 19.0.0
Configuración del cortafuegos
Utilizando el cortafuegos sencillo ufw, permitiremos el tráfico SSH (puerto 22) y web (puerto 80):
| |
Instalación de de Apache
Instalación del servidor Apache:
| |
Instalación de php
Instalación de php para poder servir el contenido dinámico:
- Si se está utilizando una distribución basada en debian, es necesario añadir un repositorio para acceder a la versión 7.3. Por defecto, se encuentra disponible la versión 7.
| |
- Instalación de la versión 7.3 y de los módulos requeridos:
| |
- Instalación del módulo para poder conectarse a la base de datos:
| |
Instalación de la base de datos
| |
Ejecución de un archivo de seguridad de MySql
Este script se utiliza para utilizar el servidor MariaDB en producción:
| |
Como es la primera vez que se ejecuta, introducir un intro y configurar una nueva contraseña de root. Además, confirmar con Y las siguientes opciones:
- Eliminar usuario anónimo
- Deshabilitar conectarse como root remotamente
- Eliminar base de datos de prueba
- Recargar tabla de priviligios
Configuración de base de datos
Entrar en el monitor de MariaDB:
| |
Creación de una nueva base de datos llamada nextcloud_db (aunque se puede nombrar de otra manera). Creación de un usuario llamado nc_admin@localhost con una contraseña segura (cambiar password por una de verdad). Para evitar errores se utiliza la regla GRANT ALL ON, se actualizan los privilegios, y se sale de la base de datos:
| |
Descarga de Nextcloud
Se descarga el archivo y se descomprime en la carpeta /var/www/:
| |
Configuración de apache
Se crea un archivo de configuración:
| |
Se copia y se pega en su interior la configuración de apache (sacada de la documentación oficial):
| |
Se activa la nueva configuración:
| |
Accediendo a http://IP_MÁQUINA/nextcloud se podrá visibilizar un error interno del servidor, esto se debe a la falta de permisos del usuario web en la carpeta nextcloud.
Se añaden los siguientes permisos:
- El usuario por defecto
www-dataes cualquier usuario que se conecte a través de la web.
| |
Volvemos a acceder a http://IP_MÁQUINA/nextcloud y rellenamos lo siguiente:
- Unas credenciales para el usuario administrador
- Añadir el nombre del usuario de la base de datos: nc_admin
- Su respectiva contraseña definida anteriormente
- Nombre de la base de datos: nextcloud_db
Terminamos la instalación.
Configuración adicional recomendable
- Cambiar el límite de memoria (memory_limit) php a 512M en el archivo siguiente:
| |
- Descargar módulos php recomendados:
| |
Recargar el servicio apache2 para hacer efectivos los cambios:
| |