GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie FileRun unter Ubuntu 20.04 mit Apache/Nginx

fDieses Tutorial zeigt Ihnen, wie Sie FileRun installieren auf Ubuntu 20.04 LTS mit Apache/Nginx-Webserver. FileRun ist eine selbst gehostete Alternative zu Google Drive/Fotos/Musik.

FileRun-Funktionen

  • Es ist kein Index erforderlich. Es kann direkt auf Dateien im Dateisystem zugreifen.
  • Kompatibel mit NextCloud.
  • Automatische Dateiversionierung.
  • 100 % markenfähig. Laden Sie Ihr eigenes Logo hoch.
  • Erweiterbar. Es gibt viele Plugins, mit denen Sie Office-Dateien, CAD-Dateien usw. erstellen und bearbeiten können
  • Gastbenutzer.
  • Organisieren, synchronisieren und teilen Sie Ihre Fotos.
  • Integrierter Musikplayer und Organizer

Anforderungen

Um diesem Tutorial zu folgen, benötigen Sie einen Domänennamen und einen Server. Ich habe meinen Domainnamen bei NameCheap registriert, weil der Preis niedrig ist und sie Whois-Datenschutz lebenslang kostenlos bieten. Ein Server mit 1 GB RAM reicht aus, um FileRun auszuführen. Sobald Sie einen Server haben, installieren Sie Ubuntu darauf und folgen Sie den Anweisungen unten.

FileRun ist in PHP geschrieben und verwendet eine MySQL/MariaDB-Datenbank. Um diesem Tutorial zu folgen, wird davon ausgegangen, dass Sie den LAMP- oder LEMP-Stack bereits unter Ubuntu 20.04 eingerichtet haben. Falls nicht, sehen Sie sich bitte eines der folgenden Tutorials an:

  • So installieren Sie den LAMP-Stack auf einem Ubuntu 20.04-Server
  • So installieren Sie den LEMP-Stack auf einem Ubuntu 20.04-Server

Wenn Sie mit dem Einrichten des LAMP- oder LEMP-Stacks fertig sind, kommen Sie hierher zurück und lesen Sie weiter.

Schritt 1:Laden Sie FileRun auf Ubuntu 20.04 herunter

Melden Sie sich über SSH bei Ihrem Server an. Sie können jederzeit den folgenden Befehl verwenden, um die neueste Version von FileRun auf Ihren Server herunterzuladen.

wget -O FileRun.zip https://filerun.com/download-latest

Entpacken Sie das Archiv nach dem Herunterladen mit unzip .

sudo apt install unzip

sudo mkdir -p /var/www/filerun/

sudo unzip FileRun.zip -d /var/www/filerun/

Das -d Option gibt das Zielverzeichnis an. FileRun-Webdateien werden nach /var/www/filerun/ extrahiert . Dann müssen wir den Eigentümer dieses Verzeichnisses auf www-data ändern damit der Webserver in dieses Verzeichnis schreiben kann.

sudo chown www-data:www-data /var/www/filerun/ -R

Schritt 2:Erstellen Sie eine Datenbank und einen Benutzer in MariaDB

Melden Sie sich mit dem folgenden Befehl beim MariaDB-Datenbankserver an.

sudo mysql

Alternativ können Sie sich auch mit diesem Befehl anmelden.

sudo mariadb

Erstellen Sie dann eine Datenbank für FileRun. Dieses Tutorial nennt die Datenbank filerun . Sie können einen beliebigen Namen verwenden.

create database filerun;

Erstellen Sie den Datenbankbenutzer. Auch hier können Sie Ihren bevorzugten Namen für diesen Benutzer verwenden. Ersetzen Sie your-password mit Ihrem bevorzugten Passwort.

create user filerun@localhost identified by 'your-password';

Gewähren Sie diesem Benutzer alle Berechtigungen für filerun Datenbank.

grant all privileges on filerun.* to filerun@localhost;

Berechtigungen leeren und beenden.

flush privileges;

exit;

Schritt 3:Apache- oder Nginx-Konfigurationsdatei erstellen

Apache

Wenn Sie den Apache-Webserver bevorzugen, erstellen Sie eine virtuelle Host-Konfigurationsdatei in /etc/apache2/sites-available/ Verzeichnis.

