So installierst du FileRun unter Ubuntu 22.04
FileRun ist eine quelloffene und webbasierte Dateifreigabeanwendung für Linux-basierte Betriebssysteme. Sie ist Google Drive, iCloud und DrobBox sehr ähnlich und ermöglicht es Nutzern, Dateien über das Internet zu teilen und zu synchronisieren. Der Zugriff kann über eine mobile App, WebDAV und einen Webbrowser erfolgen. Damit kannst du deine eigene File-Sharing-Lösung in der Cloud hosten und von überall aus über einen sicheren Cloud-Speicher auf alle deine Dateien zugreifen.
Dieser Beitrag zeigt dir, wie du FileRun mit Apache und Let’s Encrypt SSL unter Ubuntu 22.04 installierst.
Voraussetzungen
- Ein Server, auf dem Ubuntu 22.04 läuft.
- Ein gültiger Domainname, der auf die IP deines Servers zeigt.
- Ein Root-Passwort ist auf dem Server eingerichtet.
Installiere Apache, MariaDB und PHP
FileRun ist in PHP geschrieben und verwendet MariaDB als Datenbank-Backend. Daher musst du Apache, MariaDB, PHP und andere Pakete auf deinem Server installieren. Installiere zunächst die Pakete Apache und MariaDB mit dem folgenden Befehl:
apt-get install apache2 mariadb-server mariadb-client
Nachdem du beide Pakete installiert hast, musst du die PHP-Version php7.2-php7.4 auf deinem Server installieren. Ubuntu 22.04 wird jedoch mit der Version PHP 8.1 im Standard-Repository ausgeliefert. Daher musst du das PHP-Repository von Ondrej auf deinem Server hinzufügen.
Installiere zunächst alle erforderlichen Abhängigkeiten mit dem folgenden Befehl:
apt install software-properties-common ca-certificates lsb-release apt-transport-https -y
Als Nächstes fügst du das PHP-Repository mit dem folgenden Befehl hinzu:
add-apt-repository ppa:ondrej/php
Als Nächstes aktualisierst du den Cache des Repositorys und installierst PHP mit den anderen benötigten Erweiterungen mit folgendem Befehl:
apt update apt install php7.4 libapache2-mod-php7.4 imagemagick ffmpeg php7.4-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 unzip -y
Sobald alle Pakete installiert sind, musst du auch den IonCube Loader auf deinem System installieren.
Lade zunächst den IonCube Loader mit dem folgenden Befehl herunter:
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
Entpacke dann die heruntergeladene Datei mit folgendem Befehl:
tar -xzf ioncube_loaders_lin_x86-64.tar.gz -C /usr/lib/php
Als Nächstes erstellst du eine IonCube-Konfigurationsdatei und gibst den Pfad der IonCube-Quelle an:
nano /etc/php/7.4/apache2/conf.d/00-ioncube.ini
Füge die folgende Zeile ein:
zend_extension = /usr/lib/php/ioncube/ioncube_loader_lin_7.4.so
Speichere und schließe die Datei und erstelle dann eine PHP-Konfigurationsdatei für FileRun:
nano /etc/php/7.4/apache2/conf.d/filerun.ini
Füge die folgenden Einstellungen hinzu:
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"
Speichere und schließe die Datei und starte dann den Apache-Dienst neu, um die Änderungen zu übernehmen:
systemctl reload apache2
Erstelle eine Datenbank für FileRun
Sichere zunächst die MariaDB-Installation und setze das Root-Passwort mit dem folgenden Befehl:
mysql_secure_installation
Beantworte alle Fragen wie unten gezeigt:
Enter current password for root (enter for none): PRESS ENTER Set root password? [Y/n] Y New password: Re-enter new password: Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
Melde dich dann mit folgendem Befehl in der MariaDB-Shell an:
mysql -u root -p
Sobald du eingeloggt bist, erstelle eine Datenbank und einen Benutzer mit dem folgenden Befehl:
MariaDB [(none)]> CREATE DATABASE filerun; MariaDB [(none)]> CREATE USER 'filerun'@'localhost' IDENTIFIED BY 'password';
Als Nächstes erteilst du der FileRun-Datenbank mit dem folgenden Befehl alle Berechtigungen:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON filerun.* TO 'filerun'@'localhost';
Lösche die Berechtigungen und verlasse MariaDB mit folgendem Befehl:
MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT;
Wenn du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.
FileRun herunterladen
Lade zunächst die neueste Version von FileRun von der offiziellen Website herunter, indem du den folgenden Befehl ausführst:
wget -O FileRun.zip https://filerun.com/download-latest
Sobald FileRun heruntergeladen ist, entpackst du die heruntergeladene Datei mit dem folgenden Befehl:
unzip FileRun.zip -d /var/www/html/filerun/
Als Nächstes legst du mit folgendem Befehl die richtigen Berechtigungen und Eigentümer fest:
chown -R www-data:www-data /var/www/html/filerun chmod -R 755 /var/www/html/filerun
Sobald du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.
Einen virtuellen Apache-Host für FileRun erstellen
Als Nächstes musst du eine Konfigurationsdatei für einen virtuellen Apache-Host für FileRun erstellen. Du kannst sie mit dem folgenden Befehl erstellen:
nano /etc/apache2/sites-available/filerun.conf
Füge die folgenden Zeilen ein:
<VirtualHost *:80> ServerName filerun.example.com DocumentRoot /var/www/html/filerun <Directory "/var/www/html/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>
Speichere und schließe die Datei, aktiviere dann den virtuellen Apache-Host und aktiviere das Apache-Rewrite-Modul mit dem folgenden Befehl:
a2ensite filerun.conf a2enmod rewrite
Starte anschließend den Apache-Dienst neu, um die Änderungen zu übernehmen:
systemctl restart apache2
Du kannst den Apache-Status auch mit dem folgenden Befehl überprüfen:
systemctl status apache2
Du solltest die folgende Ausgabe sehen:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2022-08-06 09:26:00 UTC; 7s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 21189 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 21193 (apache2) Tasks: 6 (limit: 2242) Memory: 14.6M CPU: 112ms CGroup: /system.slice/apache2.service ??21193 /usr/sbin/apache2 -k start ??21194 /usr/sbin/apache2 -k start ??21195 /usr/sbin/apache2 -k start ??21196 /usr/sbin/apache2 -k start ??21197 /usr/sbin/apache2 -k start ??21198 /usr/sbin/apache2 -k start Aug 06 09:26:00 ubuntu2204 systemd[1]: Starting The Apache HTTP Server...
Sobald du fertig bist, kannst du mit dem nächsten Schritt fortfahren.
FileRun Web UI aufrufen
Öffne nun deinen Webbrowser und rufe die FileRun Web UI über die URL http://filerun.example.com auf. Du wirst auf die folgende Seite weitergeleitet:
Klicke auf die Schaltfläche Weiter. Du solltest die Seite zur Überprüfung der Serveranforderungen sehen:
Klicke auf die Schaltfläche Weiter. Du solltest die Seite für die Datenbankkonfiguration sehen:
Klicke auf die Schaltfläche Weiter. Sobald die Installation abgeschlossen ist, solltest du die folgende Seite sehen:
Klicke auf die Schaltfläche Weiter. Du solltest die FileRun Anmeldeseite sehen:
Gib deinen Admin-Benutzernamen und dein Passwort ein und klicke auf die Schaltfläche “ Anmelden“. Auf der folgenden Seite siehst du das FileRun Dashboard:
FileRun mit Let’s Encrypt SSL sichern
Es wird auch empfohlen, deine Website mit Let’s Encrypt SSL zu sichern. Zuerst musst du den Certbot-Client auf deinem Server installieren. Du kannst ihn mit dem folgenden Befehl installieren:
apt-get install python3-certbot-apache -y
Sobald Certbot installiert ist, führst du den folgenden Befehl aus, um deine Website mit Let’s Encrypt SSL zu sichern:
certbot --apache -d filerun.example.com
Du wirst aufgefordert, deine E-Mail-Adresse anzugeben und die Nutzungsbedingungen zu akzeptieren (siehe unten):
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator standalone, Installer None Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): hitjethva1981@gmail.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v02.api.letsencrypt.org/directory - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (A)gree/(C)ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Plugins selected: Authenticator apache, Installer apache Obtaining a new certificate Performing the following challenges: http-01 challenge for filerun.example.com Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/filerun-le-ssl.conf Enabled Apache socache_shmcb module Enabled Apache ssl module Deploying Certificate to VirtualHost /etc/apache2/sites-available/filerun-le-ssl.conf Enabling available site: /etc/apache2/sites-available/filerun-le-ssl.conf Next, select whether or not to redirect HTTP traffic to HTTPS as shown below:
Bitte wähle aus, ob der HTTP-Verkehr auf HTTPS umgeleitet werden soll oder nicht, um den HTTP-Zugriff zu unterbinden.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Gib 2 ein und drücke Enter, um Let’s Encrypt SSL für deine Website zu installieren:
Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/filerun.conf to ssl vhost in /etc/apache2/sites-available/filerun-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://filerun.example.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=filerun.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/filerun.example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/filerun.example.com/privkey.pem Your cert will expire on 2022-4-29. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Fazit
Glückwunsch! Du hast FileRun mit Apache und Let’s Encrypt SSL erfolgreich auf Ubuntu 22.04 installiert. Jetzt kannst du deinen eigenen FileRun-Server in der Cloud hosten und deine Dateien, Musik und Fotos mit deinen Freunden und deiner Familie teilen und synchronisieren.