One place for hosting & domains

      Cómo instalar y configurar Nextcloud en Ubuntu 18.04


      Introducción

      Nextcloud, una bifurcación de ownCloud, es un servidor para el intercambio de archivos que le permite almacenar su contenido personal, como documentos e imágenes, en una ubicación centralizada, similar a Dropbox. La diferencia con Nextcloud es que todas sus funciones son de código abierto. Además, le devuelve el control y la seguridad de sus datos sensibles, eliminando así el uso de un servicio externo de alojamiento en la nube.

      En este tutorial, instalaremos y configuraremos la instancia de Nextcloud en un servidor Ubuntu 18.04.

      Requisitos previos

      Para completar los pasos de esta guía, necesitará lo siguiente:

      • Un usuario sudo y un firewall configurado en su servidor: puede crear un usuario con privilegios sudo y configurar un firewall básico siguiendo la Guía de configuración inicial del servidor Ubuntu 18.04.
      • (Opcional) Un nombre de dominio que apunte a su servidor: protegeremos las conexiones a la instalación de Nextcloud con TLS/SSL. Nextcloud puede configurar y administrar un certificado SSL gratuito y de confianza de Let’s Encrypt si su servidor tiene un nombre de dominio. Si no es así, Nextcloud puede configurar un certificado SSL autofirmado que puede cifrar conexiones, pero no será de confianza por defecto en los navegadores web. Si está usando DigitalOcean, puede seguir nuestra guía sobre cómo configurar un nombre de dominio para su servidor si va a utilizar Let’s Encrypt.

      Una vez que haya completado los pasos anteriores, continúe para aprender cómo configurar Nextcloud en su servidor.

      Paso 1: instalación de Nextcloud

      Instalaremos Nextcloud usando el sistema de paquetes snappy. Este sistema de creación de paquetes, disponible en Ubuntu 18.04 por defecto, permite a las organizaciones enviar software, junto con todas sus dependencias y configuraciones asociadas, en una unidad autocontenida con actualizaciones automáticas. Esto significa que, en vez de instalar y configurar un servidor web y de base de datos y, luego, configurar la aplicación Nextcloud para que se ejecute en él, podemos instalar el paquete snap, que gestiona los sistemas subyacentes automáticamente.

      Para descargar el paquete snap de Nextcloud e instalarlo en el sistema, escriba lo siguiente:

      • sudo snap install nextcloud

      El paquete de Nextcloud se descargará e instalará en su servidor. Puede confirmar que el proceso de instalación se realizó correctamente al enumerar los cambios asociados con el paquete snap:

      Output

      ID Status Spawn Ready Summary 2 Done today at 16:12 UTC today at 16:12 UTC Install "nextcloud" snap

      El estado y el resumen indican que la instalación se completó sin problemas.

      Obtener información adicional sobre el snap de Nextcloud

      Si desea obtener más información sobre el snap de Nextcloud, hay algunos comandos que pueden ser útiles.

      El comando snap info puede mostrarle la descripción, los comandos de administración de Nextcloud disponibles, así como la versión instalada y el canal de snap al que se realiza el seguimiento:

      Los snaps pueden definir las interfaces con las que son compatibles, que constan de una ranura y un conector que, al combinarse, permiten que los snaps accedan a ciertas capacidades o niveles de acceso. Por ejemplo, los snaps que deben actuar como cliente de red deben tener la interfaz network. Para ver qué “interfaces” de snap define este snap, escriba:

      • snap interfaces nextcloud

      Output

      Slot Plug :network nextcloud :network-bind nextcloud - nextcloud:removable-media

      Para obtener información sobre todos los servicios y aplicaciones específicos que proporciona este snap, puede consultar el archivo de definición del snap escribiendo lo siguiente:

      • cat /snap/nextcloud/current/meta/snap.yaml

      Esto le permitirá ver los componentes individuales incluidos en el snap, si necesita ayuda con la depuración.

      Configurar una cuenta administrativa

      Existen varias formas de configurar el snap de Nextcloud. En esta guía, en vez de crear un usuario administrativo a través de la interfaz web, crearemos uno en la línea de comandos para evitar una pequeña ventana en la que la página de registro del administrador sería accesible para cualquiera que visite la dirección IP o el nombre de dominio de su servidor.

      Para configurar Nextcloud con una nueva cuenta de administrador, utilice el comando nextcloud.manual-install. Debe especificar un nombre de usuario y una contraseña como argumentos:

      • sudo nextcloud.manual-install sammy password

      El siguiente mensaje indica que Nextcloud se configuró correctamente:

      Output

      Nextcloud is not installed - only a limited number of commands are available Nextcloud was successfully installed

      Ahora que Nextcloud está instalada, deberemos ajustar los dominios de confianza para que responda a las solicitudes usando el nombre de dominio o la dirección IP del servidor.

      Ajustar los dominios de confianza

      Cuando se instala desde la línea de comandos, Nextcloud restringe los nombres de host a los que la instancia responderá. Por defecto, el servicio solo responde a las solicitudes realizadas al nombre de host “localhost”. Accederemos a Nextcloud a través del nombre de dominio o dirección IP del servidor, de modo que tendremos que configurar este ajuste para que acepte estos tipos de solicitudes.

      Puede ver los ajustes actuales consultando el valor de la matriz trusted_domains:

      • sudo nextcloud.occ config:system:get trusted_domains

      Output

      localhost

      Actualmente, solo localhost está presente como el primer valor en la matriz. Podemos añadir una entrada para el nombre de dominio o dirección IP de nuestro servidor escribiendo lo siguiente:

      • sudo nextcloud.occ config:system:set trusted_domains 1 --value=example.com

      Output

      System config value trusted_domains => 1 set to string example.com

      Si consultamos de nuevo los dominios de confianza, veremos que, ahora, tenemos dos entradas:

      • sudo nextcloud.occ config:system:get trusted_domains

      Output

      localhost example.com

      Si necesita añadir otra forma de acceder a la instancia de Nextcloud, puede agregar dominios o direcciones adicionales al volver a ejecutar el comando config:system:set con un número de índice incrementado (el “1” en el primer comando) y ajustar el --value.

      Proteger la interfaz web de Nextcloud con SSL

      Antes de empezar a usar Nextcloud, debemos proteger la interfaz web.

      Si tiene un nombre de dominio asociado con su servidor Nextcloud, el snap de Nextcloud puede ayudarlo a obtener y configurar un certificado SSL de confianza de Let’s Encrypt. Si su servidor Nextcloud *no *tiene un nombre de dominio, Nextcloud puede configurar un certificado autofirmado que cifrará su tráfico web, pero no podrá verificar la identidad de su servidor.

      Teniendo eso en cuenta, siga la siguiente sección que se adapte a su escenario.

      Opción 1: configurar SSL con Let’s Encrypt

      Si tiene un nombre de dominio asociado con su servidor Nextcloud, la mejor opción para proteger su interfaz web es obtener un certificado SSL de Let’s Encrypt.

      Comience por abrir los puertos en el firewall que Let’s Encrypt utiliza para validar la propiedad del dominio. Esto hará que su página de inicio de sesión de Nextcloud sea accesible públicamente, pero, como tenemos una cuenta de administrador configurada, nadie podrá interceptar la instalación:

      • sudo ufw allow 80,443/tcp

      A continuación, solicite un certificado de Let’s Encrypt escribiendo lo siguiente:

      • sudo nextcloud.enable-https lets-encrypt

      Primero, se le preguntará si su servidor cumple con las condiciones necesarias para solicitar un certificado del servicio Let’s Encrypt:

      Output

      In order for Let's Encrypt to verify that you actually own the domain(s) for which you're requesting a certificate, there are a number of requirements of which you need to be aware: 1. In order to register with the Let's Encrypt ACME server, you must agree to the currently-in-effect Subscriber Agreement located here: https://letsencrypt.org/repository/ By continuing to use this tool you agree to these terms. Please cancel now if otherwise. 2. You must have the domain name(s) for which you want certificates pointing at the external IP address of this machine. 3. Both ports 80 and 443 on the external IP address of this machine must point to this machine (e.g. port forwarding might need to be setup on your router). Have you met these requirements? (y/n)

      Escriba y para continuar.

      A continuación, se le pedirá que proporcione una dirección de correo electrónico para usarlo en las operaciones de recuperación:

      Output

      Please enter an email address (for urgent notices or key recovery): your_email@domain.com

      Por último, introduzca el nombre de dominio asociado con su servidor Nextcloud:

      Output

      Please enter your domain name(s) (space-separated): example.com

      Se solicitará su certificado de Let’s Encrypt y, si todo salió bien, la instancia interna de Apache se reiniciará para implementar de inmediato el SSL:

      Output

      Attempting to obtain certificates... done Restarting apache... done

      Ahora puede pasar directamente a iniciar sesión en Nextcloud por primera vez.

      Opción 2: configurar un SSL con un certificado autofirmado

      Si su servidor Nextcloud no tiene un nombre de dominio, de todos modos, puede proteger la interfaz web generando un certificado SSL autocertificado. Este certificado permitirá el acceso a la interfaz web mediante una conexión cifrada, pero no podrá verificar la identidad de su servidor, de modo que, probablemente, su navegador mostrará una advertencia.

      Para generar un certificado autofirmado, y configurar Nextcloud para que lo utilice, escriba lo siguiente:

      • sudo nextcloud.enable-https self-signed

      Output

      Generating key and self-signed certificate... done Restarting apache... done

      El resultado anterior indica que Nextcloud generó y habilitó un certificado autofirmado.

      Ahora que la interfaz está protegida, abra los puertos web en el firewall para permitir el acceso a la interfaz web:

      • sudo ufw allow 80,443/tcp

      Ya está listo para iniciar sesión en Nextcloud por primera vez.

      Iniciar sesión en la interfaz web de Nextcloud

      Ahora que Nextcloud está configurado, visite el nombre de dominio o la dirección IP de su servidor en su navegador web:

      https://example.com
      

      Nota: si configura un certificado SSL autofirmado, su navegador puede mostrar una advertencia indicando que la conexión no es segura porque el certificado del servidor no está firmado por una autoridad de certificación reconocida. Esto es normal para los certificados autofirmados, por lo tanto, ignore la advertencia y prosiga al sitio web.

      Como ya configuró una cuenta de administrador desde la línea de comandos, se lo dirigirá a la página de inicio de sesión de Nextcloud. Introduzca las credenciales que creó para el usuario administrativo:

      Página de inicio de sesión de Nextcloud

      Haga clic en el botón Iniciar sesión para acceder a la interfaz web de Nextcloud.

      La primera vez que ingrese, se mostrará una ventana con enlaces a varios clientes de Nextcloud que pueden usarse para gestionar su instancia Nextcloud e interactuar con ella:

      Cuadro modal de clientes de Nextcloud

      Haga clic para descargar cualquier cliente en el que esté interesado, o salga de la ventana haciendo clic en la X ubicada en la esquina superior derecha. Se lo dirigirá a la interfaz principal de Nextcloud, donde puede comenzar a cargar y administrar archivos:

      Página principal de Nextcloud

      Su instalación ya está completa y protegida. Explore la interfaz para familiarizarse con las características y funcionalidades de su nuevo sistema.

      Conclusión

      Nextcloud puede replicar las capacidades de servicios externos de almacenamiento en la nube populares. El contenido puede compartirse entre usuarios o externamente con URL públicas. La ventaja de Nextcloud es que la información se almacena de forma segura en un lugar que usted controla.

      Explore la interfaz y, para obtener funciones adicionales, instale complementos usando la tienda de aplicaciones de Nextcloud.



      Source link