Questo tutorial ti mostrerà come installare NextCloud su Debian 9 con lo stack LAMP. NextCloud è una soluzione di archiviazione cloud self-hosted gratuita e open source, che fornisce un'alternativa ai servizi di archiviazione cloud di terze parti come Dropbox.
Prerequisiti
Per seguire questo tutorial, hai bisogno di quanto segue:
- Un Debian 9 VPS (Virtual Private Server) o un computer Debian locale
- Stack LAMP installato su Debian 9.
- Un nome di dominio.
Fase 1:scarica NextCloud
Scarica l'archivio zip del server NextCloud sul tuo sistema Debian 9 con il seguente comando. L'ultima versione stabile è la 12.0.2 al momento della stesura di questo documento.
wget https://download.nextcloud.com/server/releases/nextcloud-12.0.2.zip
Potrebbe esserci una versione più recente quando segui questo tutorial. Vai a https://nextcloud.com/install
e fare clic sul pulsante di download per controllare l'ultima versione. Per ottenere il link per il download di NextCloud, fai semplicemente clic con il pulsante destro del mouse su Download NextCloud
e seleziona Copy Link Location
come mostrato nello screenshot qui sotto.
Estrailo in /var/www/
directory con unzip
.
sudo apt install unzip sudo unzip nextcloud-12.0.2.zip -d /var/www/
Ora creiamo www-data
(Utente Apache) in qualità di proprietario di /var/www/nextcloud/
.
sudo chown www-data:www-data /var/www/nextcloud -R
Fase 2:crea un database e un utente in MariaDB
Accedi al server del database di MariaDB con il seguente comando:
sudo mariadb -u root
Quindi crea un database per NextCloud usando il comando MariaDB di seguito. Questo tutorial nomina il database nextcloud
. Puoi usare il nome che preferisci. Non tralasciare il punto e virgola alla fine.
create database nextcloud;
Quindi crea un utente separato. Anche in questo caso, puoi utilizzare il tuo nome preferito per questo utente. Sostituisci your-password
con la tua password preferita.
grant all privileges on nextcloud.* to nextclouduser@localhost identified by 'your-password';
Il comando precedente creerà l'utente e garantirà tutti i privilegi. Ora svuota i privilegi di MariaDB ed esci.
flush privileges; exit;
Fase 3:abilita la registrazione binaria in MariaDB
Modifica il file di configurazione di MariaDB.
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
Aggiungi le seguenti tre righe in [mysqld]
sezione.
log-bin = /var/log/mysql/mariadb-bin log-bin-index = /var/log/mysql/mariadb-bin.index binlog_format = mixed
Il formato del log binario deve essere mixed
. Salva e chiudi il file. Quindi riavvia il servizio MariaDB.
sudo systemctl restart mariadb
Ora il log binario è abilitato in MariaDB.
Fase 4:crea un file host virtuale Apache per Nextcloud
Creeremo un nextcloud.conf
file in /etc/apache2/sites-available
directory.
sudo nano /etc/apache2/sites-available/nextcloud.conf
Copia e incolla le seguenti righe nel file. Sostituisci il testo rosso con il tuo nome di dominio effettivo. Devi anche puntare il tuo nome di dominio all'indirizzo IP del tuo server Debian 9 in DNS.
<VirtualHost *:80> DocumentRoot "/var/www/nextcloud" ServerName nextcloud.your-domain.com 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> </VirtualHost>
Salva e chiudi il file. Quindi abilita questo host virtuale usando il comando seguente.
sudo a2ensite nextcloud
Abbiamo anche bisogno di abilitare alcuni moduli Apache.
sudo a2enmod rewrite headers env dir mime setenvif ssl
Installa i moduli PHP necessari.
sudo apt install php7.0-common php7.0-mysql php7.0-gd php7.0-json php7.0-curl php7.0-zip php7.0-xml php7.0-mbstring
Riavvia Apache in modo che i moduli Apache e PHP di cui sopra possano essere caricati.
sudo systemctl restart apache2
Fase 5:abilitazione di HTTPS
Ora puoi accedere alla procedura guidata di installazione web di Nextcloud nel tuo browser inserendo il nome di dominio per la tua installazione di Nextcloud.
nextcloud.your-domain.com
Prima di inserire qualsiasi informazione sensibile, dovremmo abilitare la connessione HTTPS sicura su Nextcloud. Possiamo ottenere un certificato TLS gratuito da Let's Encrypt.
Installa il client certbot (Let's Encrypt) dal repository Debian 9.
sudo apt install certbot python-certbot-apache
Ora emetti il seguente comando per ottenere un certificato TLS/SSL gratuito. Sostituisci il testo di colore rosso con i tuoi dati effettivi.
sudo certbot --apache --agree-tos --redirect --hsts --email your-email-address -d nextcloud.your-domain.com
Spiegazione:
- –apache :usa il plugin di apache.
- –accetto :accetta i termini di servizio.
- –reindirizzamento :reindirizza automaticamente tutto il traffico HTTP su HTTPS.
- –hsts :aggiungi l'intestazione Strict-Transport-Security.
Entro pochi secondi, vedrai un messaggio come di seguito, il che significa che il certificato TLS è stato ottenuto e installato correttamente. La configurazione TLS ottiene un punteggio A nel test SSL.
Completa l'installazione nel tuo browser web
Ora nella barra degli indirizzi del tuo browser web, digita il tuo nome di dominio NextCloud. Vedrai che viene reindirizzato automaticamente a https.
nextcloud.your-domain.com
Dovrai creare un account amministratore. La cartella dei dati è il luogo in cui vengono archiviati i file dell'utente. Per motivi di sicurezza, è meglio posizionare la directory dei dati al di fuori della radice web di Nextcloud, ad esempio /var/www/nextcloud-data . che può essere creato con il seguente comando:
sudo mkdir /var/www/nextcloud-data/
Quindi assicurati che l'utente Apache (www-data
) dispone dell'autorizzazione di scrittura nella directory dei dati.
sudo chown www-data:www-data /var/www/nextcloud-data -R
Quindi inserisci il nome utente del database, il nome del database e la password che hai creato in precedenza per connettere Nextcloud al database MariaDB.
Al termine, vedrai l'interfaccia Web di Nextcloud. Congratulazioni! Ora puoi iniziare a usarlo come spazio di archiviazione cloud privato.
Spero che questo tutorial ti abbia aiutato a installare NextCloud su Debian 9 con lo stack LAMP. Come sempre, se hai trovato utile questo post, iscriviti alla nostra newsletter gratuita per ricevere nuovi tutorial.