GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So richten Sie eine File-Sharing-Website mit Jirafeau unter Debian 10 ein

Jirafeau ist eine einfache Webanwendung zum Hosten und Teilen von Dateien, die in PHP erstellt wurde. Es erfordert keine Datenbank und bietet eine übersichtliche, benutzerfreundliche Benutzeroberfläche mit Unterstützung für Passwortschutz, geplante Ablaufzeit, einmalige Downloads (Selbstzerstörung) und Vorschau im Browser neben anderen nützlichen Funktionen.

Dieser Artikel führt Sie durch die Installation und Konfiguration von Jirafeau auf Debian 10 von Grund auf mit Nginx und PHP-FPM.

Anforderungen

  • Ein Debian 10-System, auf dem Sie Root-Zugriff haben.
  • Ein Domänenname, der auf Ihren Server verweist.
  • Die Umgebungsvariable $EDITOR muss gesetzt werden.

Wenn Sie als sudo-Benutzer ohne Rootberechtigung angemeldet sind, verwenden Sie eine privilegierte Shell, um die in diesem Handbuch gezeigten Befehle auszuführen. Sie können eine Root-Shell starten mit:

sudo -s

Jirafeau-Installation

System aktualisieren und Abhängigkeiten installieren

Beginnen Sie mit der Aktualisierung Ihres Systems:

apt update
apt upgrade -y
reboot

Sobald das System wieder hochgefahren ist, installieren Sie die erforderlichen Softwarepakete mit dem folgenden Befehl:

apt install -y nginx php php-fpm certbot git

Stellen Sie dann sicher, dass sowohl Nginx als auch PHP-FPM aktiviert sind und ausgeführt werden:

systemctl enable --now nginx.service php7.3-fpm.service

SSL-Zertifikat abrufen

Bevor Sie den Webserver konfigurieren, müssen Sie ein SSL-Zertifikat für Ihre Domain erwerben. Verwenden Sie dazu das certbot-Tool wie gezeigt:

certbot certonly --webroot -m [email protected] -d your_domain --agree-tos

Nachdem Sie diesen Befehl ausgeführt haben, werden Sie zunächst gefragt, ob Sie E-Mails von der EFF erhalten möchten. Wenn Sie dann aufgefordert werden, das Webroot für Ihre Domain einzugeben, geben Sie /var/www/html:

ein
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for example.com
Input the webroot for example.com: (Enter 'c' to cancel): /var/www/html

Der Domänenbesitz wird verifiziert und Ihr Zertifikat und die zugehörigen Dateien werden in /etc/letsencrypt/live/your_domain/ gespeichert. Wir können jetzt Nginx konfigurieren.

Nginx-Konfiguration

Deaktivieren Sie die Standardkonfigurationsdatei, da sie nicht benötigt wird:

rm /etc/nginx/sites-enabled/default

Erstellen Sie dann eine neue Konfigurationsdatei:

$EDITOR /etc/nginx/sites-available/your_domain.conf

Und geben Sie Folgendes ein:

