GNU/Linux >> Linux Esercitazione >  >> Panels >> Panels

Installa Nextcloud 9 su Ubuntu 16.04

In questo articolo, ti mostreremo come installare Nextcloud 9 su un VPS Ubuntu 16.04 con MariaDB, PHP-FPM 7.0 e Nginx. Nextcloud è un'applicazione open source self-hosted per la sincronizzazione e la condivisione di file biforcata da ownCloud. Questa guida dovrebbe funzionare anche su altri sistemi VPS Linux, ma è stata testata e scritta per un VPS Ubuntu 16.04.

Abbiamo una versione aggiornata di questo tutorial su Come installare Nextcloud su Ubuntu 20.04

1. Accedi al tuo VPS tramite SSH con il tuo utente sudo

ssh user@vps_IP

2. Aggiorna il sistema e installa i pacchetti necessari

[user]$ sudo apt-get update && sudo apt-get -y upgrade
[user]$ sudo apt-get install software-properties-common nano wget

3. Installa MariaDB 10.1

Per aggiungere il repository MariaDB all'elenco delle fonti e installare l'ultimo server MariaDB 10.1, esegui i seguenti comandi:

[user]$ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
[user]$ sudo add-apt-repository 'deb [arch=amd64,i386] http://ftp.osuosl.org/pub/mariadb/repo/10.1/ubuntu xenial main'
[user]$ sudo apt-get update
[user]$ sudo apt-get install -y mariadb-server

Al termine dell'installazione, eseguire il comando seguente per proteggere l'installazione:

[user]$ mysql_secure_installation

Disabilita la registrazione binaria di MariaDB commentando le seguenti righe

[user]$ sudo nano /etc/mysql/my.cnf
#log_bin                = /var/log/mysql/mariadb-bin
#log_bin_index          = /var/log/mysql/mariadb-bin.index

Riavvia il servizio

[user]$ sudo service mysql restart

Successivamente, dobbiamo creare un database per l'installazione di Nextcloud.

[user]$ mysql -uroot -p
MariaDB [(none)]> CREATE DATABASE nextcloud;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost' IDENTIFIED BY 'strong_password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

4. Installa PHP e i moduli PHP richiesti

Per installare l'ultima versione stabile di PHP versione 7.0 e tutti i moduli necessari, esegui:

[user]$ sudo apt-get -y install php-fpm php-cli php-json php-curl php-imap php-gd php-mysql php-xml php-zip php-intl php-mcrypt php-imagick php-mbstring

I seguenti comandi imposteranno il limite di memoria PHP a 512 MB, modificheranno i valori di upload_max_filesize e post_max_size a 200 M e imposteranno il fuso orario su UTC.

[user]$ sed -i "s/memory_limit = .*/memory_limit = 512M/" /etc/php/7.0/fpm/php.ini
[user]$ sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.0/fpm/php.ini
[user]$ sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=1/" /etc/php/7.0/fpm/php.ini
[user]$ sed -i "s/upload_max_filesize = .*/upload_max_filesize = 200M/" /etc/php/7.0/fpm/php.ini
[user]$ sed -i "s/post_max_size = .*/post_max_size = 200M/" /etc/php/7.0/fpm/php.ini

Aggiungi le seguenti variabili di ambiente alla fine del file del pool PHP-FPM:

[user]$ sudo nano /etc/php/7.0/fpm/pool.d/www.conf
env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp

Riavvia PHP-FPM:

[user]$ sudo service php7.0-fpm restart

5. Scarica ed estrai Nextcloud 9

Installeremo Nextcloud nel /var/www/nextcloud directory. Scarica l'ultima versione di Nextcloud dal sito Web Nextcloud:

[user]$ wget https://download.nextcloud.com/server/releases/nextcloud-9.0.52.zip
[user]$ unzip nextcloud-9.0.52.zip
[user]$ sudo mkdir /var/www/
[user]$ sudo mv nextcloud /var/www/
[user]$ rm -f nextcloud-9.0.52.zip
[user]$ sudo chown -R www-data: /var/www/nextcloud

6. Installa e configura Nginx

Per installare l'ultima versione stabile di Nginx disponibile sui repository di Ubuntu, esegui:

[user]$ sudo apt-get install nginx-extras nginx

Il pacchetto nginx-extras fornisce una versione di nginx con i moduli standard, più extra funzionalità e moduli come nginx cache purge modulo.

Genera un certificato SSL autofirmato:

[user]$ sudo mkdir -p /etc/nginx/ssl
[user]$ cd /etc/nginx/ssl
[user]$ sudo openssl genrsa -des3 -passout pass:x -out nextcloud.pass.key 2048
[user]$ sudo openssl rsa -passin pass:x -in nextcloud.pass.key -out nextcloud.key
[user]$ sudo rm nextcloud.pass.key
[user]$ sudo openssl req -new -key nextcloud.key -out nextcloud.csr
[user]$ sudo openssl x509 -req -days 365 -in nextcloud.csr -signkey nextcloud.key -out nextcloud.crt

Se non desideri ricevere avvisi associati ai certificati SSL autofirmati, puoi acquistare un certificato SSL affidabile qui.

