GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo instalar y configurar NextCloud en Debian 11 y LEMP

Nextcloud es una suite de código abierto de software cliente-servidor para crear y utilizar servicios de alojamiento de archivos. Es una solución gratuita de almacenamiento en la nube autoalojada similar a Dropbox, Google Drive, etc. Con Nextcloud, no tiene que preocuparse por las alternativas costosas y, dado que alojará sus propios archivos, no tiene que preocuparse. sobre la privacidad o que alguien recopile sus datos.

NextCloud se puede instalar en un servidor doméstico privado o en un servidor privado virtual en la nube. Luego, los archivos se pueden cargar y luego sincronizar con una computadora de escritorio local, una computadora portátil o incluso un teléfono inteligente. De esta manera usted tiene el control total de sus datos.

Características de NextCloud

  • NextCloud tiene clientes de sincronización para Linux, Mac OS, Windows, Android e IOS
  • Cifrado de extremo a extremo:los archivos se cifran mientras se cargan en el servidor
  • NextCloud es gratuito y de código abierto
  • Se puede integrar con una suite ofimática en línea (Collobora, OnlyOffice) para que pueda crear y editar sus archivos doc, ppt, xls directamente desde NextCloud.
  • La tienda de aplicaciones contiene cientos de aplicaciones para ampliar la funcionalidad (como la aplicación de calendario, la aplicación para tomar notas, la aplicación de videoconferencia, etc.).

Contenido relacionado

  • Cómo instalar y configurar NextCloud en Ubuntu 20.04 y LEMP
  • Cómo instalar y configurar NextCloud en Centos 8 y LEMP
  • Cómo instalar y configurar Mariadb 10 en Debian 11
  • Cómo instalar y configurar PHP y Nginx (LEMP) en Debian 11

Requisitos

Para seguir esta guía, asegúrese de tener:

  • Un servidor Debian 11 actualizado
  • Acceso a Internet desde el servidor
  • Acceso raíz desde el servidor o usuario con acceso sudo

Tabla de contenido

  1. Asegúrese de que los paquetes del servidor estén actualizados
  2. Instalación de Mariadb 10 en Debian 11
  3. Creando usuario mysql para NextCloud
  4. Instalación de PHP en Debian 11
  5. Instalación de Nginx en Debian 11
  6. Descargar y configurar Nextcloud
  7. Configure Nginx para servir a NextCloud desde un host virtual
  8. Actualizar la configuración de PHP
  9. Acceso a Nextcloud desde la URL web

1. Asegúrese de que los paquetes del servidor estén actualizados

Asegurémonos de que nuestros paquetes de servidor estén actualizados con este comando:

sudo apt update
sudo apt -y upgrade

Mientras lo hacemos, también instalemos algunas dependencias que necesitaremos

sudo apt install -y unzip vim

2. Instalación de Mariadb en Debian 11

Mariadb es un popular sistema de gestión relacional de código abierto. Está disponible en los repositorios predeterminados como mariadb-server .

Instálelo con este comando:

sudo apt install -y mariadb-server

Mariadb se instalará e iniciará de manera predeterminada en Debian 11. Verifique el estado con esto

$ sudo systemctl status mariadb
● mariadb.service - MariaDB 10.5.12 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-12-11 14:40:42 UTC; 4s ago
       Docs: man:mariadbd(8)
             https://mariadb.com/kb/en/library/systemd/
    Process: 1937 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
    Process: 1938 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
    Process: 1940 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, statu>
    Process: 2001 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
    Process: 2003 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
   Main PID: 1987 (mariadbd)
     Status: "Taking your SQL requests now..."
      Tasks: 14 (limit: 4626)
     Memory: 76.3M
        CPU: 639ms
     CGroup: /system.slice/mariadb.service
             └─1987 /usr/sbin/mariadbd

Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: mysql
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: performance_schema
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: Phase 6/7: Checking and upgrading tables
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: Processing databases
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: information_schema
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: performance_schema
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: Phase 7/7: Running 'FLUSH PRIVILEGES'
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: OK
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2736]: Checking for insecure root accounts.
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2743]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables

Para asegurarse de que mariadb se inicie en el arranque, habilítelo con este comando systemd:

sudo systemctl enable mariadb

Una vez que el servicio mysql se está ejecutando, debe protegerlo. Mysql proporciona una utilidad de línea de comandos que hará eso:

sudo mysql_secure_installation

El comando anterior lo llevará a través de indicaciones para asegurar y establecer una contraseña de root para la instancia de mysql.

Consulte más información sobre la instalación y configuración de mysql en esta guía aquí

3. Creando usuario mysql para NextCloud

Siempre se recomienda tener un usuario dedicado para cada aplicación que se conecta a la base de datos. Consulte esta guía sobre cómo administrar los permisos de mysql aquí. Configuraremos una base de datos, un usuario y una contraseña para que los use nextcloud:

Conéctese al servidor mysql:

mysql -u root -p

Después de proporcionar su contraseña, ingrese lo siguiente en el indicador de mysql:

create database nextcloud;
create user 'nextcloud_user'@'%' identified by 'S0mStrongPa$$word';
grant all privileges on nextcloud.* to 'nextcloud_user'@'%';

