GNU/Linux >> Linux Esercitazione >  >> Rocky Linux

Come installare Nextcloud su Rocky Linux

Nextcloud è un software gratuito e open source che ti consente di creare servizi di file hosting come Dropbox, Google Drive o Mega.nz. È stato creato dallo sviluppatore originale owncloud Frank Karlitschek. Nel 2016 ha creato il fork di Owncloud progetto e crea un nuovo progetto con il nome "Nextcloud ".

A questo punto, il Nextcloud progetto cresce rapidamente e diventa più di un software di file hosting. Con il supporto di molti plugin, Nextcloud diventa un tale software di collaborazione. Puoi installare plug-in per la gestione di progetti, videoconferenze, editing collaborativo, prendere appunti, client di posta elettronica, ecc.

In questa guida imparerai come installare Nextcloud su Rocky Linux 8.4. Installerai Nextcloud sotto lo stack LAMP (Linux, Apache2/httpd, MySQL/MariaDB e PHP).

Prerequisiti

  • Un server Rocky Linux. Assicurati che tutti i pacchetti siano aggiornati all'ultima versione.
  • Un utente con privilegi di root. Questo utente otterrà i privilegi di root tramite il comando sudo.

Installazione del server Web Apache/Httpd

All'inizio, installerai il server Web Apache o httpd sul server Rocky Linux.

1. Eseguire il comando dnf di seguito per installare il server Web httpd.

sudo dnf install httpd

Digita "y " e premi "Invio " per confermare e installare i pacchetti httpd.

2. Se l'installazione è completa, abilitare e avviare il servizio httpd utilizzando il comando seguente.

sudo systemctl enable httpd
sudo systemctl start httpd

"abilita systemctl Il comando " abiliterà l'avvio del servizio ad ogni avvio.

3. Successivamente, esegui il comando seguente per verificare il servizio httpd.

sudo systemctl status httpd

E otterrai un risultato simile come di seguito.

Come si vede nella schermata in alto, httpd è attivo e in esecuzione.

Installazione di PHP su Rocky Linux

Per ora, Nextcloud necessita di PHP 7.4 o superiore per l'installazione. Ora installerai PHP 7.4 dal repository remi.

1. Eseguire il comando seguente per aggiungere epel e remi Repository

sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm

Digita "y " e premi "Invio " per aggiungere il repository epel e remi.

Al termine dell'installazione, verifica il repository epel e Remi utilizzando il comando seguente.

sudo dnf repolist

Vedrai il repository epel e remi nell'elenco dei repository.

2. Quindi, ripristina il modulo di repository predefinito PHP. Quindi abilita il modulo per PHP 7.4 dal repository remi.

Esegui il comando seguente per ripristinare il repository del modulo php predefinito.

sudo dnf module reset php

Nel processo, digita "y " e premi "Invio " per aggiungere il repository remi della chiave gpg.

Successivamente, esegui il comando seguente per abilitare il modulo php dal repository remi.

sudo dnf module enable php:remi-7.4

Digita "y " per confermare e premere "Invio " per continuare. Ora sei pronto per installare PHP e tutte le estensioni per l'installazione di WordPress.

3. Esegui il comando seguente per installare php con alcune estensioni necessarie.

sudo dnf install php php-ctype php-curl php-gd php-iconv php-json php-libxml php-mbstring php-openssl php-posix php-session php-xml php-zip php-zlib php-pdo php-mysqlnd php-intl php-bcmath php-gmp php-imagick php-apcu

4. Al termine dell'installazione di PHP, modificare la configurazione "php.ini " usando l'editor nano.

nano /etc/php.ini

Modifica il valore predefinito con la configurazione seguente.

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

Premi "Ctrl+x " e digita "Y " per salvare la configurazione ed uscire.

La configurazione importante che devi conoscere:

  • Per la produzione Nextcloud, è necessario "memory_limit " più di 512 MB.
  • Il "upload_max_filesize L'opzione " ti consente di impostare la dimensione massima di caricamento sul tuo server Nextcloud.
  • Il "post_max_size " l'opzione deve essere maggiore di "upload_max_filesize " opzione.
  • Il "date.timezone L'opzione " deve corrispondere all'ora locale del sistema "/etc/localtime ".
  • Aumenta il "max_execution_time " a seconda del carico del tuo server.

5. Quindi, cambia la directory di lavoro in "/etc/php.d/ " e modifica la configurazione "10-opcache.ini " usando l'editor nano.

cd /etc/php.d/
nano 10-opcache.ini

Aggiungi la seguente configurazione per abilitare il plugin PHP opecache.