sudo nano /etc/apache2/sites-available/filerun.conf

Fügen Sie den folgenden Text in die Datei ein. Ersetzen Sie filerun.example.com mit eigenem Domainnamen. Vergessen Sie nicht, in Ihrem DNS-Manager einen Eintrag für den Domainnamen festzulegen.

<VirtualHost *:80>
        ServerName filerun.example.com

        DocumentRoot /var/www/filerun

        <Directory "/var/www/filerun">
                Options Indexes FollowSymLinks
                AllowOverride All
                Require all granted
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/filerun.error.log
        CustomLog ${APACHE_LOG_DIR}/filerun.access.log combined
</VirtualHost>

Speichern und schließen Sie die Datei. Aktivieren Sie dann das rewrite Modul.

sudo a2enmod rewrite

Aktivieren Sie dann diesen virtuellen Host.

sudo a2ensite filerun.conf

Starten Sie den Apache-Webserver neu, damit die Änderung wirksam wird.

sudo systemctl restart apache2

Nginx

Wenn Sie den Nginx-Webserver bevorzugen, erstellen Sie eine filerun.conf Datei in /etc/nginx/conf.d/ Verzeichnis.

sudo nano /etc/nginx/conf.d/filerun.conf

Fügen Sie den folgenden Text in die Datei ein. Ersetzen Sie filerun.example.com mit eigenem Domainnamen. Vergessen Sie nicht, in Ihrem DNS-Manager einen Eintrag für den Domainnamen festzulegen.

server {
    listen [::]:80;
    listen 80;
    server_name filerun.example.com;

    access_log /var/log/nginx/filerun.access.log;
    error_log /var/log/nginx/filerun.error.log;
  
    root /var/www/filerun/;
    index index.php index.html;

   location / {
      try_files $uri $uri/ /index.php;
    }

    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;

    client_max_body_size 500M;

    location = /50x.html {
      root /usr/share/nginx/html;
    }

    location ~ \.php$ {
      fastcgi_pass unix:/run/php/php7.4-fpm.sock;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include fastcgi_params;
      include snippets/fastcgi-php.conf;
    }

    #enable gzip compression
    gzip on;
    gzip_vary on;
    gzip_min_length 1000;
    gzip_comp_level 5;
    gzip_types application/json text/css application/x-javascript application/javascript image/svg+xml;
    gzip_proxied any;

    # A long browser cache lifetime can speed up repeat visits to your page
    location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
         access_log        off;
         log_not_found     off;
         expires           360d;
    }

    # disable access to hidden files
    location ~ /\.ht {
        access_log off;
        log_not_found off;
        deny all;
    }
}

Speichern und schließen Sie die Datei. Testen Sie die Nginx-Konfiguration und laden Sie dann Nginx neu, damit die Änderungen wirksam werden.

sudo nginx -t

sudo systemctl reload nginx

Schritt 4:PHP-Module installieren und aktivieren

Führen Sie die folgenden Befehle aus, um PHP-Module zu installieren, die von FileRun benötigt oder empfohlen werden.

sudo apt install imagemagick ffmpeg php-imagick php7.4-mysql php7.4-fpm php7.4-common php7.4-gd php7.4-json php7.4-curl  php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl

Filerun verwendet ionCube, um seine PHP-Datei zu verschlüsseln, daher müssen wir den ionCube-PHP-Loader installieren, um die PHP-Dateien zu entschlüsseln. Laden Sie ionCube-Loader herunter.

wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

Extrahieren Sie es nach /usr/lib/php/ .

sudo tar -xzf ioncube_loaders_lin_x86-64.tar.gz -C /usr/lib/php

Jetzt müssen wir die ioncube PHP-Erweiterung aktivieren.

Apache

Wenn Sie Apache verwenden , erstellen Sie dann die PHP-INI-Datei für ionCube.

sudo nano /etc/php/7.4/apache2/conf.d/00-ioncube.ini

Fügen Sie dieser Datei die folgende Zeile hinzu.

zend_extension = /usr/lib/php/ioncube/ioncube_loader_lin_7.4.so

Speichern und schließen Sie die Datei. Wir müssen eine zweite PHP-INI-Datei erstellen.

sudo nano /etc/php/7.4/apache2/conf.d/filerun.ini

