Nextcloud - Monta tu propia nube

oldFox-64

Creo que somos unos cuantos por aquí que usamos Nextcloud pero no he visto ningún hilo.

Me gustaría que compartiéramos los setups que nos hemos montado, recomendar apps, dar consejos y consultar dudas.

Qué es?

Se trata de un software libre y open source que te permite tener tu propia nube, es decir, las mismas funcionalidades que las que puede ofrecerte Google por ejemplo, como alojamiento y disponibilidad online de tu carrete de fotos del móvil, tus contactos, calendario, documentos, etc. Pero con la principal diferencia de que la infraestructura (el servidor) te la montas tú y tienes la soberanía total de tus datos.

Es muy flexible, permite ser instalado en casi cualquier hardware, crear múltiples usuarios (para tus familiares por ejemplo) y tiene una arquitectura modular, ofreciendo una "app store" en la que la comunidad contribuye, por lo que la personalización y formas de uso es casi infinita.

El equipo principal detrás del software se sostiene ofreciendo servicios premium y para empresas.

NextCloudPi

En mi caso he usado una simple RaspberryPi 4 con una microSD de 64gb y conectada a internet.


(éste mismo screenshot está siendo alojado en la raspberry :D)

Usé ésto https://ownyourbits.com/nextcloudpi/ que es un wrapper del software original que facilita la instalación y configuración en una raspberry.

Más adelante, cuando me vaya quedando con menos espacio, contemplaré usar un NAS.
Cosas que me faltan:

  • Planear como hacer backups.
  • Cifrar la SD.

Instalación

Básicamente seguid las guías de https://docs.nextcloudpi.com/en/

Importante cambiar el password del usuario pi o crear uno nuevo y que sea parte del grupo sudo.
Y setear una ip fija a la rpi. En el archivo /etc/dhcpcd.conf:

# Example static IP configuration:
interface eth0
static ip_address=192.168.1.10/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1

Teneis 3 metodos a elegir para instalar

  • Imagen para grabar en la microSD (Debian + nextcloud). Aconsejable solo para muy novatos.
  • Imagen de docker
  • Curl installer: curl -sSL https://raw.githubusercontent.com/nextcloud/nextcloudpi/master/install.sh | sudo bash

En cualquiera de los tres casos, una vez finalizada la instalación, tendréis el nextcloud levantado y corriendo en apache2.

Para acceder, en el navegador id a la ip de vuestra rpi. El panel de control es lo mismo pero en el puerto 4443.

Para que podamos acceder a la rasppberry desde el exterior a traves de internet, será necesario:

  1. Un dominio (tambien los teneis gratis, por ejemplo en https://freedns.afraid.org/)
  2. Proporcionar un certificado usando Let's Encrypt.

En los dos casos es configurable facilmente desde el panel de control de nextcloud.

Un apunte importante, es posible que el Let's Encrypt os falle (no se si al primer setup pero seguramente sí posteriormente cuando intenteis renovar).
Se trata de un bug del certbot en la version 0.31 (y en el repo oficial no hay versión mas nueva por el momento). Asi que para arreglarlo, modificad el archivo /etc/letsencrypt/renewal/<vuestro_dominio>.conf añadiendo un parametro que falta:

[[webroot_map]]
vuestro_dominio = /var/www/nextcloud

Recomendaciones de seguridad

  1. Vamos a habilitar el firewal ufw y configurarlo para que deniege por defecto cualquier conexión entrante y habilitar solo los puertos que necesitamos.

    $ sudo apt install ufw
    $ sudo su
    # ufw default deny incoming
    # ufw default allow outgoing
    # ufw allow 22 comment 'allow SSH'
    # ufw allow 80 comment 'allow http'
    # ufw allow 443 comment 'allow https'
    # ufw allow 4443 comment 'allow nextcloudpi control panel'
    # ufw enable
    # systemctl enable ufw
    # ufw status
    # exit

    En vuestro router haced port-forwarding de los mismos puertos, a excepción del 22.

  2. (Opcional) Configuramos SSH para que la rpi solo sea accessible por nuestro ordenador
    En Windows: https://www.tecmint.com/ssh-passwordless-login-with-putty/
    En Mac/Linux:

    • Comprobar si ya tenemos generados el par de llaves pública/privada:
      ls -la ~/.ssh/*.pub
      Sino, las generamos:
      ssh-keygen -t rsa -b 4096
    • Y copiamos la llave pública a la rpi
      ssh-copy-id pi@<ip de la rpi>

Si intentais loguear ahora por ssh, lo hareis automaticamente.
En el archivo /etc/ssh/sshd_config buscad y setead a 'no' las siguientes propiedades:

ChallengeResponseAuthentication = no
PasswordAuthentication = no

Y aplicamos los cambios

sudo systemctl restart sshd

De esta forma nos aseguramos de que solo el usuario pi (o el que hayais configurado) pueda acceder, denegando el acceso a otros usuarios.

4
Acelguita-

No la conocía, me ha parecido una chulada. A favoritos para futuros proyectos!

xuse92

Yo uso OwnCloud me suena que se rompió el proyecto y salieron los 2

PeandPe

La verdad es que me gustaría mucho poder montarme algo así, pero todo lo que es Raspberry y tal, no tengo conocimiento ninguno.

¿Alguien podría enlazar tutoriales y tal para dummies?

2 respuestas
HeXaN

Se queda corta de rendimiento. Probad Seafile.

1 respuesta
oldFox-64

#5 es verdad que cuando abro la página de fotos empieza a lagear. Pero no se si se debe a la raspberry o a nextcloud.

#4 no sabría recomendarte guias de raspberry ya que yo ya sabia manejar Linux (que es el SO que corre la rpi) por lo que no he tenido muchas dificultades. Pero el proceso de instalación del nextcloud es bastante sencillo. Tienes la opción de grabar una imagen directamente en la microsd, la introduces en la raspberry y ya lo tienes casi todo configurado y corriendo. Hay instrucciones paso a paso faciles de seguir. https://docs.nextcloudpi.com/en/
Lo único con lo que hay que tener cuidado es al querer exponer en internet ya que hay que saber lo que se hace.

1 respuesta
covaga

#6 yo creo que es mitad y mitad. También revienta fácilmente cuando tienes miles de archivos, mas aún si son pequeños.
Yo antes utilizaba https://syncthing.net/ y realmente no tenia muchos problemas.

#4 toda esa configuración la puedes hacer desde la interfaz de nextcloud y solo hay que seguir los pasos que te indican. En google hay muchísimos tutoriales en español.

Usuarios habituales

  • covaga
  • oldFox-64
  • HeXaN
  • PeandPe
  • xuse92
  • Acelguita-