¿Cómo Instalar NextCloud en tu Raspberry Pi? (2 maneras)


Si quieres mantener tus datos seguros, y no alojados por otra entidad, NextCloud es una gran aplicación que debes probar.
En este post te mostraré qué es NextCloud y cómo instalarlo en tu Raspberry Pi.

Hay dos métodos para instalar NextCloud en una Raspberry Pi :
– Instalando NextCloudPi, una imagen personalizada con todo listo para usar.
– O instalando los archivos de NextCloud en un Raspberry Pi OS existente.

Después de una breve introducción sobre las características de NextCloud, te daré la guía de instalación paso a paso para ambas versiones. Así podrás seguir la que mejor se adapte a tus necesidades. Por último, te daré algunos consejos para empezar con NextCloud.

Volveré a hablar de esto más adelante, pero para almacenar tus archivos, te recomiendo que los guardes en una unidad USB en lugar de en una tarjeta SD. Personalmente, me gusta una llave USB grande porque es muy conveniente para la Raspberry Pi (mira este en Amazon), pero cualquier disco duro externo barato será mejor que una tarjeta SD (Estoy usando este para mis copias de seguridad).

Introducción a la nube

¿Qué es NextCloud?

Probablemente conozcas Dropbox o Google Drive.
Básicamente, el objetivo de NextCloud es ofrecer lo mismo, pero manteniendo el control de los datos en tu propio servidor.
Y es gratis.

Puede que también conozcas OwnCloud, es lo mismo (incluso es el mismo desarrollador).
Puedes instalar NextCloud en muchas plataformas, incluyendo Linux o docker y, por tanto, en la Raspberry Pi.

Características de NextCloud

NextCloud ofrece muchas funciones nada más instalarlo:

  • Características principales:
    • Alojamiento de archivos
    • Gestor de imágenes
    • Contactos
    • Calendario
    • Notas
    • Gestor de tareas
    • Lector de noticias
  • Clientes de escritorio y móviles para la sincronización automática
  • Es posible cierta integración (calendario, correo, LDAP…)
  • Gestión de usuarios y derechos
  • HTTPS y cifrado del lado del servidor

Con esto ya es una buena herramienta, pero eso no es todo 🙂
Puedes descargar e instalar extensiones (o “Apps”) para añadir nuevas funciones de la comunidad.

Por ejemplo, estoy utilizando la extensión “Passwords” para almacenar mis contraseñas de forma segura en mi red.
Para comprobar las aplicaciones disponibles antes de instalar NextCloud, puedes consultar la tienda de aplicaciones de NextCloud aquí.

Tecnología en la nube

Como muchas de las aplicaciones de código abierto que existen, el código de NextCloud está disponible en GitHub.
Utilizan lenguajes web como PHP y JavaScript, por lo que es fácil de instalar en cualquier dispositivo.

En el sitio web oficial, también puedes encontrar otras versiones para necesidades específicas: máquina virtual, imagen Docker o paquete Snap.

Para Raspberry Pi, utilizaremos el código fuente y la imagen NextCloudPi, una imagen personalizada de Raspberry Pi OS para simplificar la instalación de NextCloud.
Docker también puede ser otra solución (si quieres probar: docker pull NextCloud), no lo he probado.

¡Hola!
Inscríbete para recibir mis últimos tutoriales cada semana.

Hardware recomendado para un servidor NextCloud

  • Una Raspberry Pi 4: He probado con modelos más antiguos, a menudo es demasiado lento para navegar por la aplicación web y sincronizar archivos (al menos con mis archivos). Tal vez una Raspberry Pi 3B+ puede ser suficiente si no tienes demasiados archivos pequeños, pero en mi experiencia fue demasiado lento.
  • Una gran tarjeta SD: Yo recomendaría al menos 120 GB. No querrás volver a empezar desde cero por no haber calculado el tamaño total del proyecto al principio. Otra opción es conectar una unidad USB y utilizarla como almacenamiento principal. Puede que incluso sea más barato (consulta el precio aquí).
  • Una buena solución de respaldo: Hablaré de esto más adelante, pero necesitarás un plan de seguridad. Almacenar todo en una Raspberry Pi sin una copia de seguridad no es una buena idea. Estoy usando un NAS enlazado, pero si tienes un presupuesto menor, puedes usar otra unidad USB para esto. Incluso una vieja unidad SATA en una caja externa como esta estaría bien.

