Vai al contenuto principale

Configura Nextcloud su un Server Linux - Crea il Tuo Cloud Privato

I prodotti ideali per questa guida

Inizia subito — ordina il prodotto adatto e segui questa guida passo dopo passo.

Introduzione

Nextcloud è una soluzione cloud open source e fork di Owncloud, fondata nel 2016 dall’ex creatore di Owncloud Frank Kalitschek.

Per ottenere prestazioni, stabilità e funzionalità ottimali, si consiglia la seguente configurazione per ospitare un server Nextcloud. Il server Nextcloud non è compatibile con Windows e MacOS. Almeno non senza ulteriori virtualizzazioni o workaround simili.

Preparazione

I seguenti requisiti sono raccomandati dagli sviluppatori e basati sulla nostra esperienza. Potresti incontrare problemi se non rispetti questi prerequisiti.

Hardware

ComponentiMinimoConsigliato
CPU2x 1 GHz4x 2+ GHz
RAM512 MB4+ GB
Storage10 GB50+ GB
Banda100 mbit/s (up & down)500 mbit/s (up & down) Consigliato se più utenti devono usare il cloud

Software

PiattaformaOpzioni
Sistema OperativoUbuntu (14.04, 16.04, 18.04), Debian (8,9,10), CentOS 6.5/7
DatabaseMySQL o MariaDB 5.5+ (consigliato), SQLite (solo per test e installazioni minime)
Web serverApache 2.4 con mod_php o php-fpm (consigliato)
PHP5.6, 7.0 (consigliato), 7.1 (consigliato), 7.2

Per installare il cloud su un server Linux, devi connetterti tramite un client SSH. Se non sai come usare SSH, ecco una guida: Accesso iniziale (SSH)

Una volta stabilita la connessione, puoi iniziare a installare i pacchetti necessari per l’installazione di Nextcloud. Questo include l’installazione di un web server e PHP.


Apache (Web server)

🗄️ Debian 8/9/10:

sudo apt update && sudo apt -y upgrade
sudo apt -y install apache2

PHP (Hypertext Preprocessor)

🗄️ Debian 8:

# Passo 1: Aggiungi il repository PPA di PHP 7.3
sudo apt -y install lsb-release apt-transport-https ca-certificates
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php7.3.list

# Passo 2: Installa PHP 7.3
sudo apt -y install php7.3

# Passo 3: Installa le estensioni PHP 7.3
sudo apt install php7.3-cli php7.3-fpm php7.3-json php7.3-pdo php7.3-mysql php7.3-zip php7.3-gd php7.3-mbstring php7.3-curl php7.3-xml php7.3-bcmath php7.3-json

🗄️ Debian 9:

# Passo 1: Aggiungi il repository PPA di PHP 7.3
sudo apt -y install lsb-release apt-transport-https ca-certificates
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php7.3.list

# Passo 2: Installa PHP 7.3
sudo apt -y install php7.3

# Passo 3: Installa le estensioni PHP 7.3
sudo apt install php7.3-cli php7.3-fpm php7.3-json php7.3-pdo php7.3-mysql php7.3-zip php7.3-gd php7.3-mbstring php7.3-curl php7.3-xml php7.3-bcmath php7.3-json

🗄️ Debian 10:

# Passo 1: Installa PHP 7.3
sudo apt -y install php php-common

# Passo 2: Installa le estensioni PHP 7.3
sudo apt -y install php-cli php-fpm php-json php-pdo php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath

Controlla la versione PHP per verificarne il funzionamento

php -v

Il passo successivo è definire il tipo di database per memorizzare le informazioni rilevanti. Ci sono diverse opzioni:


Se hai deciso di usare questo tipo di database, segui questi passaggi:

Installazione pacchetti:

sudo apt-get install mariadb-server php-mysql

Durante l’installazione ti verrà chiesto di impostare una password root. Se non viene richiesta, la password di default è vuota. Questo non è sicuro e va cambiato subito dopo!

Il passo successivo è connettersi al server database e creare il database richiesto:

mysql -u root -p
CREATE DATABASE nextcloud;

Poi devi creare un utente che abbia accesso al database Nextcloud.

CREATE USER 'nc_user'@'localhost' IDENTIFIED BY 'YOUR_PASSWORD_HERE';
informazioni

Non saltare questo passaggio usando l’utente root. Non è sicuro e può mettere a rischio i tuoi dati!

L’ultimo passo è assegnare i permessi al nuovo utente:

GRANT ALL PRIVILEGES ON nextcloud.* TO 'nc_user'@'localhost';
FLUSH PRIVILEGES;

Quando hai finito, premi Ctrl-D per uscire dal database e continua con i passaggi successivi.

Installazione

Ora puoi iniziare l’installazione vera e propria di Nextcloud. Il software va scaricato e scompattato:

cd /var/www/
wget https://download.nextcloud.com/server/releases/latest.zip
apt-get install unzip
unzip latest.zip
chown -R www-data:www-data nextcloud
rm latest.zip

Una volta completato questo passaggio, è il momento di eseguire lo script di installazione. Puoi accedervi via browser tramite questo URL:

Apparirà la configurazione dello script di installazione, dove potrai creare un utente root e definire le informazioni del database:

Sicurezza e protezione

Avvisi di configurazione

Cartella dati

È fortemente consigliato posizionare la cartella dati fuori dalla root web (cioè fuori da /var/www). Il modo più semplice è farlo durante una nuova installazione. La cartella può essere definita durante la configurazione, ma deve essere creata prima e avere i permessi corretti. Ad esempio, i dati possono essere salvati in una cartella chiamata Cloud nella home directory.

mkdir /home/cloud/
chown -R www-data:www-data /home/cloud/

HTTPS tramite certificato SSL (Let's Encrypt)

Una buona soluzione cloud dovrebbe essere accessibile solo tramite connessione SSL. Senza crittografia SSL, dati e informazioni viaggiano in chiaro. Queste info possono essere intercettate e lette facilmente senza crittografia.

<IfModule mod_ssl.c>
<VirtualHost *:443>
DocumentRoot "/var/www/nextcloud"
ServerName domain.tld

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

<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
Satisfy Any

</Directory>

SSLCertificateFile /etc/letsencrypt/live/domain.tld/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domain.tld/privkey.pem
</VirtualHost>
</IfModule>

<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=15768000; preload"
</IfModule>

Inoltre, tutto il traffico HTTP dovrebbe essere reindirizzato a HTTPS usando un redirect permanente con codice 301. Puoi farlo con Apache usando una configurazione come questa:

<VirtualHost *:80>
ServerName domain.tld
Redirect permanent / https://domain.tld/
</VirtualHost>

Gestisci Nextcloud

Puoi accedere a Nextcloud via browser, smartphone o computer usando l’app. Le fonti per il download le trovi qui: https://nextcloud.com/install/#install-clients

Nelle impostazioni puoi modificare altre opzioni anche dopo l’installazione e vedere info importanti come log e attività. Ci sono anche impostazioni di sicurezza extra (autenticazione a due fattori, crittografia, ...), personalizzazione grafica (logo, colori, slogan, header), impostazioni di accesso e molto altro.

App

In più, puoi installare app aggiuntive oltre a quelle di default. Le trovi nel menu App.

Con queste App puoi personalizzare Nextcloud ancora di più a tuo piacimento.

Conclusione

Congratulazioni, hai installato Nextcloud con successo! Se hai altre domande o problemi, il nostro supporto è sempre pronto ad aiutarti ogni giorno!