opcache.enable = 1
opcache.interned_strings_buffer = 8
opcache.max_accelerated_files = 10000
opcache.memory_consumption = 128
opcache.save_comments = 1
opcache.revalidate_freq = 1

Premi "Ctrl+x " e digita "Y " per salvare la configurazione ed uscire.

6. Per applicare una nuova configurazione PHP, riavvia il servizio httpd usando il comando seguente.

sudo systemctl restart httpd

Installazione e configurazione di MariaDB

Per questa fase, installerai il server del database mariadb, proteggerai la distribuzione di mariadb e creerai un nuovo database e un nuovo utente per Nextcloud.

1. Per installare il server del database mariadb, eseguire il comando seguente.

sudo dnf install mariadb mariadb-server

Attendi l'installazione di mariadb.

2. Una volta completata l'installazione, abilitare e avviare il servizio mariadb utilizzando il comando seguente.

sudo systemctl enable mariadb
sudo systemctl start mariadb

4. Mariadb sarà attivo e in esecuzione, eseguire il comando seguente per verificare il servizio mariadb.

sudo systemctl status mariadb

Se il servizio mariadb è in esecuzione, otterrai un output simile a quello di seguito.

5. Successivamente, è necessario proteggere la distribuzione di mariadb impostando la password di root per mariadb e rimuovendo alcune configurazioni predefinite. Per farlo, puoi utilizzare lo strumento da riga di comando 'mysql_secure_installation ', che è incluso nell'installazione predefinita di mariadb.

Esegui "mysql_secure_installation " comando sotto.

mysql_secure_installation

All'inizio, ti verrà chiesto di impostare la password di root di mariadb.

Digita la tua password root di mariadb forte e ripeti, quindi premi "Invio " per continuare.

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!

Ora digita "Y " e premi "Invio " per rimuovere l'utente anonimo predefinito dal server mariadb.

By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y
 ... Success!

Successivamente, disabilita l'accesso remoto per l'utente predefinito 'root '. Digita "S " e premi "Invio " per continuare.

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y
 ... Success!

Digita "S " di nuovo per rimuovere il database predefinito "test " e premi "Invio ".

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

E l'ultimo, digita "Y " di nuovo per ricaricare tutti i privilegi delle tabelle per applicare una nuova configurazione.

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
 ... Success!

Ora il processo è completo e vedrai il seguente output.

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

Creazione di database per Nextcloud

1. accedi alla shell mariadb usando il comando mysql qui sotto.

mysql -u root -p

2. Ora esegui la seguente query mysql per creare un nuovo database "nextcloud_db".

CREATE DATABASE netxcloud_db;

3. Eseguire la query seguente per creare un nuovo utente del database "nextuser ". Modifica la "password " con la tua password complessa.

CREATE USER [email protected] IDENTIFIED BY 'StrongPassword';

4. Consenti all'utente "nextuser " per accedere e scrivere "nextcloud_db " utilizzando la query seguente.

GRANT ALL PRIVILEGES ON netxcloud_db.* TO [email protected];

5. Ora ricarica tutti i privilegi delle tabelle per applicare la nuova configurazione del database.

FLUSH PRIVILEGES;

Quindi puoi digitare "chiudi " e premi "Invio " per uscire dalla shell mariadb.

Scarica il codice sorgente Nextcloud

1. Modificare la directory di lavoro in "/var/www " e scarica l'ultima versione del codice sorgente di Nextcloud usando il comando wget come di seguito.

cd /var/www/
wget https://download.nextcloud.com/server/releases/nextcloud-22.1.0.zip

2. Estrarre il codice sorgente di Nextcloud "nextcloud-xx.zip " e otterrai una nuova directory "nextcloud ", quindi cambia il proprietario del "nextcloud " directory in "apache " utente.

unzip nextcloud-22.1.0.zip
chown -R apache:apache nextcloud

Ora sei pronto per configurare l'host virtuale httpd per Nextcloud.

Abilita modulo Apache/Httpd mod_ssl

Per questo tutorial, installerai Nextcloud e proteggerai con SSL da Letsencrypt. Quindi è necessario abilitare mod_ssl per il server httpd su Rocky Linux.

1. Installa il pacchetto "mod_ssl " usando il comando dnf qui sotto.

sudo dnf install mod_ssl mod_http2

2. dopodiché, genera l'SSL predefinito per localhost usando il comando openssl di seguito. Ma se hai già i certificati "/etc/pki/tls/private/localhost.key " e "/etc/pki/tls/certs/localhost.crt ", puoi saltare questa fase.

openssl req -newkey rsa:2048 -nodes -keyout /etc/pki/tls/private/localhost.key -x509 -days 365 -out /etc/pki/tls/certs/localhost.crt

