Wie installiert man ElkArte Forum mit Apache und Let’s Encrypt unter Debian 10

ElkArte ist eine kostenlose, quelloffene und leistungsstarke Forensoftware, die es Ihnen ermöglicht, Ihre eigene Online-Forengemeinschaft zu erstellen. Es ist eine einfache, leichte und moderne Forenplattform, die auf PHP basiert und MySQL/MariaDB zur Speicherung ihrer Daten verwendet. ElkArte verfügt über eine Vielzahl von Funktionen, darunter Benachrichtigungen, Vorlieben für Beiträge, Entwürfe, automatisches Speichern, Drag & Drop von Dateianhängen, integrierte Video-Einbettung für Youtube, Posting per E-Mail, verbesserte Anti-Spam-Maßnahmen und vieles mehr.

In diesem Tutorial werden wir erklären, wie man ElkArte auf einem Debian 10-Server installiert.

Anforderungen

  • Ein Server, auf dem Debian 10 läuft.
  • Ein Root-Passwort wird auf Ihrem Server eingerichtet.

Erste Schritte

Bevor Sie beginnen, müssen Sie Ihr System mit der neuesten Version aktualisieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:

apt-get update -y
 apt-get upgrade -y

Sobald Ihr Server aktualisiert ist, starten Sie Ihren Server neu, um die Änderungen zu übernehmen.

Apache, MariaDB und PHP installieren

Zunächst müssen Sie den Apache Webserver, den MariaDB-Datenbankserver, PHP und andere erforderliche Bibliotheken auf Ihrem Server installieren. Sie können sie alle installieren, indem Sie den folgenden Befehl ausführen:

apt-get install apache2 mariadb-server php libapache2-mod-php php-common php-curl php-intl php-mbstring php-xmlrpc php-mysql php-gd php-pgsql php-xml php-cli php-imagick php-bcmath php-gmp php-zip unzip -y

Sobald alle Pakete installiert sind, öffnen Sie die Datei php.ini und nehmen Sie einige Einstellungen vor:

nano /etc/php/7.3/apache2/php.ini

Ändern Sie die folgenden Zeilen:

memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = America/Chicago

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Starten Sie dann den Apache-Webserver mit dem folgenden Befehl neu:

systemctl restart apache2

Datenbank für ElkArte konfigurieren

Als nächstes müssen Sie eine Datenbank und einen Benutzer für ElkArte erstellen. Melden Sie sich dazu mit folgendem Befehl in der MariaDB-Shell an:

mysql -u root -p

Geben Sie Ihr root-Passwort an, wenn Sie dazu aufgefordert werden, und erstellen Sie dann eine Datenbank und einen Benutzer mit dem folgenden Befehl:

MariaDB [(none)]> CREATE DATABASE elkartedb;
 MariaDB [(none)]> CREATE USER 'elkarte'@'localhost' IDENTIFIED BY 'password';

Als nächstes gewähren Sie ElkArte mit dem folgenden Befehl alle Privilegien:

MariaDB [(none)]> GRANT ALL ON elkartedb.* TO 'elkarte'@'localhost' WITH GRANT OPTION;

Als nächstes werden die Privilegien geflushed und die MariaDB-Shell mit dem folgenden Befehl verlassen:

MariaDB [(none)]> FLUSH PRIVILEGES;
 MariaDB [(none)]> EXIT;

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

ElkArte herunterladen

Zunächst müssen Sie die neueste Version von ElkArte aus dem Git-Repository herunterladen. Um es herunterzuladen, führen Sie den folgenden Befehl aus:

wget https://github.com/elkarte/Elkarte/archive/master.zip

Sobald der Download abgeschlossen ist, entpacken Sie die heruntergeladene Datei mit dem folgenden Befehl:

unzip master.zip

Als nächstes verschieben Sie das extrahierte Verzeichnis in das Apache-Web-Stammverzeichnis:

mv Elkarte-master /var/www/html/elkarte

Ändern Sie als nächstes die Eigentümer des elkarte-Verzeichnisses und geben Sie die erforderlichen Berechtigungen mit dem folgenden Befehl ein:

chown -R www-data:www-data /var/www/html/elkarte
 chmod -R 755 /var/www/html/elkarte

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Virtuellen Host für ElkArte erstellen

