GNU/Linux >> Linux Esercitazione >  >> Fedora

Come installare un server Nextcloud privato su Fedora 34

Nextcloud è una suite software di applicazioni per archiviare e sincronizzare file e dati su più dispositivi. È una soluzione completamente locale per condividere e collaborare su documenti, gestire il calendario e inviare e ricevere e-mail.

Nextcloud ti offre il controllo e la protezione dei tuoi dati facilitando la comunicazione. Può consentire la produttività in quanto è possibile accedere, sincronizzare e condividere i dati esistenti su un'unità FTP su diversi dispositivi collegati a casa o in ufficio. Inoltre, la privacy dei dati è fondamentale e l'esecuzione di un server Nextcloud privato è un ottimo modo per iniziare.

Installazione di un server Nextcloud privato su Fedora 34

Questo tutorial dimostrerà come installare un server Nextcloud privato su un server basato su Fedora 34. Installeremo un server Web Apache, PHP 7.4 e un server e client MariaDB come prerequisiti.

Fase 1. Prerequisiti

Il primo passo è soddisfare i seguenti prerequisiti.

  • Un server che esegue Fedora. (Userò Fedora Workstation 34 per la dimostrazione)
  • Un utente sudo non root.
  • Aggiorna i tuoi pacchetti.
sudo dnf update
  • Pacchetti e dipendenze essenziali.
    È possibile che sul sistema siano già installati alcuni di questi pacchetti.

    dnf install wget curl bzip2 nano unzip policycoreutils-python-utils -y

Nota:se hai già configurato alcuni prerequisiti e pacchetti, puoi saltare questi passaggi.

Configurazione del firewall in Fedora

Il primo passaggio consiste nel configurare il firewall da Firewalld tramite la riga di comando. Nota che Firewalld viene preinstallato nei server Fedora.

Controlla lo stato del firewall per assicurarti che sia in esecuzione:

sudo firewall-cmd --state
running

Il passaggio successivo è consentire le porte HTTP e HTTPS.

Controlla i servizi e le porte consentiti:

sudo firewall-cmd --permanent --list-services
dhcpv6-client mdns samba-client ssh

Consenti porte HTTP e HTTPS.

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent –add-service=https

Controlla di nuovo i servizi e le porte consentiti.

sudo firewall-cmd --permanent --list-services
dhcpv6-client http https mdns samba-client ssh

Ricarica il firewall.

sudo systemctl reload firewalld

Installa il server Web Apache

Esegui il comando seguente con i privilegi sudo per installare il server web Apache.

dnf install httpd

Installa PHP

Il prossimo passo è installare PHP e altri moduli aggiuntivi. Se hai già PHP, assicurati che la versione PHP soddisfi i requisiti di Nextcloud.

dnf install php php-gd php-mbstring php-intl php-pecl-apcu php-mysqlnd php-pecl-redis php-opcache php-imagick php-zip php-process

Dopo aver installato PHP, abilita e avvia il server web Apache:

systemctl enable --now httpd

Controlla se PHP è in esecuzione.

php -version
PHP 7.4.19 (cli) (built: May 4 2021 11:06:37) ( NTS )
Copyright (c) The PHP Group

Installazione del server e del client MariaDB

Il server MariaDB è un sostituto drop-in di MySQL, il che significa che i comandi per eseguire e far funzionare MariaDB e MySQL sono gli stessi.

Controlla se hai un server MariaDB predefinito nel tuo server o installalo eseguendo il comando seguente.

dnf install mariadb mariadb-server

Abilita e avvia il server MariaDB:

systemctl enable --now mariadb

Esegui il comando mysql_secure_installation per proteggere il tuo server MariaDB.

Il comando eseguirà le configurazioni predefinite impostando la password di root, rimuovendo gli utenti anonimi, non consentendo l'accesso come root in remoto e eliminando le tabelle di test.