Quindi, crea un nuovo blocco del server Nginx:

[user]$ sudo nano /etc/nginx/sites-available/nextcloud
server {
    listen 80;
    server_name my.nextcloud.com;
    return 301 https://$server_name$request_uri;
}
server {
    listen 443 ssl http2;
    server_name my.nextcloud.com;
    root /var/www/nextcloud;

    ssl on;
    ssl_certificate     /etc/nginx/ssl/nextcloud.crt;
    ssl_certificate_key /etc/nginx/ssl/nextcloud.key;
    ssl_session_timeout 5m;
    ssl_ciphers               'AES128+EECDH:AES128+EDH:!aNULL';
    ssl_protocols              TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;

    add_header X-Content-Type-Options nosniff;
    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Robots-Tag none;
    add_header X-Download-Options noopen;
    add_header X-Permitted-Cross-Domain-Policies none;

    access_log  /var/log/nginx/nextcloud.access.log;
    error_log   /var/log/nginx/nextcloud.error.log;

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

    location = /.well-known/carddav { 
        return 301 $scheme://$host/remote.php/dav; 
    }
    location = /.well-known/caldav { 
        return 301 $scheme://$host/remote.php/dav; 
    }

    client_max_body_size 512M;
    fastcgi_buffers 64 4K;
    gzip off;

    error_page 403 /core/templates/403.php;
    error_page 404 /core/templates/404.php;

    location / {
        rewrite ^ /index.php$uri;
    }

    location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
        deny all;
    }

    location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) {
        deny all;
    }

    location ~^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+|core/templates/40[34])\.php(?:$|/) {
        include fastcgi_params;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        fastcgi_param HTTPS on;
        #Avoid sending the security headers twice
        fastcgi_param modHeadersAvailable true;
        fastcgi_param front_controller_active true;
        fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
        fastcgi_intercept_errors on;
        fastcgi_request_buffering off;
    }

    location ~ ^/(?:updater|ocs-provider)(?:$|/) {
        try_files $uri/ =404;
        index index.php;
    }

    location ~* \.(?:css|js)$ {
        try_files $uri /index.php$uri$is_args$args;
        add_header Cache-Control "public, max-age=7200";
        add_header X-Content-Type-Options nosniff;
        add_header X-Frame-Options "SAMEORIGIN";
        add_header X-XSS-Protection "1; mode=block";
        add_header X-Robots-Tag none;
        add_header X-Download-Options noopen;
        add_header X-Permitted-Cross-Domain-Policies none;
        # Optional: Don't log access to assets
        access_log off;
    }

    location ~* \.(?:svg|gif|png|html|ttf|woff|ico|jpg|jpeg)$ {
        try_files $uri /index.php$uri$is_args$args;
        access_log off;
    }

    location ~ /\.ht {
        deny all;
    }

}

Attiva il blocco del server creando un collegamento simbolico :

[user]$ sudo ln -s /etc/nginx/sites-available/nextcloud /etc/nginx/sites-enabled/nextcloud

Testare la configurazione di Nginx e riavviare nginx:

[user]$ sudo nginx -t
[user]$ sudo service nginx restart

7. Installa Nextcloud 9

Apri https://my.nextcloud.com/install.php nel tuo browser web preferito e dovresti vedere la schermata di installazione di Nextcloud 9. In questa pagina dovrai inserire i dettagli del database che hai creato in precedenza, i dettagli dell'amministratore di Nextcloud 9 e infine fare clic sul pulsante Installa.

Questo è tutto. Hai installato con successo Nextcloud 9 sul tuo Ubuntu 16.04 VPS. Per ulteriori informazioni su come gestire l'installazione di Nextcloud 9, fare riferimento alla documentazione ufficiale di Nextcloud 9.

Ovviamente non devi installare Nextcloud 9 su Ubuntu 16.04, se utilizzi uno dei nostri servizi di Hosting Nextcloud, nel qual caso puoi semplicemente chiedere ai nostri esperti amministratori Linux di configurarlo per te. Sono disponibili 24 ore su 24, 7 giorni su 7 e si prenderanno immediatamente cura della tua richiesta. Per ulteriori aggiornamenti, puoi anche leggere il nostro post su Come installare NextCloud 14 su Ubuntu 16.04.

PS . Se ti è piaciuto questo post, su come installare Nextcloud 9 su Ubuntu 16.04, condividilo con i tuoi amici sui social network utilizzando i pulsanti a sinistra o semplicemente lascia una risposta qui sotto. Grazie.


Panels
  1. Installa Cockpit su Ubuntu 16.04

  2. Come installare Koken su Ubuntu

  3. Come installare Wekan su Ubuntu 14.04

  4. Come installare Pimcore su Ubuntu

  5. Installa Miniflux su Ubuntu 14.04

Come installare Koel su Ubuntu 14.04

Come installare YOURLS su Ubuntu 14.04

Come installare CubeCart su Ubuntu 14.04

Come installare Zenphoto su Ubuntu 14.04

Installa Flarum su un VPS Ubuntu 14.04

COME INSTALLARE NEXTCLOUD SU UBUNTU?