Als nächstes müssen Sie eine Apache-Konfigurationsdatei für den virtuellen Host erstellen, um ElkArte zu bedienen. Sie können sie mit dem folgenden Befehl erstellen:

nano /etc/apache2/sites-available/elkarte.conf

Fügen Sie die folgenden Zeilen hinzu:

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/elkarte
     ServerName example.com

     <Directory /var/www/html/elkarte/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

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

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Aktivieren Sie dann die virtuelle Hostdatei und das Apache-Rewrite-Modul mit dem folgenden Befehl:

a2ensite elkarte.conf
 a2enmod rewrite

Starten Sie schließlich den Apache-Webserver neu, um die Änderungen zu übernehmen:

systemctl restart apache2

Zugang zur ElkArte-Webschnittstelle

ElkArte ist nun installiert und konfiguriert. Es ist Zeit, auf die ElkArte-Weboberfläche zuzugreifen.

Öffnen Sie Ihren Webbrowser und geben Sie die URL http://example.com ein. Sie werden auf die ElkArte-Begrüßungsseite weitergeleitet:

ElkArte Installer

Klicken Sie auf die Schaltfläche Weiter. Sie sollten die folgende Seite sehen:

Datenbank-Einstellungen

Geben Sie Ihren Datenbanknamen, Ihren Datenbankbenutzernamen und Ihr Passwort ein und klicken Sie auf die Schaltfläche Weiter. Sie sollten die folgende Seite sehen:

Forum Einstellungen

Geben Sie Ihren Forumnamen und die Forum-URL an und klicken Sie auf die Schaltfläche Weiter. Sie sollten die folgende Seite sehen:

Füllen der Datenbank

Klicken Sie jetzt auf die Schaltfläche Weiter. Sie sollten die Seite für die Erstellung von Admins sehen:

Ein Admin-Konto erstellen

Geben Sie Ihren gewünschten Administrator-Namen, Ihr Passwort, Ihre E-Mail-Adresse und Ihr Datenbank-Passwort ein und klicken Sie auf die Schaltfläche Weiter. Wenn die Installation abgeschlossen ist, sollten Sie die folgende Seite sehen:

Installation abschließen

Klicken Sie nun auf „Ihr neu installiertes Forum„. Sie sollten das ElkArte-Dashboard auf der folgenden Seite sehen:

ElkArte Forum

Sichere ElkArte mit Let’s Encrypt

Zunächst müssen Sie Certbot auf Ihrem Server installieren. Certbot wird verwendet, um ein SSL-Zertifikat von Let’s Encrypt zu erhalten und Apache für die Verwendung dieses Zertifikats zu konfigurieren.

Standardmäßig ist die neueste Version von Certbot nicht im Debian 10-Standard-Repository verfügbar. Sie müssen also das Certbot-Repository auf Ihrem Server hinzufügen.

Fügen Sie zunächst das Certbot-Repository mit dem folgenden Befehl hinzu:

add-apt-repository ppa:certbot/certbot

Sobald das Repository hinzugefügt ist, aktualisieren Sie das Repository und installieren Sie Certbot mit dem folgenden Befehl:

apt-get update -y
 apt-get install certbot python-certbot-apache -y

Certbot ist jetzt installiert und einsatzbereit.

Führen Sie den folgenden Befehl aus, um das SSL-Zertifikat für Ihre Domain zu erhalten:

certbot --apache -d example.com

Zunächst müssen Sie eine gültige E-Mail-Adresse angeben und den unten aufgeführten Nutzungsbedingungen zustimmen:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/example.com-le-ssl.conf
Deploying Certificate to VirtualHost /etc/apache2/sites-available/example.com-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/example.com-le-ssl.conf

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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

Wählen Sie dann Option 2, um ein kostenloses SSL-Zertifikat für Ihre Domain herunterzuladen und zu installieren. Wenn die Installation erfolgreich abgeschlossen ist. Sie sollten die folgende Ausgabe erhalten:

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/example.com.conf to ssl vhost in /etc/apache2/sites-available/
example.com-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/example.com/privkey.pem
   Your cert will expire on 2019-10-22. 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"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - 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

Herzlichen Glückwunsch! Ihre ElkArte ist jetzt mit einem SSL-Zertifikat gesichert. Sie können jetzt sicher auf sie zugreifen, indem Sie die URL https://example.com besuchen.

Das könnte Dich auch interessieren …