Instalación en la nube

La forma más fácil: Instalar NextCloudPi

¿Qué es NextCloudPi?

NextCloudPi es una imagen personalizada de Raspberry Pi OS Lite, con NextCloud y todas las dependencias preinstaladas en él.
Así es más fácil empezar con NextCloudPi.

Puede consultar el sitio web de NextCloudPi aquí para obtener más información.
Es el método perfecto si quieres probar NextCloud o utilizar una Raspberry Pi principalmente para esto.

Siempre puedes instalar otras cosas después, ya que es una distribución clásica de Raspberry Pi OS Lite.

Descargar NextCloudPi

Lo primero que hay que hacer es descargar la última versión de NextCloudPi para la instalación :

  • Descarga la versión para Raspberry Pi de NextCloudPi desde el servidor GitHub
    Hay dos versiones disponibles: RPi o RPi_BerryBoot
    Te mostraré la primera
  • Haz clic en la versión RPi y descarga el archivo de imagen en su ordenador (ex: NextCloudPi_RPi_06-10-22.tar.bz2)
  • Extrae la imagen del archivo
    Depende de tu sistema operativo, pero probablemente sea algo así como hacer clic con el botón derecho del ratón > Extraer aquí
    En Windows, necesitarás WinRAR o 7zip para extraerlo

Flashear NextCloudPi en la tarjeta SD

Ahora que has descargado la imagen, podemos flashearla en una nueva tarjeta SD:

  • Si es necesario, descarga e instala Etcher
    Etcher es una herramienta gratuita para flashear fácilmente la tarjeta SD con cualquier imagen de Linux
  • Inicia Etcher, aparece una ventana como esta
  • Haz clic en el primer botón y busca la ubicación de la imagen
  • Inserta la tarjeta SD en tu ordenador y selecciónala en el segundo punto (lo hace automáticamente Etcher generalmente)
  • A continuación, haz clic en “Flash!”, para iniciar la creación de la tarjeta SD
  • Después de unos minutos, tu tarjeta SD estará lista para ser utilizada

Primer arranque con NextCloudPi

Inserta la tarjeta SD en la Raspberry Pi y ponla en marcha.
Después de unos segundos, aparecerá el aviso de inicio de sesión:

Utilice el nombre de usuario y la contraseña por defecto de la Raspberry Pi:

  • Inicio de sesión: pi
  • Contraseña: raspberry

Luego hay que configurar la red:

  • Ethernet: funciona directamente si tienes un servidor DHCP
  • Wi-Fi: Es necesario utilizar raspi-config para configurarlo
    sudo raspi-config
    Para ello entra en Network options > Wi-Fi y seguir el asistente de configuración

Por último, recomiendo iniciar el servicio SSH y utilizarlo para terminar la instalación:

  • Inicia el servicio SSH
    sudo service ssh start
  • Encontrar la dirección IP de la Raspberry Pi
    ifconfig
  • Conectarse vía SSH
    En Windows, tendrás que instalar un software como Putty
    En Linux/macOS está disponible directamente: ssh pi@IP
    El nombre de usuario y la contraseña son los mismos que los anteriores

Actualizar el sistema

A partir de ahí, recomiendo actualizar el sistema.
No es obligatorio si estás haciendo una prueba rápida de NextCloudPi, pero como es una imagen personalizada, puede ser un poco anticuada.

Para ello, utiliza los siguientes comandos:
sudo apt update
sudo apt upgrade
sudo reboot

Ahora estás listo para pasar a la configuración de NextCloud.