Puoi semplicemente premere invio per tutte le domande perché questo certificato verrà utilizzato solo per localhost, non per il nome di dominio di WordPress.

3. Ora esegui il seguente comando per garantire il mod_ssl è disponibile sul server web httpd.

apachectl -M | grep ssl

Se hai un output come "ssl ", quindi il mod_ssl è abilitato. Altrimenti, otterrai un output vuoto.

Generazione SSL Letsencrypt con Certbot

In questa fase, installerai lo strumento cerbot e genererai i certificati SSL per l'installazione di WordPress. Genererai SSL Letsencrypts con il plugin webroot.

1. Eseguire il comando seguente per installare lo strumento certbot per la generazione di SSL Letsencrypt.

sudo dnf install certbot

Attendi il processo di installazione.

2. Una volta completata l'installazione, creare una nuova directory per l'autorizzazione Letencrypt utilizzando i seguenti comandi.

sudo mkdir -p /var/lib/letsencrypt/.well-known
sudo chgrp apache /var/lib/letsencrypt
sudo chmod g+s /var/lib/letsencrypt

3. Quindi, cambia la directory di lavoro in "/etc/httpd/conf.d/ " e crea una nuova configurazione "well-known.conf " usando l'editor nano.

cd /etc/httpd/conf.d/
nano well-known.conf

Aggiungi le seguenti configurazioni.

Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/"
<Directory "/var/lib/letsencrypt/">
    AllowOverride None
    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
    Require method GET POST OPTIONS
</Directory>

Premi "Ctrl+x " e digita "y " per salvare ed uscire.

4. Ora esegui i seguenti comandi per verificare la configurazione di httpd e riavviare il servizio httpd.

apachectl configtest
sudo systemctl restart httpd

Se non hai errori, sei pronto per generare SSL Letsencrypt con il plugin webroot.

5. Prima di generare SSL Letsencrypt, assicurati che il tuo nome di dominio sia risolto nell'indirizzo IP del server. Successivamente, puoi generare SSL Letsencrypt con il plug-in webroot eseguendo il comando certbot di seguito. Inoltre, cambia l'indirizzo email e il nome di dominio con il tuo.

sudo certbot certonly --agree-tos --email [email protected] --webroot -w /var/lib/letsencrypt/ -d files.domain.com -d 

Al termine del processo, i tuoi certificati SSL saranno disponibili in "/etc/letsencrypt/live/files.domain.com/ " directory.

Configurazione dell'host virtuale Apache per Nextcloud

In questo passaggio, aggiungerai una nuova configurazione di host virtuale apache/httpd per Nextcloud.

1. Modificare la directory di lavoro in "/etc/httpd/conf.d " e crea una nuova configurazione "nextcloud.conf " usando l'editor nano.

cd /etc/httpd/conf.d/
nano nextcloud.conf

Modifica il nome di dominio dettagliato e la directory del percorso SSL con la tua e incolla la configurazione in "nextcloud.conf " file.

<VirtualHost *:80>
    ServerName files.domain.com
    ServerAlias www.files.domain.com

    # auto redirect HTTP to HTTPS
    Redirect permanent / https://files.domain.com/
</VirtualHost>

<VirtualHost *:443>
    ServerName files.domain.com
    ServerAlias www.files.domain.com
 
    DocumentRoot /var/www/nextcloud/

    Protocols h2 http/1.1

    # auto redirect www to non-www
    <If "%{HTTP_HOST} == 'www.files.domain.com'">
        Redirect permanent / https://files.domain.com/
    </If>

    # log files
    ErrorLog /var/log/httpd/files.domain.com-error.log
    CustomLog /var/log/httpd/files.domain.com-access.log combined

    SSLEngine On
    SSLCertificateFile /etc/letsencrypt/live/files.domain.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/files.domain.com/privkey.pem

    # HSTS
    <IfModule mod_headers.c>
        Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
    </IfModule>

    <Directory /var/www/nextcloud/>
        Options +FollowSymlinks
        AllowOverride All

        <IfModule mod_dav.c>
            Dav off
        </IfModule>

        SetEnv HOME /var/www/nextcloud
        SetEnv HTTP_HOME /var/www/nextcloud
    </Directory>
</VirtualHost>

Premi "Ctrl+x " e digita "Y " per salvare la configurazione ed uscire.

3. Quindi, eseguire il comando seguente per verificare la configurazione httpd.

sudo apachectl configtest

Se non hai riscontrato alcun errore, riavvia il servizio httpd utilizzando il comando seguente.

sudo systemctl restart httpd

Ora sei pronto per l'installazione di Nextcloud tramite il browser web.

Installazione di Nextcloud