server {
    listen 80;
    listen [::]:80;
    server_name your_domain;
    return 301 https://your_domain$request_uri;
}
 server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name your_domain;
    root /var/www/html/jirafeau;
    index index.php;
    ssl on;
    ssl_certificate /etc/letsencrypt/live/your_domain/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/your_domain/privkey.pem;
    location ~ \.php$ {
    fastcgi_split_path_info  ^(.+\.php)(/.+)$;
    fastcgi_index            index.php;
    fastcgi_pass             unix:/var/run/php/php7.3-fpm.sock;
    include                  fastcgi_params;
    fastcgi_param   PATH_INFO       $fastcgi_path_info;
    fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

HINWEIS: Mit der bereitgestellten Konfiguration werden alle HTTP-Anfragen an HTTPS weitergeleitet.

Aktivieren Sie als Nächstes die neue Konfigurationsdatei, indem Sie einen symbolischen Link im Verzeichnis /etc/nginx/sites-enabled/ erstellen:

ln -s /etc/nginx/sites-available/your_domain.conf /etc/nginx/sites-enabled/

Suchen Sie nach Konfigurationsfehlern mit:

nginx -t

Laden Sie es dann, indem Sie den folgenden Befehl ausgeben:

systemctl reload nginx.service

Installieren von Jirafeau

Laden Sie Jirafeau aus seinem Gitlab-Repository herunter:

mkdir /var/www/html/jirafeau
git clone https://gitlab.com/mojo42/Jirafeau.git /var/www/html/jirafeau

Erstellen Sie ein Datenverzeichnis für Jirafeau. Dieses Verzeichnis sollte nicht über Ihren Webserver zugänglich sein (d. h. es sollte sich außerhalb des Web-Root-Verzeichnisses befinden, das bei unserer Konfiguration /var/www/html ist). Wir verwenden /var/data/jirafeau.

mkdir -p /var/data/jirafeau

Geben Sie dem Nginx-Benutzer das Eigentum an den Konfigurations- und Datenverzeichnissen, die von Jirafeau verwendet werden. Optimalerweise sollten Sie die Dateiberechtigungen verschärfen, sobald Ihre Einrichtung abgeschlossen ist.

chown -R www-data:www-data /var/www/html/jirafeau/lib /var/data/jirafeau

Öffnen Sie dann Ihren Webbrowser und navigieren Sie zu https://your_domain/install.php. Sie werden zunächst aufgefordert, ein Passwort für die Administrationsoberfläche zu wählen. Geben Sie ein sicheres Passwort ein und fahren Sie mit dem nächsten Schritt fort. Geben Sie als Basisadresse https://your_domain/ und /var/data/jirafeau/ für das Datenverzeichnis ein. Fahren Sie mit dem nächsten Schritt fort, in dem das Installationsprogramm eine grundlegende Konfigurationsdatei für Jirafeau erstellt.

Jirafeau konfigurieren

Das integrierte Installationsskript konfiguriert nur das Wesentliche. Für eine gründlichere Konfiguration öffnen Sie die entsprechende Datei:

$EDITOR /var/www/html/jirafeau/lib/config.local.php

Ersetzen Sie den standardmäßigen Organisationsnamen und legen Sie die Kontaktpersonen- und Titelschlüssel fest. Die Organisations- und Ansprechpartnerwerte werden in Ihren Nutzungsbedingungen (https://ihre_domain/tos.php) angezeigt.

  'organisation' => 'Your Organisation/Company',
  'contactperson' => 'Your Name <[email protected]>',
  'title' => 'Title of your choice',

Standardmäßig ist der Zugriff auf die Upload-Funktion uneingeschränkt. Sie können ein oder mehrere Passwörter festlegen, um diesen Zugriff einzuschränken. Verwenden Sie die gezeigte Syntax:

  'upload_password' =>
  array (
          'password1',
          'password2',
  ),

Beim Hochladen einer Datei stehen im Upload-Formular unterschiedliche Fristen zur Verfügung. Jirafeau lässt standardmäßig Fristen von bis zu einem Monat zu, nach denen hochgeladene Dateien gelöscht werden. Um die verfügbaren Zeiträume zu ändern, ändern Sie das Verfügbarkeits-Array. Um beispielsweise alle Ablaufzeiträume zuzulassen, verwenden Sie Folgendes:

  array (
    'minute' => true,
    'hour' => true,
    'day' => true,
    'week' => true,
    'month' => true,
    'quarter' => true,
    'year' => true,
    'none' => true,
  ),

Wenn Sie mit Ihrer Konfiguration zufrieden sind, müssen Sie nichts unternehmen, um die Änderungen zu übernehmen.

Ihre Datei-Hosting-Website ist jetzt einsatzbereit. Die Administrationsoberfläche ist unter https://ihre_domain/admin.php

erreichbar


Debian
  1. So installieren Sie Phorum mit Nginx unter Debian 9

  2. So richten Sie die PostgreSQL-Streaming-Replikation mit Replikations-Slots unter Debian 10 ein

  3. So installieren Sie den Ghost unter Debian mit Nginx

  4. So installieren Sie WordPress mit Nginx unter Debian 10

  5. So installieren Sie WonderCMS mit Nginx unter Debian 11

So richten Sie ein SSL-Zertifikat von Let’s Encrypt mit Nginx unter Debian 10 / Debian 9 ein

So richten Sie ModSecurity mit Nginx unter Debian/Ubuntu ein

So installieren Sie phpMyAdmin mit Nginx unter Debian 11 Bullseye

So installieren Sie phpMyAdmin mit Nginx unter Debian 11

So installieren Sie Nginx mit PHP-FPM unter Debian 11

So installieren Sie Nginx unter Debian 10