Configurar NextCloud

Interfaz web de CloudPi

NextCloudPi está disponible a través de una interfaz web que puedes utilizar para configurarlo.
Te mostraré cómo habilitarlo, pero puedes usar la herramienta de configuración de texto directamente si quieres.

  • Ejecuta la NextCloudPi configuration tool
    sudo ncp-config
  • Haz clic en “CONFIG”
  • Desplázate hasta “Enable WebUI” y pulsa enter
  • Confirma escribiendo “yes” en la ventana de confirmación
  • Sal de la herramienta de configuración

Apache se reinicia y la interfaz web está ahora disponible en: https://<RASPBERRY_IP>:4443

Esta es sólo la página de configuración de NextCloudPi, no la página de NextCloud.

Activar NextCloud

  • Abre la URL https://IP:4443 en su navegador
  • Probablemente, obtendras un error de certificado HTTPS, ignóralo por ahora
    Siempre puedes instalar un certificado de Let’s Encrypt más tarde
  • Aparece un formulario de acceso
    Introduce las credenciales por defecto:
    • Login: ncp
    • Password: ownyourbits
  • Ahora verás la página de activación, tiene este aspecto:
  • Ambos nombres de usuario son “ncp”, pero es necesario anotar las dos contraseñas para los siguientes pasos
    La primera es la contraseña de NextCloudPi, para configurar NextCloudPi
    La segunda es la contraseña de NextCloud, para acceder a NextCloud
  • A continuación, haz clic en “Activate”
  • Comienza la activación de NextCloud
    En mi primera prueba tardé 15 min, y la segunda fue instantánea
    Así que espera si es necesario, aunque probablemente fue porque tuve un problema en mi primera instalación
  • Por último, recibiras el mensaje de éxito, NextCloud está listo para ser utilizado

Primer acceso a la nube

Si no recuerdo mal, seredirige a la página de configuración de ncp
Pero no lo necesitas por ahora.
Puedes acceder a NextCloud directamente en https://<RASPBERRY_IP>

Formulario de acceso a NextCloud

Introduce el nombre de usuario (ncp) y la segunda contraseña que anotaste en los pasos anteriores.
A continuación, haz clic en Log in.

La página principal de NextCloud aparece en tu navegador:

Página de inicio por defecto de NextCloud

¡Felicidades! NextCloud está listo para ser utilizado
Volveré a hablar del uso de NextCloud en la última parte de esta guía

Actualizar NextCloudPi

Una última cosa que puedes hacer antes de empezar a usar NextCloud es actualizar NextCloudPi.
En la pantalla de inicio de sesión teníamos una advertencia que decía que NextCloudPi estaba desactualizado.
Ahora que NextCloud está configurado, puedes hacer esta actualización (yo no pude hacerlo antes).

La actualización es fácil, sólo hay que ejecutarla:
sudo ncp-update

Si estás contento con este método de instalación puedes saltarte la siguiente parte y leer la última sobre el uso de NextCloud.

Alternativa: instalar NextCloud en Raspberry Pi OS

¿Por qué instalarlo en Raspberry Pi OS?

Este segundo método es perfecto si quieres añadir NextCloud a tu actual instalación de Raspberry Pi, sin perder nada de lo que ya tienes
De esta manera, también puedes mantener el control sobre todo (por ejemplo, las versiones de Apache y PHP, la versión del Raspberry Pi OS, la versión de NextCloud).

Además, si ya tienes Raspberry Pi OS y Apache/PHP, puedes probar rápidamente NextCloud extrayendo los archivos en tu carpeta /var/www, y eliminarlo inmediatamente si NextCloud no es para ti.

Instalar Raspberry Pi OS

Si todavía no tienes instalado Raspberry Pi OS empieza aquí .
Sigue esta guía de instalación del Raspberry Pi OS (en inglés) si necesitas ayuda para hacerlo.

