So installieren Sie Joomla mit Apache und Let’s Encrypt SSL auf Debian 10

Joomla ist ein kostenloses und quelloffenes Content-Management-System, das zum Erstellen, Ändern und Verwalten des Inhalts einer Website verwendet wird. Es ist einfach und leicht zu bedienen, sodass Sie keine HTML- oder CSS-Kenntnisse benötigen, um die Website zu erstellen. Es ist in PHP geschrieben und verwendet MySQL als Datenbank. Es bietet eine breite Palette von Funktionen, die es zu einem flexiblen Content-Management-System machen, das sofort einsatzbereit ist. Es wird mit Hunderten von kostenlosen Erweiterungen geliefert, mit denen Sie die Funktionalität anpassen und erweitern können.

In diesem Tutorial zeige ich Ihnen, wie Sie Joomla CMS mit Apache und Let’s Encrypt auf Debian 10 installieren können.

Voraussetzungen

  • Ein Server, auf dem Debian 10 läuft.
  • Ein gültiger Domain-Name, der auf die IP des Servers zeigt.
  • Ein root-Passwort ist auf dem Server konfiguriert.

Erste Schritte

Aktualisieren Sie zunächst die Systempakete auf die aktuelle Version, indem Sie den folgenden Befehl ausführen:

apt-get update -y

Sobald alle Pakete aktualisiert sind, können Sie mit dem nächsten Schritt fortfahren.

LAMP-Server installieren

Als nächstes müssen Sie den Apache-Webserver, die MariaDB-Datenbank, PHP und andere PHP-Erweiterungen auf Ihrem System installieren. Sie können alle Pakete mit dem folgenden Befehl installieren:

apt-get install apache2 mariadb-server php openssl php-imagick php-common php-curl php-gd php-imap php-intl php-json php-ldap php-mbstring php-mysql php-pgsql php-smbclient php-ssh2 php-sqlite3 php-xml php-zip -y

Sobald alle Pakete installiert sind, können Sie mit dem nächsten Schritt fortfahren.

Erstellen Sie eine Datenbank für Joomla

Joomla verwendet MySQL oder MariaDB, um seine Inhalte zu speichern. Sie müssen also eine Datenbank und einen Benutzer für Joomla erstellen.

Verbinden Sie sich zunächst mit folgendem Befehl mit der MariaDB:

mysql

Sobald Sie verbunden sind, erstellen Sie eine Datenbank und einen Benutzer mit dem folgenden Befehl:

MariaDB [(none)]> CREATE DATABASE joomladb;
MariaDB [(none)]> GRANT ALL ON joomladb.* TO 'joomlauser'@'localhost' IDENTIFIED BY 'password';

Als nächstes löschen Sie die Berechtigungen und verlassen die MariaDB mit folgendem Befehl:

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

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

Joomla installieren

Laden Sie als nächstes die neueste Version von Joomla mit dem folgenden Befehl herunter:

wget https://downloads.joomla.org/cms/joomla3/3-9-25/Joomla_3-9-25-Stable-Full_Package.tar.bz2

Sobald der Download abgeschlossen ist, erstellen Sie ein Verzeichnis für Joomla innerhalb des Apache-Web-Root:

mkdir /var/www/html/joomla

Führen Sie dann den folgenden Befehl aus, um die heruntergeladene Datei in das Joomla-Verzeichnis zu entpacken:

bunzip2 Joomla_3-9-25-Stable-Full_Package.tar.bz2
tar -xvf Joomla_3-9-25-Stable-Full_Package.tar -C /var/www/html/joomla/

Als nächstes setzen Sie mit folgendem Befehl die richtigen Rechte und Eigentümer für das Joomla-Verzeichnis:

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

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

Apache-Webserver konfigurieren

Als nächstes müssen Sie eine Apache Virtual Host-Konfigurationsdatei erstellen, um Joomla zu hosten.

Sie können sie mit dem folgenden Befehl erstellen:

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

Fügen Sie die folgenden Zeilen ein:

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