sudo mysql_secure_installation
[sudo] password for tuts:
Securing the MySQL server deployment.
Enter the password for user root:
The 'validate_password' component is installed.
>> The subsequent steps will run the existing configuration
of the component.
>> We are using an existing root password
Estimated strength of the password: 100
Change the password for root? ((Press YY | Y for Yes, any other key for No) : 
>>
By default, a MariaDB server installation has an anonymous user
>>> is intended only for testing.
Remove anonymous users? (Press Y y | Y for Yes, any other key for No) : y
Success.
Normally, 'root' should only be allowed to connect from
'localhost.' This ensures that someone cannot guess 
the root password from the network.
(ensure you read this policy while installing MariaDB server)
Disallow root login remotely? (Press Y y | y Y for Yes, any other key for No) : Y y
Success.
>>> (removing test database)
Remove test database and access to it? (Press Y y | Y for Yes, any other key for No) : y
>>> Dropping test database.
Success.
>>> Removing privileges on test database.
Success.
Reload privilege tables now? (Press Y y | Y for Yes, any other key for No) : y
Success. 
All done!

Crea un utente e un database dedicati per il server Nextcloud.

mysql -p

Crea il database "nextcloud".

mysql> create database nextcloud;

Crea un utente MySQL dedicato per gestire il database "nextcloud"

mysql> create user 'nextclouduser'@'localhost' identified by 'SeCrEttErCeS';

Concedi tutti i privilegi al database (nextcloud) all'utente (nextclouduser) che abbiamo creato.

mysql> grant all privileges on nextcloud_db.* to 'nextclouduser'@'localhost';

Elimina i privilegi per rendere effettive le modifiche apportate.

mysql> flush privileges;

Esci da MySQL Shell.

mysql> exit;

Configura i permessi di SELinux

Devi configurare SELinux/permissions per funzionare con Nextcloud.
Esegui i seguenti comandi per le impostazioni di base di SELinux. Questi dovrebbero funzionare con la tua installazione.

Assicurati di regolare i percorsi dei file in modo appropriato secondo il tuo sistema. Nel caso fossero diversi.

semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/config(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/apps(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/data(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/.user.ini'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/3rdparty/aws/aws-sdk-php/src/data/logs(/.*)?'
# restorecon -Rv '/var/www/html/nextcloud/'

Puoi imparare più comandi di SELinux che funzionano con Nextcloud nella configurazione di Nextcloud SELinux.

Passaggio 2. Installazione del server Nextcloud

Il nostro secondo passo è scaricare e installare Nextcloud. Vai al sito Web ufficiale e copia il link per il download del file zip.
Scarica e decomprimi l'archivio Nextcloud usando wget. Assicurati di incollare il link copiato dopo wget nel comando seguente.

wget https://download.nextcloud.com/server/releases/nextcloud-21.0.2.zip

Decomprimi l'archivio nella directory '/var/www/html/'.

unzip nextcloud-21.0.2.zip -d /var/www/html/

Il passaggio successivo consiste nel concedere ad Apache l'accesso in lettura e scrittura all'albero delle directory di Nextcloud:
Crea una cartella di dati nella directory '/var/www/html/nextcloud/'.

mkdir /var/www/html/nextcloud/data

Concedi ad Apache l'accesso in lettura e scrittura utilizzando Chown.

chown -R apache:apache /var/www/html/nextcloud

Passaggio 3. Configurazione del server Nextcloud

Puoi configurare Nextcloud tramite l'interfaccia web o la riga di comando.

Metodo 1:interfaccia web

Accedi a "http://your_server_ip/nextcloud" dal tuo browser web.
Nel nostro caso, il server è in esecuzione dal localhost;

http://localhost/nextcloud 
or
http://127.0.0.0/nextcloud

Metodo 2:riga di comando

Esegui il comando seguente per configurare Nexcloud dalla riga di comando.

sudo -u apache php occ maintenance:install --data-dir /var/www/html/nextcloud/data/ --database "mysql" --database-name "nextcloud" --database-user "nextclouduser" --database-pass "SeCrEttErCeS" --admin-user "admin" --admin-pass "AdMin_PAssWOrd"

Inserisci i dati di accesso dell'amministrazione e configura Nextcloud per il primo utilizzo.

Conclusione

Il limite di memoria PHP consigliato per Nextcloud è 512M. Puoi modificare la variabile memory_limit nel file di configurazione /etc/php.ini e riavviare il tuo servizio httpd.

La sicurezza è fondamentale e dovresti sempre configurare SELinux invece di disabilitarlo. Non è una buona idea disabilitare SELinux. La pratica consigliata è di averla sempre in modalità di esecuzione.

Ciò conclude la nostra dimostrazione sull'installazione di un server Nextcloud privato sul server Fedora 34. Se incontri difficoltà o problemi, sentiti libero di chiedere o aggiungere un commento.


Fedora
  1. Come installare Zend Server CE su Fedora 16 “Verne”

  2. Come installare NextCloud 13 su Ubuntu 16.04

  3. Come installare Nextcloud 14 su Debian 9

  4. Come installare NextCloud 15 su Ubuntu 18.04

  5. Come installare Localizza su un server Fedora

Come installare Vai su Fedora 35

Come installare Apache Server su Fedora 35

Come installare il server Fedora 33

Come installare Apache in Fedora 20

Come installare Apache su Fedora 22

Come installare Nginx su Fedora 22