Pero básicamente, es necesario:

  • Descargar Raspberry Pi OS (Lite está bien)
  • Flashear la tarjeta SD con Etcher
  • Insertar la tarjeta SD en la Raspberry Pi e iniciarla
  • Hacer la configuración de la red
  • Actualizar el sistema
  • Habilitar SSH

Entonces estaras listo para pasar al siguiente paso.

Requisitos previos de NextCloud

Antes de instalar NextCloud, hay algunos requisitos previos que debes tener en tu sistema.
NextCloud necesita un servidor web con Apache, MySQL (MariaDB) y PHP
Y también necesita algunos módulos PHP.

Utiliza los siguientes comandos para instalar todo lo necesario
sudo apt install apache2 mariadb-server libapache2-mod-php
sudo apt install php-gd php-json php-mysql php-curl php-mbstring php-intl php-imagick php-xml php-zip

Espera unos minutos a que termine la instalación y ya estaras listo para instalar NextCloud.

Aviso: En el momento en que escribo estas líneas, la última versión de NextCloud necesita PHP 7.1, y Raspberry Pi OS sólo tiene PHP 7.0 disponible en el repositorio.
He optado por tomar una versión más antigua de NextCloud, compatible con PHP 7.0.
Pero también puedes intentar instalar PHP 7.1 desde la fuentes si quieres absolutamente la última versión

Instalación de NextCloud

Descargar NextCloud

Ahora tienes que descargar y extraer el archivo de NextCloud:

  • Ve a la carpeta web de Apache
    cd /var/www/html
  • Obten el enlace de NextCloud aquí
    Recuerda comprobar los requisitos de PHP para asegurarte de que la instalación actual es compatible con la versión que tiene
  • En mi caso, he descargado la versión 15.0.8
    sudo wget https://download.nextcloud.com/server/releases/nextcloud-15.0.8.zip
  • Extrae el archivo con unzip
    sudo unzip nextcloud-15.0.8.zip
    Te lo muestro con el archivo zip, ya que es más fácil de extraer, pero también podrías obtener el archivo .tar.bz2 del sitio web de NextCloud
  • Como usamos la raíz para extraer los archivos, necesitamos cambiar los permisos de la carpeta para permitir que Apache acceda a ella:
    sudo chmod 750 nextcloud -R
    sudo chown www-data:www-data nextcloud -R

NextCloud está casi listo para ser utilizado, pero primero tenemos que crear una base de datos MySQL para almacenar sus datos.

Configuración de MySQL

Después de la instalación del servidor MariaDB, se creará un usuario root que solamente se puede utilizar desde la línea de comandos.
Para NextCloud, recomiendo crear un nuevo usuario y una base de datos dedicada:

  • Conéctte a MySQL con el usuario root
    sudo mysql
  • Crea el nuevo usuario
    CREATE USER 'nextcloud' IDENTIFIED BY 'password';
    Sustituye la “password” por una contraseña fuerte
  • Crea la nueva base de datos
    CREATE DATABASE nextcloud;
  • Da todos los permisos al nuevo usuario en esta base de datos
    GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@localhost IDENTIFIED BY ‘password’;
    Lo mismo aquí, solo reemplaza “password” con la contraseña anterior
  • Guarda y sal
    FLUSH PRIVILEGES;
    quit

La base de datos está lista para finalizar la instalación de NextCloud.

Más detalles sobre cómo configurar un servidor MySQL (en inglés) en este otro artículo.

Configuración de NextCloud

Ahora puedes acceder a la página de configuración de NextCloud y terminar la configuración:

  • Abre la siguiente URL en tu navegador: https://IP/nextcloud
    Sustituye la “IP” por la dirección IP de la Raspberry Pi
  • Aparece un formulario como este (primera parte):

    Elige un nombre de usuario y una contraseña para NextCloud
  • La segunda parte es así:

    Introduce las credenciales que acabamos de crear en MySQL
    – User: nextcloud
    – Password: “password” (su contraseña)
    – Database: nextcloud
    – Host: localhost
  • A continuación, haz clic en “Finish setup” y espera unos minutos

