Instalación Nextcloud · 7 min read · Sep 26, 2025

Cómo instalar Nextcloud en un servidor Ubuntu 24.04

Nextcloud es un software de código abierto para almacenamiento de archivos públicos y privados. Te permite crear servicios autoalojados como Dropbox, Google Drive o Mega.nz. Inicialmente, fue creado por el desarrollador original de Owncloud, Frank Karlitschek. En 2016, bifurcó el proyecto Owncloud y creó un nuevo proyecto con el nuevo nombre “Nextcloud.”

El proyecto Nextcloud está creciendo rápidamente y se está convirtiendo en más que un software de alojamiento de archivos. Es más como una plataforma de sincronización de archivos y colaboración de contenido. Respaldado por muchos complementos, Nextcloud se ha convertido en un software de colaboración muy poderoso. Puedes instalar complementos para gestión de proyectos, videoconferencias, edición colaborativa, toma de notas, cliente de correo electrónico, etc.

Este tutorial te enseña cómo instalar Nextcloud en un servidor Ubuntu 24.04. Instalarás Nextcloud con el LAMP Stack y luego asegurarás Nextcloud con HTTPS a través de Certbot y Letsencrypt.

Requisitos previos

Antes de comenzar, asegúrate de tener lo siguiente:

  • Un servidor Ubuntu 24.04
  • Un usuario no root con privilegios de administrador
  • Un nombre de dominio apuntado a la dirección IP del servidor
  • Un UFW (Firewall poco complicado) en funcionamiento

Instalando dependencias

En esta sección, instalarás las dependencias de paquetes para Nextcloud. Ejecutarás Nextcloud con el LAMP Stack, utilizando curl para descargar el código fuente de Nextcloud, luego utilizando Certbot y Letsencrypt para asegurar Nextcloud con HTTPS.

Antes de comenzar, ejecuta el siguiente comando para actualizar el índice de paquetes de Ubuntu

sudo apt update

update repo

Ahora, instala las dependencias de Nextcloud con el siguiente comando apt install. Esto instalará el LAMP Stack (Linux, Apache, MySQL/MariaDB y PHP), curl, unzip, ImageMagick y certbot.

sudo apt install apache2 mariadb-server php php-curl php-cli php-mysql php-gd php-common php-xml php-json php-intl php-pear php-imagick php-dev php-common php-mbstring php-zip php-soap php-bz2 php-bcmath php-gmp php-apcu libmagickcore-dev php-redis php-memcached curl unzip imagemagick certbot python3-certbot-apache

Ingresa Y para confirmar la instalación.

install deps

Después de la instalación, verifica el estado del servidor web Apache utilizando el siguiente comando. Verás que el servidor web Apache está en funcionamiento y habilitado.

sudo systemctl is-enabled apache2  
sudo systemctl status apache2

test apache2

Ahora verifica el estado del servidor MariaDB con el siguiente comando. Deberías obtener una salida similar a que MariaDB está en funcionamiento.

sudo systemctl is-enabled mariadb  
sudo systemctl status mariadb

test mariadb

Por último, ejecuta el siguiente comando para verificar la versión de PHP de tu sistema. Verás que PHP 8.3 está instalado.

php -v

test php

Configurando PHP

Después de haber instalado las dependencias, configurarás PHP editando el archivo php.ini. Puedes ajustar la configuración de PHP según sea necesario para algunas opciones, como el límite máximo de memoria y el tamaño máximo de carga.

Abre el archivo /etc/php/8.3/apache2/php.ini con el editor nano.

sudo nano /etc/php/8.3/apache2/php.ini

Cambia la configuración predeterminada con lo siguiente, y asegúrate de ajustar memory_limit con tu memoria máxima y date.timezone con la ubicación/huso horario de tu servidor.

date.timezone = Europe/Amsterdam  
memory_limit = 512M  
upload_max_filesize = 500M  
post_max_size = 600M  
max_execution_time = 300  
file_uploads = On  
allow_url_fopen = On  
display_errors = Off  
output_buffering = Off

Cuando termines, guarda el archivo y sal.

Ahora ejecuta el siguiente comando systemctl para reiniciar el servidor web Apache y aplicar tu nueva configuración de PHP.

sudo systemctl restart apache2

Configurando el servidor MariaDB

Ahora que has configurado PHP, configurarás el servidor MariaDB y crearás una nueva base de datos y usuario para Nextcloud. Asegurarás MariaDB con la utilidad mariadb-secure-installation, luego crearás una nueva base de datos y usuario a través del cliente mariadb.

Para asegurar el servidor MariaDB, ejecuta el comando mariadb-secure-installation a continuación.

sudo mariadb-secure-installation

Durante el proceso, se te preguntará sobre las siguientes configuraciones del servidor MariaDB:

  • Presiona ENTER cuando se te pida la contraseña de root de MariaDB.
  • Ingresa n cuando se te pregunte sobre el método de autenticación unix_socket.
  • Ingresa Y para configurar una nueva contraseña para el usuario root de MariaDB. Luego, ingresa la nueva contraseña y repítela.
  • Ingresa Y para eliminar el usuario anónimo predeterminado de MariaDB.
  • Luego, ingresa Y nuevamente para deshabilitar el inicio de sesión remoto para el usuario root de MariaDB.
  • Ingresa Y para eliminar la base de datos de prueba predeterminada de MariaDB.
  • Por último, ingresa Y nuevamente para recargar los privilegios de la tabla y aplicar los cambios.

