GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Panels

Installieren Sie Nextcloud 9 auf Ubuntu 16.04

In diesem Artikel zeigen wir Ihnen, wie Sie Nextcloud 9 auf einem Ubuntu 16.04 VPS mit MariaDB, PHP-FPM 7.0 und Nginx installieren. Nextcloud ist eine selbst gehostete Open-Source-Anwendung zum Synchronisieren und Teilen von Dateien, die von ownCloud gegabelt wurde. Diese Anleitung sollte auch auf anderen Linux VPS-Systemen funktionieren, wurde aber für einen Ubuntu 16.04 VPS getestet und geschrieben.

Wir haben eine aktualisierte Version dieses Tutorials zum Installieren von Nextcloud unter Ubuntu 20.04

1. Melden Sie sich über SSH mit Ihrem sudo-Benutzer

bei Ihrem VPS an
ssh user@vps_IP

2. Aktualisieren Sie das System und installieren Sie die erforderlichen Pakete

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

3. Installieren Sie MariaDB 10.1

Führen Sie die folgenden Befehle aus, um das MariaDB-Repository zu Ihrer Quellenliste hinzuzufügen und den neuesten MariaDB 10.1-Server zu installieren:

[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

Führen Sie nach Abschluss der Installation den folgenden Befehl aus, um Ihre Installation zu sichern:

[user]$ mysql_secure_installation

Deaktivieren Sie die MariaDB-Binärprotokollierung, indem Sie die folgenden Zeilen kommentieren

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

Starten Sie den Dienst neu

[user]$ sudo service mysql restart

Als nächstes müssen wir eine Datenbank für die Nextcloud-Installation erstellen.

[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. Installieren Sie PHP und erforderliche PHP-Module

Führen Sie Folgendes aus, um die neueste stabile Version von PHP Version 7.0 und alle erforderlichen Module zu installieren:

[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

Die folgenden Befehle setzen das PHP-Speicherlimit auf 512 MB, ändern die Werte von upload_max_filesize und post_max_size auf 200 MB und setzen die Zeitzone auf 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

Fügen Sie die folgenden Umgebungsvariablen am Ende der PHP-FPM-Pooldatei hinzu:

[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

Starten Sie PHP-FPM neu:

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

5. Laden Sie Nextcloud 9 herunter und extrahieren Sie es

Wir werden Nextcloud im Verzeichnis /var/www/nextcloud installieren Verzeichnis. Laden Sie die neueste Version von Nextcloud von der Nextcloud-Website herunter:

[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. Nginx installieren und konfigurieren

Um die neueste stabile Version von Nginx zu installieren, die in den Ubuntu-Repositories verfügbar ist, führen Sie Folgendes aus:

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

Das Paket nginx-extras stellt eine Version von nginx bereit mit den Standardmodulen plus extra Funktionen und Module wie nginx cache purge Modul.

Generieren Sie ein selbstsigniertes SSL-Zertifikat:

[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

Wenn Sie keine Warnungen im Zusammenhang mit selbstsignierten SSL-Zertifikaten erhalten möchten, können Sie hier ein vertrauenswürdiges SSL-Zertifikat erwerben.

Erstellen Sie als Nächstes einen neuen Nginx-Serverblock:

[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;
    }

}

Aktivieren Sie die Serversperre, indem Sie einen symbolischen Link erstellen :

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

Testen Sie die Nginx-Konfiguration und starten Sie nginx neu:

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

7. Installiere Nextcloud 9

Öffnen Sie https://my.nextcloud.com/install.php in Ihrem bevorzugten Webbrowser und Sie sollten den Installationsbildschirm von Nextcloud 9 sehen. Auf dieser Seite müssen Sie die zuvor erstellten Datenbankdetails und die Nextcloud 9-Administratordetails eingeben und schließlich auf die Schaltfläche „Installieren“ klicken.

Das ist es. Sie haben Nextcloud 9 erfolgreich auf Ihrem Ubuntu 16.04 VPS installiert. Weitere Informationen zur Verwaltung Ihrer Nextcloud 9-Installation finden Sie in der offiziellen Nextcloud 9-Dokumentation.

Natürlich müssen Sie Nextcloud 9 nicht auf Ubuntu 16.04 installieren, wenn Sie einen unserer Nextcloud-Hosting-Dienste nutzen. In diesem Fall können Sie einfach unsere erfahrenen Linux-Administratoren bitten, dies für Sie einzurichten. Sie sind 24×7 erreichbar und kümmern sich umgehend um Ihr Anliegen. Für weitere Updates können Sie auch unseren Beitrag zur Installation von NextCloud 14 auf Ubuntu 16.04 lesen.

PS . Wenn Ihnen dieser Beitrag über die Installation von Nextcloud 9 auf Ubuntu 16.04 gefallen hat, teilen Sie ihn bitte mit Ihren Freunden in den sozialen Netzwerken über die Schaltflächen auf der linken Seite oder hinterlassen Sie einfach unten eine Antwort. Danke.


Panels
  1. Installieren Sie Mautic auf Ubuntu 14.04

  2. So installieren Sie Sonerezh unter Ubuntu 14.04

  3. Installieren Sie Magento 2 auf einem Ubuntu 14.04 VPS

  4. Installieren Sie CandyCane auf einem Ubuntu 14.04 VPS

  5. So installieren Sie Pixie unter Ubuntu 14.04

So installieren Sie Pimcore auf Ubuntu

Installieren Sie Miniflux auf Ubuntu 14.04

So installieren Sie ImpressCMS unter Ubuntu 14.04

Installieren Sie Microweber auf Ubuntu 14.04

Installieren Sie Grav CMS auf Ubuntu

WIE INSTALLIERE ICH NEXTCLOUD AUF UBUNTU?