Accederás directamente a la página de inicio de NextCloud.
Se parece a la de NextCloudPi, pero hay menos aplicaciones habilitadas por defecto.

En el menú principal sólo aparecen estos iconos:

Todas las demás aplicaciones se pueden activar desde la tienda de aplicaciones de NextCloud (Calendario, Contactos, …).

Uso de NextCloud

En esta parte, te daré unos pocos más detalles sobre la interfaz de NextCloud.
Así podrás empezar a utilizarlo rápidamente y descubrirlo todo en pocos minutos.

Interfaz web

La interfaz principal es intuitiva, y probablemente encontrará lo que busca sin más explicaciones.

Como ya he dicho, NextCloud utiliza aplicaciones para proporcionar funciones, como en el teléfono.
En la barra superior, encontrarás el menú principal, para cambiar a otra App.
Cada aplicación tiene un diseño personalizado, con o sin menú izquierdo para acceder a más subsecciones.

En las siguientes secciones, presentaré los tres submenús principales del panel de administración.
Para acceder a él, haz clic en el icono situado en el extremo derecho de la barra superior (tu avatar, probablemente la primera letra del nombre de usuario por ahora).

En el menú, tendrás principalmente 3 opciones:

  • Settings: para configurar todo en NextCloud, desde tu perfil personal hasta la configuración del servidor
  • Apps: para ver qué aplicaciones están ya instaladas, eliminar algunas o instalar nuevas funciones
  • Users: NextCloud puede gestionar múltiples usuarios para tener un almacenamiento personal para todos los miembros de la familia o empleados

Ahora presentaré cada una de estas tres partes.

Settings

En el submenú “Settings”, puede configurar muchas cosas, con dos categorías:

  • Personal configuration: perfil, seguridad (autenticación de dos factores, por ejemplo), temas, …
  • Administration: con una cuenta de administrador, también puedes configurar cosas para todos los usuarios como el servidor de correo electrónico para las notificaciones, el cifrado, la apariencia (logotipo de la empresa, por ejemplo), etc …

Para cada subcategoría, tienes una interfaz intuitiva con, a menudo, una breve explicación sobre la página, así que no creo que necesites más de mí.

Si tienes alguna duda sobre la configuración, puedes consultar el manual del administrador de NextCloud, o hacer tu pregunta en los comentarios.

Apps

El segundo menú es más interesante, con el catálogo de aplicaciones.
En la sección “Your apps”, puedes comprobar en unos pocos clics qué aplicaciones estás utilizando y cuáles están instaladas pero desactivadas.

A continuación, las siguientes entradas sirven para buscar e instalar nuevas aplicaciones, con un submenú por categoría: Personalización, Archivos, Juegos, Integración, …

Para cada aplicación, puedes comprobar directamente si es una aplicación oficial, e instalarla fácilmente haciendo clic en “Download and enable”.
En general, la nueva aplicación aparecerá directamente en la barra superior de NextCloud.

Users

Por último, también puedes gestionar usuarios y grupos en NextCloud.
En el menú “Users”, puedes crear tantos usuarios y grupos como necesites, y marcarlo como administrador o no.

Los grupos son útiles en algunas aplicaciones.
Por ejemplo, puedes crear un grupo “IT” y compartir una carpeta con cualquier persona del grupo desde la aplicación “Files”.

También es posible importar usuarios desde un LDAP u otras fuentes como los usuarios de Linux.
Tendrás que instalar la aplicación correspondiente para utilizar estas funciones.

Aplicaciones de escritorio

La interfaz web no es la única forma de utilizar NextCloud.

Desde el sitio web oficial, puedes descargar NextCloud para escritorio.
Está disponible para Windows, macOS y Linux.

El objetivo de esta aplicación de escritorio es sincronizar tus archivos entre tu ordenador y el servidor de NextCloud (como con Dropbox, por ejemplo).

