ElkArte ist eine kostenlose Open-Source-Forensoftware, die auf dem Simple Machine Forum basiert. Es ist in PHP geschrieben und verwendet MariaDB als Datenbank-Backend. Es bietet alle Funktionen, die zum Aufbau eines Community-Forums mit vollem Funktionsumfang erforderlich sind. Es ist einfach, leichtgewichtig und verwendet ansprechende Themen, die für jeden modernen Browser, Smartphone oder Tablet geeignet sind.
Funktionen
- Einfache und benutzerfreundliche Oberfläche
- Anpassbarer und integrierter Add-on-Manager
- Verbesserte Anti-Spam-Funktionalität
- Dateianhänge ziehen und ablegen
- Integrierte Videoeinbettung für YouTube, Vimeo und Dailymotion
In diesem Tutorial zeigen wir Ihnen, wie Sie ElkArte mit Let’s Encrypt SSL unter CentOS 8 installieren.
Voraussetzungen
- Ein Server mit CentOS 8.
- Ein gültiger Domainname, auf den Ihre Server-IP verweist.
- Ein Root-Passwort wird auf dem Server konfiguriert.
LAMP-Server installieren
Zuerst müssen Sie Apache, MariaDB, PHP und andere Erweiterungen in Ihrem System installieren. Sie können alle installieren, indem Sie den folgenden Befehl ausführen:
dnf install httpd mariadb-server php php-common php-json php-curl php-intl php-mbstring php-xmlrpc php-mysqlnd php-gd php-pgsql php-xml php-cli php-bcmath php-gmp php-zip unzip -y
Sobald alle Pakete installiert sind, bearbeiten Sie die Datei php.ini und nehmen Sie einige gewünschte Änderungen vor:
nano /etc/php.ini
Ändern Sie die folgenden Werte:
memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 date.timezone = America/Chicago
Speichern und schließen Sie die Datei, starten Sie dann den Apache- und MariaDB-Dienst und ermöglichen Sie ihnen, beim Systemneustart mit dem folgenden Befehl zu starten:
systemctl start httpd
systemctl start mariadb
systemctl enable httpd
systemctl enable mariadb
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
MariaDB konfigurieren
Standardmäßig ist das MariaDB-Root-Passwort nicht festgelegt. Sie müssen es also in Ihrem System einstellen. Sie können dies tun, indem Sie das folgende Skript ausführen:
mysql_secure_installation
Beantworten Sie alle Fragen wie unten gezeigt, um das Root-Passwort festzulegen:
Enter current password for root (enter for none): OK, successfully used password, moving on... Set root password? [Y/n] Y 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
Sobald die MariaDB gesichert ist, melden Sie sich mit dem folgenden Befehl bei der MariaDB-Shell an:
mysql -u root -p
Geben Sie Ihr Root-Passwort ein, wenn Sie dazu aufgefordert werden, und erstellen Sie dann eine Datenbank und einen Benutzer mit dem folgenden Befehl:
MariaDB [(none)]> CREATE DATABASE elkarte;
MariaDB [(none)]> CREATE USER 'elkarte'@'localhost' IDENTIFIED BY 'password';
Als nächstes erteilen Sie der ElkArte-Datenbank alle Berechtigungen mit dem folgenden Befehl:
MariaDB [(none)]> GRANT ALL ON elkarte.* TO 'elkarte'@'localhost' WITH GRANT OPTION;
Leeren Sie als Nächstes die Berechtigungen und beenden Sie die MariaDB-Shell mit dem folgenden Befehl:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
ElkArte herunterladen
Zuerst müssen Sie die neueste Version von ElkArte aus dem Git-Repository herunterladen. Sie können es mit dem folgenden Befehl herunterladen:
wget https://github.com/elkarte/Elkarte/archive/master.zip
Entpacken Sie die heruntergeladene Datei nach dem Herunterladen mit dem folgenden Befehl:
unzip master.zip
Verschieben Sie als Nächstes das extrahierte Verzeichnis mit dem folgenden Befehl in das Apache-Stammverzeichnis:
mv Elkarte-master /var/www/html/elkarte
Ändern Sie als Nächstes den Besitz und die Berechtigungen mit dem folgenden Befehl:
chown -R apache:apache /var/www/html/elkarte
chmod -R 775 /var/www/html/elkarte
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Apache für ElkArte konfigurieren
Als nächstes müssen Sie eine virtuelle Apache-Host-Konfigurationsdatei für ElkArte erstellen. Sie können es mit dem folgenden Befehl erstellen:
nano /etc/httpd/conf.d/elkarte.conf
Fügen Sie die folgenden Zeilen hinzu:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/elkarte ServerName elk.example.com <Directory /var/www/html/elkarte/> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog /var/log/httpd/error.log CustomLog /var/log/httpd//access.log combined </VirtualHost>
systemctl restart httpd
Zu diesem Zeitpunkt ist der Apache-Webserver so konfiguriert, dass er ElkArte bedient. Sie können jetzt mit dem nächsten Schritt fortfahren.
Konfigurieren Sie Selinux und die Firewall
Standardmäßig ist SELinux in CentOS 8 aktiviert. Sie müssen es also für Ihre ElkArte-Website konfigurieren.
Sie können SELinux mit dem folgenden Befehl konfigurieren:
setsebool httpd_can_network_connect on -P
chcon -R -u system_u -t httpd_sys_rw_content_t -r object_r /var/www/html/elkarte
Lassen Sie als Nächstes Port 80 und 443 mit dem folgenden Befehl durch die Firewall:
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Zugriff auf ElkArte
Öffnen Sie nun Ihren Webbrowser und greifen Sie über die URL http://elk.example.com auf ElkArte zu . Sie werden auf die folgende Seite weitergeleitet:
Klicken Sie auf Weiter Schaltfläche, um die Installation zu starten. Sie sollten die folgende Seite sehen:
Geben Sie Ihre Datenbankdetails ein und klicken Sie auf Weiter Taste. Sie sollten die folgende Seite sehen:
Geben Sie Ihren Forumnamen und Ihre URL ein und klicken Sie auf Weiter Taste. Sie sollten die folgende Seite sehen:
Klicken Sie nun auf Weiter Schaltfläche, um die Datenbank zu füllen. Sie sollten die folgende Seite sehen:
Geben Sie Ihren Admin-Benutzernamen, Ihr Passwort und Ihre E-Mail-Adresse ein und klicken Sie auf Weiter Taste. Sie sollten die folgende Seite sehen:
Klicken Sie auf Ihr neu eingerichtetes Forum Taste. Sie sollten die folgende Seite sehen:
Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf Protokoll in Taste. Sie sollten das ElkArte-Dashboard auf der folgenden Seite sehen:
Sichern Sie Elkarte mit Let's Encrypt SSL
An dieser Stelle ist ElkArte installiert und konfiguriert. Als nächstes wird empfohlen, Ihre ElkArte-Site mit Let's Encrypt SSL zu sichern. Zuerst müssen Sie den Certbot-Client auf Ihrem System installieren. Der Certbot ist ein Client von Let's Encrypt, der verwendet werden kann, um das SSL von der Let's Encrypt-Website herunterzuladen und den Apache-Webserver für die Verwendung des heruntergeladenen SSL zu konfigurieren.
Sie können den Certbot mit dem folgenden Befehl installieren:
wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chown root /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-auto
Führen Sie nun den folgenden Befehl aus, um ein SSL-Zertifikat für Ihre ElkArte-Website zu erhalten und zu installieren.
certbot-auto --apache -d elk.example.com
Der obige Befehl installiert zunächst alle erforderlichen Abhängigkeiten auf Ihrem Server. Nach der Installation werden Sie aufgefordert, eine E-Mail-Adresse anzugeben und die Nutzungsbedingungen wie unten gezeigt zu akzeptieren:
Hinweis:Wenn Sie einen SSL-bezogenen Fehler erhalten, starten Sie den httpd-Dienst neu und führen Sie den obigen Befehl erneut aus.
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 elk.example.com Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/httpd/conf.d/elkarte-le-ssl.conf Deploying Certificate to VirtualHost /etc/httpd/conf.d/elkarte-le-ssl.conf
Wählen Sie als Nächstes aus, ob der HTTP-Verkehr auf HTTPS umgeleitet werden soll oder nicht, wodurch der HTTP-Zugriff entfernt wird.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 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
Geben Sie 2 ein und drücken Sie die Eingabetaste, um den Installationsvorgang zu starten. Nach erfolgreicher Installation sollten Sie folgende Ausgabe erhalten:
Redirecting vhost in /etc/httpd/conf.d/elkarte.conf to ssl vhost in /etc/httpd/conf.d/elkarte-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://elk.example.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=elk.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/elk.example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/elk.example.com/privkey.pem Your cert will expire on 2020-05-10. To obtain a new or tweaked version of this certificate in the future, simply run certbot-auto again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot-auto 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
Sie können nun sicher über die URL https://elk.example.com. auf Ihre ElkArte zugreifen
Schlussfolgerung
Herzliche Glückwünsche! Sie haben ElkArte erfolgreich mit Apache und Let's Encrypt SSL auf CentOS 8 installiert. Sie können jetzt mit dem Aufbau Ihres eigenen Online-Forums beginnen. Fühlen Sie sich frei, mich zu fragen, wenn Sie irgendwelche Fragen haben.