Wie installiert man Joomla mit Apache2 und Let’s Encrypt unter Ubuntu 20.04

Joomla ist ein Open-Source-Content-Management-System, das für die Veröffentlichung von Online-Anwendungen und Websites verwendet wird. Es ist in PHP geschrieben und verwendet MySQL/MariaDB als Datenbank-Backend. Es ist ein einfaches, benutzerfreundliches und auf einem mobil einsetzbaren Model-View-Controller-Webanwendungs-Framework aufgebaut. Joomla kommt mit einer Tonne von Funktionen und Designs, die es zu einer guten Wette für den Aufbau professioneller Websites machen.

In diesem Tutorial zeigen wir Ihnen, wie Sie Joomla CMS mit Apache installieren und mit Let’s Encrypt SSL auf Ubuntu 20.04 sichern.

Voraussetzungen

  • Ein Server mit Ubuntu 20.04 mit 2 GB RAM.
  • Ein gültiger Domain-Name, der auf Ihren Server verweist.
  • Auf Ihrem Server ist ein Root-Passwort konfiguriert.

LAMP-Server installieren

Zuerst müssen Sie den Apache-Webserver, MariaDB, PHP und andere PHP-Erweiterungen in Ihrem System installieren. Sie können sie mit dem folgenden Befehl installieren:

apt-get install apache2 mariadb-server php7.4 libapache2-mod-php7.4 php7.4-cli php7.4-mysql php7.4-json php7.4-opcache php7.4-mbstring php7.4-intl php7.4-xml php7.4-gd php7.4-zip php7.4-curl php7.4-xmlrpc unzip -y

Wenn alle Pakete installiert sind, bearbeiten Sie die Datei php.ini und ändern Sie einige Einstellungen.

nano /etc/php/7.4/apache2/php.ini

Ändern Sie die folgenden Werte:

memory_limit = 512M
upload_max_filesize = 256M
post_max_size = 256M
output_buffering = Off
max_execution_time = 300
date.timezone = Asia/Kolkata

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Erstellen Sie eine Datenbank

Sichern Sie zunächst die MariaDB-Installation und setzen Sie das MariaDB-Root-Passwort mit folgendem Befehl:

mysql_secure_installation

Beantworten Sie alle Fragen wie unten gezeigt:

Enter current password for root (enter for none):
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

Als nächstes loggen Sie sich mit dem folgenden Befehl in die MariaDB-Shell ein:

mysql -u root -p

Geben Sie Ihr MariaDB Root-Passwort an, wenn Sie dazu aufgefordert werden, dann erstellen Sie eine Datenbank und einen Benutzer für Joomla mit dem folgenden Befehl:

MariaDB [(none)]> CREATE DATABASE joomladb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
MariaDB [(none)]> GRANT ALL ON joomladb.* TO 'joomla'@'localhost' IDENTIFIED BY 'password';

Als nächstes löschen Sie die Privilegien und verlassen die MariaDB-Shell mit dem folgenden Befehl:

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

Joomla herunterladen und installieren

Laden Sie zunächst die neueste Version von Joomla von seiner offiziellen Website mit folgendem Befehl herunter:

wget https://downloads.joomla.org/cms/joomla3/3-9-18/Joomla_3-9-18-Stable-Full_Package.zip

Sobald der Download abgeschlossen ist, entpacken Sie die heruntergeladene Datei in das Apache-Web-Stammverzeichnis mit dem folgenden Befehl:

unzip Joomla_3-9-18-Stable-Full_Package.zip -d /var/www/html/joomla

Als nächstes ändern Sie den Eigentümer des Joomla-Verzeichnisses in www-data mit dem folgenden Befehl:

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

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

Apache für Joomla konfigurieren

Als nächstes erstellen Sie eine neue Apache-Konfigurationsdatei für den virtuellen Host, um Joomla zu bedienen.

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

Fügen Sie den folgenden Inhalt hinzu:

<VirtualHost *:80>
  ServerName joomla.linuxbuz.com
  DirectoryIndex index.html index.php
  DocumentRoot /var/www/html/joomla

  ErrorLog ${APACHE_LOG_DIR}/joomla-error.log
  CustomLog ${APACHE_LOG_DIR}/joomla-access.log combined

  <Directory /var/www/html/joomla>
      Options FollowSymLinks
      AllowOverride All
      Require all granted
  </Directory>

</VirtualHost>

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

a2ensite joomla
systemctl restart apache2

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

Sicheres Joomla mit Let’s Encrypt SSL

Zuerst müssen Sie den Certbot-Client installieren, um Let’s Encrypt SSL zu installieren und zu verwalten. Sie können ihn mit dem folgenden Befehl installieren:

apt-get install certbot python3-certbot-apache -y

Sobald der Certbot installiert ist, führen Sie den folgenden Befehl aus, um Let’s Encrypt SSL für Ihre Website herunterzuladen und zu installieren:

certbot --apache -d joomla.linuxbuz.com

Sie werden gebeten, Ihre E-Mail-Adresse anzugeben und die unten angezeigte Servicebedingung zu akzeptieren:

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 joomla.linuxbuz.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

Als nächstes wählen Sie aus, ob HTTP-Verkehr wie unten gezeigt zu HTTPS umgeleitet werden soll oder nicht:

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 Enter, um die Installation wie unten gezeigt abzuschließen.

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.linuxbuz.com

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

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

 - We were unable to subscribe you the EFF mailing list because your
   e-mail address appears to be invalid. You can try again later by
   visiting https://act.eff.org.

An diesem Punkt ist Ihre Joomla-Website mit Let’s Encrypt SSL gesichert. Sie können nun mit dem nächsten Schritt fortfahren.

Zugang Joomla CMS

Öffnen Sie nun Ihren Webbrowser und geben Sie die URL https://joomla.linuxbuz.com ein. Sie werden zum webbasierten Joomla-Installationsassistenten weitergeleitet:

Geben Sie Ihren Sitenamen, Ihre Administrator-E-Mail und Ihr Passwort ein und klicken Sie auf die Schaltfläche Next. Sie sollten den Datenbank-Konfigurationsassistenten sehen:

Geben Sie Ihren Joomla-Datenbank-Namen, Ihren Datenbank-Benutzernamen und Ihr Passwort ein und klicken Sie auf die Schaltfläche Weiter. Sie sollten die Joomla-Finalisierungsseite sehen:

Wählen Sie die gewünschte Option und klicken Sie auf die Schaltfläche Installieren. Sie sollten die folgende Seite sehen:

Überprüfen Sie alle Konfigurationen und klicken Sie auf die Schaltfläche Installieren. Sobald das Joomla installiert ist, sollten Sie den folgenden Bildschirm sehen:

Entfernen Sie nun das Installationsverzeichnis und klicken Sie auf die Schaltfläche Administrator. Sie sollten die Joomla-Anmeldeseite sehen:

Geben Sie Ihren Joomla-Benutzernamen und Ihr Passwort ein und klicken Sie auf die Schaltfläche Anmelden. Sie sollten das Joomla-Dashboard auf der folgenden Seite sehen:

Sie können auch auf Ihre Joomla-Website zugreifen, indem Sie die URL https://joomla.linuxbuz.com besuchen. Sie sollten Ihre Joomla-Website auf der folgenden Seite sehen:

Schlussfolgerung

Herzlichen Glückwunsch! Sie haben Joomla mit Let’s Encrypt auf Ubuntu 20.04 erfolgreich installiert und gesichert. Sie können nun ganz einfach Ihren eCommerce-Shop, Ihre persönliche Website, Ihre Social Site oder Ihren Blog erstellen. Zögern Sie nicht, mich zu fragen, wenn Sie irgendwelche Fragen haben.

Das könnte Dich auch interessieren …