Durante la instalación, introduce la dirección del servidor (algo así como http://IP/nextcloud, o http://IP para NextcloudPi).
A continuación, inicie sesión en su cuenta y conceda acceso a la aplicación.

El último paso es configurar cómo la aplicación maneja la sincronización:

La primera sincronización se iniciará y mantendrá un compañero de NextCloud en la bandeja del sistema para comprobar el estado de la sincronización.
En cuanto añades un nuevo archivo en tu carpeta, NextCloud sincroniza los archivos al instante.

Aplicaciones para Android e iOS

Lo mismo está disponible en tu teléfono (Android e iOS).
Además, ofrece una interfaz amigable con el móvil para utilizar NextCloud.
Aquí está el vídeo de demostración proporcionado por NextCloud para Android:

Acceso remoto

Como se supone que es un servidor en la nube, probablemente querrás desviar un puerto en tu router de Internet para acceder al servidor NextCloud.

Es posible con su nombre de dominio o con un servicio como NoIP si tienes una dirección IP dinámica (tutorial detallado aquí, en inglés).
En este caso, recomiendo encarecidamente instalar un certificado SSL (Let’s Encrypt) y tal vez utilizar una aplicación de autenticación de dos factores para bloquear los ataques de fuerza bruta.

Encontrará la documentación sobre la configuración de SSL y Apache para hacer esto en el Instalación en Linux (en inglés).

Almacenamiento adicional

El principal interés de NextCloud es tener un espacio de almacenamiento ilimitado, ya que tú eres el anfitrión.
Pero en Raspberry Pi estás limitado por el tamaño de la tarjeta SD.
Aunque puedas conseguir fácilmente más espacio que con los proveedores gratuitos, a menudo no es suficiente para competir con sus ofertas premium.

Si quieres almacenar archivos grandes, es posible añadir un almacenamiento externo a tu Raspberry Pi, un disco USB (Me encantan las mini llaves USB como esta de Amazon para hacer esto) por ejemplo, o incluso un almacenamiento remoto (Dropbox, Google Drive, Amazon, otro servidor local).
Aquí encontrará toda la documentación aquí para configurar esto en su servidor.

Copias de seguridad

En cuanto a cualquier idea de almacenamiento en Raspberry Pi, recuerda que la tarjeta SD de Raspberry Pi no es el método de almacenamiento más seguro.
Si tu tarjeta SD se estropea, puedes perder todo lo que hay en NextCloud.
Así que recuerda hacer copias de seguridad periódicas en otro almacenamiento (otra Pi, un NAS, un disco USB, …).

Los archivos se encuentran en la carpeta NextCloud, subcarpeta de datos.
Por ejemplo, para el usuario administrador, probablemente estén en /var/www/html/nextcloud/data/admin/files/

Así que haz una copia de seguridad de /var/www/html/nextcloud/data y estarás bien.
También puedes hacer una copia de seguridad completa de la carpeta de NextCloud y de la base de datos, para tener la oportunidad de reinstalarla tal y como está ahora.
Consulta este tutorial para obtener más información sobre cómo hacer una copia de seguridad de una Raspberry Pi de forma eficiente.

Video

Conclusión

Eso es todo, creo que hemos visto un buen resumen de lo que NextCloud podría hacer en tu Raspberry Pi, y cómo instalarlo con dos métodos diferentes.

Estoy bastante impresionado por el rendimiento del servidor.
Tengo malos recuerdos de NextCloud en un servidor físico, con un acceso lento y una media de carga alta.
Pero por ahora, parece que funciona absolutamente genial en una Raspberry Pi, sin carga y sin lag, ¡una gran noticia!

Seguramente intentaré tenerlo instalado en una de mis Raspberry Pi y ver cómo funciona, con un uso más intenso.

Patrick FROMAGET

Hola, soy Patrick. Soy administrador de sistemas Linux, y me apasiona la Raspberry Pi y todos los proyectos sobre este tema. He creado este sitio para compartir con ustedes lo que he aprendido al respecto.

Últimos artículos