Fügen Sie die folgenden Zeilen hinzu. Dies dient dazu, einige der Standard-PHP-Konfigurationen zu ändern.

expose_php = Off
error_reporting = E_ALL & ~E_NOTICE
display_errors = Off
display_startup_errors = Off
log_errors = On
ignore_repeated_errors = Off
allow_url_fopen = On
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = On
memory_limit = 128M
max_execution_time = 300
output_buffering = Off
output_handler = ""
zlib.output_compression = Off
zlib.output_handler = ""
safe_mode = Off
register_globals = Off
magic_quotes_gpc = Off
upload_max_filesize = 20M
post_max_size = 20M
enable_dl = Off
disable_functions = ""
disable_classes = ""
session.save_handler = files
session.use_cookies = 1
session.use_only_cookies = 1
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_httponly = 1
date.timezone = "UTC"

Speichern und schließen Sie die Datei. Laden Sie Apache neu, damit die Änderungen wirksam werden.

sudo systemctl reload apache2

Nginx

Wenn Sie Nginx verwenden , bearbeiten Sie die php.ini Datei.

sudo nano /etc/php/7.4/fpm/php.ini

Fügen Sie die folgende Zeile direkt unter [PHP] hinzu Linie.

zend_extension=/usr/lib/php/ioncube/ioncube_loader_lin_7.4.so

Speichern und schließen Sie die Datei. Wir müssen eine zweite PHP-INI-Datei erstellen.

sudo nano /etc/php/7.4/fpm/conf.d/10-ioncube.ini

Fügen Sie die folgenden Zeilen hinzu. Dies dient dazu, einige der Standard-PHP-Konfigurationen zu ändern.

expose_php = Off
error_reporting = E_ALL & ~E_NOTICE
display_errors = Off
display_startup_errors = Off
log_errors = On
ignore_repeated_errors = Off
allow_url_fopen = On
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = On
memory_limit = 128M
max_execution_time = 300
output_buffering = Off
output_handler = ""
zlib.output_compression = Off
zlib.output_handler = ""
safe_mode = Off
register_globals = Off
magic_quotes_gpc = Off
upload_max_filesize = 20M
post_max_size = 20M
enable_dl = Off
disable_functions = ""
disable_classes = ""
session.save_handler = files
session.use_cookies = 1
session.use_only_cookies = 1
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_httponly = 1
date.timezone = "UTC"

Speichern und schließen Sie die Datei. Starten Sie dann Nginx und PHP7.4-FPM neu.

sudo systemctl restart nginx php7.4-fpm

Jetzt sollten Sie den webbasierten Installationsassistenten von FileRun unter http://filerun.example.com aufrufen können , aber bevor Sie Informationen eingeben, aktivieren wir HTTPS.

Schritt 5:HTTPS aktivieren

Um den HTTP-Datenverkehr zu verschlüsseln, wenn Sie die FileRun-Weboberfläche besuchen, können wir HTTPS aktivieren, indem wir ein kostenloses TLS-Zertifikat installieren, das von Let’s Encrypt ausgestellt wurde. Führen Sie die folgenden Befehle aus, um den Let’s Encrypt-Client (certbot) auf Ubuntu 20.04 zu installieren.

sudo apt update
sudo apt install certbot

Wenn Sie Nginx verwenden , müssen Sie auch das Certbot Nginx-Plugin installieren.

sudo apt install python3-certbot-nginx

Führen Sie dann den folgenden Befehl aus, um das TLS-Zertifikat zu erhalten und zu installieren.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d filerun.example.com

Wenn Sie Apache verwenden , müssen Sie auch das Certbot-Apache-Plugin installieren.

sudo apt install python3-certbot-apache

Führen Sie dann diesen Befehl aus, um das TLS-Zertifikat zu erhalten und zu installieren.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d filerun.example.com

Erklärung:

  • --nginx :Verwenden Sie das nginx-Plugin.
  • --apache :Verwenden Sie das Apache-Plugin.
  • --agree-tos :Nutzungsbedingungen akzeptieren.
  • --redirect :HTTPS durch 301-Umleitung erzwingen.
  • --hsts :Fügen Sie jeder HTTP-Antwort den Strict-Transport-Security-Header hinzu. Erzwingen, dass der Browser immer TLS für die Domäne verwendet. Schützt vor SSL/TLS-Stripping.
  • --staple-ocsp :Aktiviert OCSP-Heften. Eine gültige OCSP-Antwort wird an das Zertifikat geheftet, das der Server während TLS anbietet.