Speichern und schließen Sie die Datei und aktivieren Sie dann den virtuellen Apache-Host mit dem folgenden Befehl:

a2ensite joomla

Starten Sie anschließend den Apache-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart apache2

Überprüfen Sie anschließend den Status des Apache mit folgendem Befehl:

systemctl status apache2

Sie sollten die folgende Ausgabe erhalten:

? apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2021-03-22 09:26:20 UTC; 4s ago
     Docs: https://httpd.apache.org/docs/2.4/
  Process: 14495 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
 Main PID: 14499 (apache2)
    Tasks: 6 (limit: 4701)
   Memory: 18.8M
   CGroup: /system.slice/apache2.service
           ??14499 /usr/sbin/apache2 -k start
           ??14500 /usr/sbin/apache2 -k start
           ??14501 /usr/sbin/apache2 -k start
           ??14502 /usr/sbin/apache2 -k start
           ??14503 /usr/sbin/apache2 -k start
           ??14504 /usr/sbin/apache2 -k start

Mar 22 09:26:20 debian10 systemd[1]: Starting The Apache HTTP Server...

Zugriff auf Joomla

Öffnen Sie nun Ihren Webbrowser und rufen Sie die Joomla-Weboberfläche über die URL http://joomla.example.com auf. Sie werden auf die folgende Seite weitergeleitet:

Joomla-Installateur

Geben Sie nun Ihren Site-Namen, Ihre E-Mail-Adresse, Ihren Admin-Benutzernamen und Ihr Passwort ein, und klicken Sie auf die Schaltfläche Weiter. Sie sollten die folgende Seite sehen:

Datenbank-Konfiguration

Geben Sie den Namen Ihrer Datenbank, den Datenbank-Benutzernamen und das Passwort ein und klicken Sie auf die Schaltfläche Weiter. Sie sollten die folgende Seite sehen:

Installation abschließen

Prüfung vor der Installation

Bestätigen Sie nun alle Einstellungen und klicken Sie auf die Schaltfläche Installieren, um die Installation zu starten. Wenn die Installation abgeschlossen ist, sollten Sie die folgende Seite sehen:

Joomla erfolgreich installiert

Klicken Sie auf den Installationsordner entfernen. Sie sollten die folgende Seite sehen:

Installationsordner entfernen

Klicken Sie nun auf den Administrator-Button, Sie sollten die Joomla-Login-Seite sehen:

Joomla Anmeldung

Geben Sie Ihre Admin-Anmeldedaten ein und klicken Sie auf die Schaltfläche Login, Sie sollten das Joomla Control Panel im folgenden Bild sehen:

Joomla Admin Dashboard

Sichern Sie Joomla mit Let’s Encrypt SSL

Es ist immer eine gute Idee, Ihre Website mit Let’s Encrypt SSL zu sichern. Sie müssen den Certbot-Client installieren, um das SSL zu installieren und zu verwalten. Sie können ihn mit dem folgenden Befehl installieren:

apt-get install python3-certbot-apache -y

Sobald Certbot installiert ist, führen Sie den folgenden Befehl aus, um Ihre Website mit Let’s Encrypt SSL zu sichern:

certbot --apache -d joomla.example.com

Sie werden aufgefordert, Ihre E-Mail-Adresse anzugeben und die Nutzungsbedingungen zu akzeptieren, wie unten gezeigt:

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

Wählen Sie als Nächstes aus, ob der HTTP-Datenverkehr auf HTTPS umgeleitet werden soll oder nicht (siehe unten):

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

Geben Sie 2 ein und drücken Sie die Eingabetaste, um Let’s Encrypt SSL für Ihre Website zu installieren:

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

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

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

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/joomla.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/joomla.example.com/privkey.pem
   Your cert will expire on 2020-10-23. 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

Herzlichen Glückwunsch! Sie haben Joomla CMS erfolgreich auf einem Debian 10-Server installiert. Sie können nun Ihre eigene Website einfach mit Joomla erstellen. Wenn Sie Fragen haben, können Sie sich gerne an mich wenden.

Das könnte dich auch interessieren …