Se tutta la relativa configurazione del server è completa, puoi accedere alla tua installazione di Nextcloud con il browser web.

1. Apri il tuo browser web e digita l'indirizzo URL della tua installazione di Nextcloud.

http://files.dominio.com

Ora verrai reindirizzato alla connessione HTTPS sicura e otterrai la pagina come segue.

  • Nella sezione "Crea un account amministratore", digita un nuovo nome utente e password per il tuo amministratore.
  • Per la sezione "Cartella dati", lasciala come predefinita ormai.
  • Nella sezione "Configura il database", scegli "MySQL/MariaDB" e digita i dettagli della configurazione del database
  • Inoltre, puoi installare le app consigliate selezionando l'opzione della casella. Oppure deseleziona l'opzione della casella se non lo desideri.

Successivamente, puoi fare clic su "Termina configurazione pulsante ".

2. Al termine del processo di installazione, vedrai la dashboard Nextcloud predefinita come di seguito.

3. Ora fai clic sul menu "File " e vedrai l'elenco della dashboard utente di file e cartelle.

4. Per accedere alla pagina amministrativa, fai clic sul profilo utente in alto e seleziona "Impostazioni ".

Sotto "Amministrativo ", puoi modificare la configurazione predefinita di Nextcloud.

5. Per aggiungere nuovi plugin o app, puoi fare clic sul profilo utente in alto e selezionare "App ".

Ora otterrai la pagina come segue.

Scegli la categoria di plug-in che fa per te, quindi fai clic sul pulsante "Scarica e abilita ". Successivamente, fai clic su "Abilita " per attivare l'app o il plug-in.

Di seguito è riportato lo screenshot dopo aver abilitato il tema Nextcloud Breeze Dark.

Ottimizzazione delle prestazioni di Nextcloud

Dopo aver installato Nextcloud, puoi fare alcuni passaggi ulteriormente per aumentare le prestazioni di Nextcloud abilitando la cache di memoria locale e impostando un cronjob per Nextcloud stesso.

1. Nella sezione superiore dell'installazione di PHP, hai già impostato il PHP per la memorizzazione nella cache. Per abilitare la memorizzazione nella cache su Nextcloud, modifica la configurazione di Nextcloud "config.php".

Modificare la directory di lavoro in "/var/www/nextcloud/config " e modifica la configurazione "config.php" usando l'editor nano.

cd /var/www/nextcloud/config/
nano config.php

Aggiungi la seguente configurazione all'interno dell' 'array ( .. ); ' parentesi come sotto

<?php
$CONFIG = array (
....
....
....
  # Additional configuration
  'memcache.local' => '\OC\Memcache\APCu',
);

Ora premi "Ctrl+x " e digita "y " per salvare la configurazione ed uscire.

2. Un sistema Nextcloud deve eseguire alcune attività in background su base regolare e senza alcuna interazione utente/amministratore. Per fare ciò, puoi utilizzare cronjob per le attività di Nextcloud dell'utilità di pianificazione.

Su Rocky Linux, l'utente httpd predefinito è "apache ". Crea un nuovo cronjob per l'utente "apache " utilizzando il comando seguente.

crontab -u apache -e

Aggiungi la seguente configurazione.

*/5  *  *  *  * php -f /var/www/nextcloud/cron.php

Nota sulla configurazione e l'uscita.

Devi conoscere la configurazione di Cronjob:

  • Questa configurazione di cronjob consente all'utente "apache " per eseguire lo script PHP "/var/www/nextcloud/cron.php " ogni 5 minuti .

Per verificare la configurazione di cronjob, puoi eseguire il seguente comando.

crontab -u apache -l

Se la tua configurazione ha successo, otterrai la configurazione in cima come output. In caso contrario, otterrai un risultato vuoto.

Conclusione

Congratulazioni! Hai installato con successo Nextcloud su Rocky Linux 8.4. Il server Nextcloud è in esecuzione nello stack LAMP con SSL abilitato. Inoltre, l'installazione di Nextcloud è in esecuzione con la memorizzazione nella cache abilitata con PHP APC ed estensioni opcache.


Rocky Linux
  1. Come installare MariaDB 10.6 su Rocky Linux 8

  2. Come installare Docker su Rocky Linux 8

  3. Come installare Cockpit su Rocky Linux 8

  4. Come installare GitLab su Rocky Linux 8

  5. Come installare PHP 8 su Alma Linux e Rocky Linux

Come installare PHP 7.4 su Rocky Linux 8

Come installare PHP 8 su Rocky Linux 8

Come installare PostgreSQL su Rocky Linux 8

Come installare Cactus su Rocky Linux 8

Come installare Joomla su Rocky Linux 8

Come installare Laravel su Rocky Linux 8