A continuación, ejecuta el comando del cliente mariadb a continuación para iniciar sesión en el servidor MariaDB. Ingresa tu contraseña de root cuando se te pida.

sudo mariadb -u root -p

Ejecuta las siguientes consultas para crear una nueva base de datos nextclouddb, un usuario nextcloud@localhost, con la contraseña passw0rd. Puedes ajustar los detalles de la base de datos con tu información.

CREATE DATABASE nextclouddb;  
CREATE USER nextcloud@localhost IDENTIFIED BY 'passw0rd';  
GRANT ALL PRIVILEGES ON nextclouddb.* to nextcloud@localhost;  
FLUSH PRIVILEGES;

create datbase and user

Ahora ejecuta la consulta a continuación para asegurarte de que el usuario nextcloud@localhost pueda acceder a la base de datos nextclouddb.

SHOW GRANTS FOR nextcloud@localhost;

Verás una salida como la siguiente:

show user privileges

Escribe quit para salir del servidor MariaDB.

Abriendo puertos HTTP y HTTPS

En esta sección, abrirás los puertos HTTP y HTTPS para permitir el acceso a Nextcloud. Por lo tanto, debes asegurarte de que UFW esté configurado y habilitado en tu servidor Ubuntu.

Para abrir ambos puertos HTTP y HTTPS en Ubuntu, ejecuta el comando ufw a continuación. Con el perfil Apache Full, permitirás conexiones a los puertos HTTP y HTTPS.

sudo ufw allow 'Apache Full'  
sudo ufw reload

Ahora verifica la lista de reglas en UFW con el siguiente comando. Asegúrate de que el perfil Apache Full esté habilitado en tu servidor Ubuntu.

sudo ufw status

setup ufw

Descargando Nextcloud

Ahora que has configurado PHP, MariaDB y UFW, descargarás el código fuente de Nextcloud y configurarás el directorio raíz del documento para la instalación de Nextcloud.

Ve al directorio /var/www y descarga el código fuente de Nextcloud con el comando curl a continuación.

cd /var/www/  
sudo curl -o nextcloud.zip https://download.nextcloud.com/server/releases/latest.zip

Una vez descargado, ejecuta el comando unzip a continuación para extraer Nextcloud. Esto establecerá el directorio raíz de Nextcloud en /var/www/nextcloud.

sudo unzip nextcloud.zip

Ahora ejecuta el comando a continuación para cambiar la propiedad del directorio /var/www/nextcloud al usuario www-data.

sudo chown -R www-data:www-data /var/www/nextcloud

Configurando el host virtual de Apache para Nextcloud

Después de descargar Nextcloud, crearás un nuevo host virtual de Apache para Nextcloud. Luego, generarás certificados SSL y asegurarás Nextcloud con HTTPS.

Crea una nueva configuración de host virtual de Apache /etc/apache2/sites-available/nextcloud.conf con el siguiente editor nano.

sudo nano /etc/apache2/sites-available/nextcloud.conf

Inserta la configuración a continuación y asegúrate de cambiar el nombre de dominio nextcloud.howtoforge.local.

  
 ServerName nextcloud.howtoforge.local  
 DocumentRoot /var/www/nextcloud/  
  
 # archivos de registro  
 ErrorLog /var/log/apache2/nextclouds.howtoforge.local-error.log  
 CustomLog /var/log/apache2/nextcloud.howtoforge.local-access.log combined  
  
   
 Options +FollowSymlinks  
 AllowOverride All  
  
   
 Dav off  
   
  
 SetEnv HOME /var/www/nextcloud  
 SetEnv HTTP_HOME /var/www/nextcloud  
   

Cuando termines, guarda el archivo y sal del editor.

Ahora ejecuta el siguiente comando para activar el archivo de host virtual nextcloud.conf y verificar la sintaxis de Apache. Si tienes una sintaxis de Apache correcta, obtendrás una salida Syntax is OK.

sudo a2ensite nextcloud.conf  
sudo apachectl configtest

A continuación, ejecuta el comando systemctl a continuación para reiniciar el servidor web Apache y aplicar tus cambios.

sudo systemctl restart apache2

setup apache

Una vez que Apache se reinicie, ejecuta el comando certbot a continuación para generar certificados SSL y asegurar tu instalación de Nextcloud con HTTPS. Asegúrate de cambiar el nombre de dominio y la dirección de correo electrónico con tu información.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d nextcloud.howtoforge.local

Instalando Nextcloud

Abre tu navegador web y visita https://nexcloud.howtoforge.local/. Si tu configuración es exitosa, verás la página de instalación de Nextcloud.

En la página de instalación de Nextcloud, configura lo siguiente:

  • Ingresa tu usuario y contraseña de administrador para Nextcloud
  • Selecciona la ruta de almacenamiento como el directorio predeterminado
  • Ingresa los detalles de la base de datos de Nextcloud que has creado
  • Haz clic en Instalar para comenzar la instalación.

install nextcloud

Ahora puedes instalar algunas aplicaciones de Nextcloud o hacer clic en Omitir.

skip apps installation

Después de que el proceso esté completo, verás la siguiente página:

nextcloud dashboard

Conclusión

¡Felicidades! Has completado la instalación de Nextcloud en el servidor Ubuntu 24.04. Nextcloud está en funcionamiento con el LAMP Stack y asegurado con HTTPS a través de Certbot y Letsencrypt. Ahora puedes crear nuevos usuarios y cargar archivos a tu Nextcloud, o puedes agregar nuevos métodos de almacenamiento en caché para mejorar su rendimiento.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.