Das Zertifikat sollte nun abgerufen und automatisch installiert werden.

Schritt 6:Beenden Sie die Installation in Ihrem Webbrowser

Gehen Sie zu https://filerun.example.com um den webbasierten Installationsassistenten zu starten. Klicken Sie dann auf Next Schaltfläche.

Es wird überprüft, ob Ihr System die Anforderungen wie PHP-Erweiterungen erfüllt. Wenn alle Anforderungen erfüllt sind, klicken Sie auf Next .

Geben Sie im nächsten Schritt den MariaDB-Benutzernamen, das Passwort und den Datenbanknamen ein, die Sie in Schritt 2 erstellt haben.

Nachdem Sie auf Weiter geklickt haben, erstellt der Installationsassistent automatisch ein Benutzerkonto. Klicken Sie auf Next um fortzufahren.

Auf dem nächsten Bildschirm können Sie sich mit dem Superuser-Konto anmelden. Bei der ersten Anmeldung müssen Sie einen Home-Ordner für das Superuser-Konto erstellen.

Sie können den Home-Ordner für den Superuser mit dem folgenden Befehl erstellen.

sudo mkdir /var/www/superuser

sudo chown www-data /var/www/superuser/ -R

Geben Sie dann den Ordnerpfad in der FileRun-Weboberfläche ein. Und speichern Sie die Änderungen.

Gehen Sie als Nächstes zu Security -> API um die API zu aktivieren, damit Client-Apps mit dem Server synchronisiert werden können.

Installieren Sie FileRun Desktop Sync Client

Auf dem Desktop verwendet FileRun den Nextcloud-Client, um mit dem Server zu synchronisieren. Auf dem Ubuntu-Desktop können Sie den Nextcloud-Client installieren mit:

sudo apt install nextcloud-desktop

Informationen zur Installation von Client-Apps auf anderen Plattformen finden Sie auf der FileRun-Downloadseite.

E-Mail-Benachrichtigung einrichten

Wenn es mehr als einen Benutzer gibt, ist es eine gute Idee, FileRun in die Lage zu versetzen, E-Mail-Benachrichtigungen wie E-Mails zum Zurücksetzen von Passwörtern zu senden. Wie Sie einen E-Mail-Server einrichten, erfahren Sie im folgenden Tutorial. Hinweis dass ich dringend empfehle, den iRedMail-Mailserver auf einem frischen, sauberen Betriebssystem auszuführen. Die Installation von iRedMail auf einem Betriebssystem mit anderen Webanwendungen kann fehlschlagen und wahrscheinlich vorhandene Anwendungen beschädigen.

  • So richten Sie mit iRedMail ganz einfach einen voll funktionsfähigen Mailserver unter Ubuntu 20.04 ein

Wenn Sie keinen eigenen E-Mail-Server betreiben möchten, können Sie stattdessen SMTP-Relay einrichten. Bitte sehen Sie sich das folgende Tutorial an.

  • So richten Sie Postfix SMTP-Relay auf einem Ubuntu 20.04-Server ein

Ubuntu
  1. So installieren Sie Nginx unter Ubuntu 20.04

  2. So installieren Sie Jenkins Automation Server mit Apache unter Ubuntu 16.04

  3. So installieren Sie MediaWiki mit Nginx unter Ubuntu 16.04

  4. So installieren Sie den HTTP-Git-Server mit Nginx unter Ubuntu 16.04

  5. So installieren Sie den HTTP-Git-Server mit Nginx unter Ubuntu 20.04

So installieren Sie den Sonerezh Music Streaming Server auf Ubuntu 16.04 mit Apache oder Nginx

So installieren Sie InvoiceNinja auf Ubuntu 18.04 Server mit Apache/Nginx

So installieren Sie InvoiceNinja auf Ubuntu 20.04 Server mit Apache/Nginx

So installieren Sie phpMyAdmin mit Apache unter Ubuntu 22.04 LTS

So installieren Sie Nginx auf Ubuntu

So installieren Sie LetsEncrypt mit Nginx unter Ubuntu 15.04