Ahora que hemos configurado nuestra conexión mysql, pasemos a la siguiente sección donde instalamos y configuramos PHP y Nginx.

4. Instalación de PHP 7.4 en Debian 11

NextCloud funciona bien con PHP 6.4. Para instalar php 7.4, debemos habilitar el repositorio remi para obtener la última versión.

Luego instale php y dependencias

sudo apt install -y \
  php \
  php-gd \
  php-curl \
  php-zip \
  php-dom \
  php-xml \
  php-simplexml \
  php-mbstring \
  php-intl \
  php-json \
  php-fpm

Para obtener más información sobre cómo configurar PHP y Nginx, consulte esta guía aquí.

5. Instalación de Nginx en Debian 11

A continuación, instalemos Nginx en nuestro sistema. Use este comando para instalar nginx

sudo apt install -y nginx

Nginx se iniciará de forma predeterminada. Verifique el estado usando este comando:

$ sudo systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-12-11 14:42:39 UTC; 29s ago
       Docs: man:nginx(8)
    Process: 13698 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 13699 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 13780 (nginx)
      Tasks: 3 (limit: 4626)
     Memory: 3.1M
        CPU: 24ms
     CGroup: /system.slice/nginx.service
             ├─13780 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ├─13783 nginx: worker process
             └─13784 nginx: worker process

Dec 11 14:42:39 ip-10-2-40-145 systemd[1]: Starting A high performance web server and a reverse proxy server...
Dec 11 14:42:39 ip-10-2-40-145 systemd[1]: Started A high performance web server and a reverse proxy server.

Active: active (running) indicar que el servicio ya está en funcionamiento.

Para habilitar el servicio en el arranque, use este comando:

sudo systemctl enable nginx

6. Descarga y configura Nextcloud

Ahora que hemos configurado con éxito el servidor LEMP en nuestro sistema, descarguemos y configuremos NextCloud. Puede obtener la última versión de NextCloud desde la página de instalación de NextCloud. Use este comando para descargar el servidor NextCloud:

cd /tmp
curl -LO https://download.nextcloud.com/server/releases/nextcloud-23.0.0.zip

Ahora cambiemos a una ruta de directorio para servir a NextCloud en /var/www luego extraiga el archivo descargado allí:

cd /var/www
sudo unzip /tmp/nextcloud-23.0.0.zip
sudo chown -R $USER:$GROUP nextcloud
sudo chmod -R 755 nextcloud

Nextcloud requería un directorio para guardar sus datos. Así que cree un directorio de datos y establezca los permisos adecuados en el directorio nextcloud

sudo mkdir -p /var/nextcloud/data
sudo chown -R $USER:$GROUP /var/nextcloud
sudo chmod -R 755 /var/nextcloud

7. Configure Nginx para servir a NextCloud desde un host virtual

Logramos descargar el contenido de NextCloud a /var/www/nextcloud . El siguiente bit para configurar Nginx para servirlo.

Vamos a crear un sitio virtual en el directorio en el que nginx sirve contenido aquí /etc/nginx/conf.d :

sudo vim /etc/nginx/conf.d/nextcloud.conf

Agrega el siguiente contenido:

server {
    listen 80;

    server_name nextcloud.citizix.com;
    root /var/www/nextcloud;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location = /favicon.ico {
        log_not_found off;
        access_log off;
    }

    location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
        expires max;
        log_not_found off;
    }

    location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }

    location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        fastcgi_pass unix:/run/php/php-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

Una vez que se hayan realizado los cambios anteriores, debemos reiniciar el servidor nginx y el servidor php-fom. Usa estos comandos en la terminal para lograrlo.

sudo systemctl restart php7.4-fpm nginx

Acceso a Nextcloud desde la URL web

Luego diríjase a su dominio establecido, http://nextcloud.citizix.com/nextcloud para mí. Se le pedirá que cree la cuenta de usuario. Ingrese el nombre de usuario y la contraseña que utilizará para el nuevo usuario:

Luego ingrese los Detalles de la base de datos:

Después de eso, haga clic en Finalizar. Será redirigido a la página de inicio de sesión donde utilizará los detalles para que el usuario creado inicie sesión. Si inicia sesión con éxito, obtendrá el panel.

Conclusión

En esta guía, logramos configurar LEMP en Debian 11 para servir a Next cloud.


Debian
  1. Cómo instalar y configurar Redis 6.0 en Debian 11

  2. Cómo instalar y configurar docker en Debian 11

  3. Cómo instalar y configurar Mariadb 10 en Debian 11

  4. Cómo instalar y configurar MongoDB 5 en Debian 11

  5. Cómo instalar NextCloud 13 en Debian 9

Cómo instalar y configurar RabbitMQ en Debian 11

Cómo instalar y configurar Memcached en Debian 11

Cómo instalar Nextcloud en Debian 11 / Debian 10

Cómo instalar y configurar Git en Debian 11

Cómo instalar y configurar NextCloud en Ubuntu 20.04 y LEMP

¿Cómo instalar y configurar Apache en Debian 11?