DokuWiki Installation auf Ubuntu 22.04

DokuWiki ist eine einfache, leicht zu bedienende und vielseitige Wiki-Software, die in PHP geschrieben wurde. Sie ist kostenlos, quelloffen und nutzt ein einfaches Dateiformat, um ihre Daten zu speichern, anstatt ein Datenbanksystem zu verwenden. Sie bietet eine Vielzahl von Funktionen, mit denen du deine Wiki-Site leicht skalieren und optimieren kannst. Aufgrund seiner sauberen und lesbaren Syntax wird es immer beliebter. Mit Dokuwiki kannst du deine persönlichen oder geschäftlichen Websites über das Dokuwiki-Webpanel erstellen.

In diesem Tutorial zeigen wir dir, wie du DokuWiki mit Apache und dem Let’s Encrypt SSL-Zertifikat auf Ubuntu 22.04 installierst.

Voraussetzungen

  • Ein Server, auf dem Ubuntu 22.04 läuft.
  • Ein gültiger Domainname ist auf deinen Server verweist.
  • Ein Root-Passwort ist auf deinem Server eingerichtet.

Installiere Apache und PHP

Zuerst musst du den Apache Webserver, PHP und andere PHP-Bibliotheken auf deinem System installieren. Du kannst sie alle installieren, indem du den folgenden Befehl ausführst:

apt-get install apache2 php php-gd php-xml php-json -y

Nachdem du alle Pakete installiert hast, starte den Apache-Dienst und aktiviere ihn mit dem folgenden Befehl, damit er beim Booten startet:

systemctl start apache2
systemctl enable apache2

Wenn du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.

DokuWiki installieren Ubuntu 22.04

Als Nächstes besuchst du die offizielle DokuWiki-Downloadseite, kopierst die Download-URL und lädst die neueste Version von DokuWiki mit dem folgenden Befehl herunter:

wget https://download.dokuwiki.org/out/dokuwiki-24117f7f9e0362c4b1782ff29220b0ab.tgz

Sobald der Download abgeschlossen ist, erstelle ein DokuWiki-Verzeichnis innerhalb des Apache-Web-Root-Verzeichnisses und entpacke das DokuWiki:

mkdir /var/www/html/dokuwiki
tar -xvzf dokuwiki-24117f7f9e0362c4b1782ff29220b0ab.tgz -C /var/www/html/dokuwiki/ --strip-components=1

Als Nächstes kopierst du die .htaccess-Beispieldatei mit dem folgenden Befehl:

cp /var/www/html/dokuwiki/.htaccess{.dist,}

Als Nächstes änderst du die Eigentümerschaft des DokuWikis in www-data:

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

Sobald du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.

Einen Apache Virtualhost für DokuWiki erstellen

Als Nächstes musst du eine Konfigurationsdatei für einen virtuellen Apache-Host erstellen, um die DokuWiki-Website zu bedienen. Du kannst sie mit folgendem Befehl erstellen

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

Füge die folgenden Zeilen hinzu:

<VirtualHost *:80>
        ServerName    doku.example.com      
        DocumentRoot  /var/www/html/dokuwiki

        <Directory ~ "/var/www/html/dokuwiki/(bin/|conf/|data/|inc/)">
            <IfModule mod_authz_core.c>
                AllowOverride All
                Require all denied
            </IfModule>
            <IfModule !mod_authz_core.c>
                Order allow,deny
                Deny from all
            </IfModule>
        </Directory>

        ErrorLog   /var/log/apache2/dokuwiki_error.log
        CustomLog  /var/log/apache2/dokuwiki_access.log combined
</VirtualHost>

Speichere und schließe die Datei, wenn du fertig bist. Aktiviere dann die Konfigurationsdatei des virtuellen DokuWiki-Hosts und lade den Apache-Dienst mit dem folgenden Befehl neu:

a2ensite dokuwiki.conf
systemctl reload apache2

Du kannst nun den Apache-Status mit dem folgenden Befehl überprüfen:

systemctl status apache2

Du solltest die folgende Ausgabe sehen:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2022-06-25 15:44:31 UTC; 4min 30s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 52450 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=0/SUCCESS)
   Main PID: 52131 (apache2)
      Tasks: 6 (limit: 4579)
     Memory: 16.9M
        CPU: 331ms
     CGroup: /system.slice/apache2.service
             ??52131 /usr/sbin/apache2 -k start
             ??52454 /usr/sbin/apache2 -k start
             ??52455 /usr/sbin/apache2 -k start
             ??52456 /usr/sbin/apache2 -k start
             ??52457 /usr/sbin/apache2 -k start
             ??52458 /usr/sbin/apache2 -k start

Jun 25 15:44:30 ubuntu2204 systemd[1]: Starting The Apache HTTP Server...

Jetzt ist der Apache-Webserver so konfiguriert, dass er die DokuWiki-Site bedienen kann. Jetzt kannst du Let’s Encrypt SSL auf deiner Website installieren.

Aktivieren von SSL auf der DokuWiki-Website

Um SSL auf DokuWiki zu aktivieren, musst du den Certbot-Client in deinem System installieren. Certbot ist ein Tool von Let’s Encrypt, das zum Herunterladen und Verwalten von SSL verwendet wird.

Du kannst Certbot mit dem folgenden Befehl installieren:

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

Nach der Installation führst du den folgenden Befehl aus, um das Let’s Encrypt SSL für deine Website zu installieren:

certbot --apache -d dokuwiki.linuxbuz.com

Du wirst aufgefordert, deine gültige E-Mail-Adresse anzugeben und die Nutzungsbedingungen zu akzeptieren (siehe unten):

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): hitjethva@gmail.com

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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 dokuwiki.linuxbuz.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/dokuwiki-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/dokuwiki-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/dokuwiki-le-ssl.conf

Als Nächstes wählst du 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

Gib 2 ein und drücke die Eingabetaste, um den Vorgang zu starten. Sobald die Installation abgeschlossen ist, solltest du die folgende Ausgabe erhalten:

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

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

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

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

Zu diesem Zeitpunkt ist deine Dokuwiki-Website mit Let’s Encrypt SSL gesichert.

Zugriff auf das DokuWiki

Öffne nun deinen Webbrowser und gib die URL https://dokuwiki.linuxbuz.com/install.php ein. Du solltest den DokuWiki-Installationsbildschirm sehen:

DokuWiki Installer

Lizenzbedingungen für Wiki-Inhalte wählen

Gib deinen Wiki-Namen, deinen Admin-Benutzernamen, dein Passwort und deine E-Mail-Adresse ein, wähle deine Richtlinie und klicke auf die Schaltfläche Speichern. Du wirst auf die folgende Seite weitergeleitet:

Installation erfolgreich

Klicke auf „Dein neues DokuWiki“. Du solltest den folgenden Bildschirm sehen:

DokuWiki-Seite

Klicke auf die Schaltfläche “ Anmelden“. Du wirst zum DokuWiki-Anmeldebildschirm weitergeleitet (siehe unten):

DokuWiki Anmeldung

Gib deinen Admin-Benutzernamen und dein Passwort ein und klicke auf die Schaltfläche Anmelden. Auf dem folgenden Bildschirm siehst du das DokuWiki-Dashboard:

Verwaltungsbereich

Auto-Erneuerung einrichten

Let’s Encrypt-Zertifikate sind standardmäßig 90 Tage lang gültig. Daher musst du einen Cron-Job einrichten, um das SSL-Zertifikat automatisch zu erneuern. Es ist sicher, einen Cron-Job zu erstellen, der jede Woche oder sogar jeden Tag läuft.

Wenn du das SSL-Zertifikat manuell erneuern möchtest, führe den folgenden Befehl aus:

certbot renew --dry-run

Du kannst einen Cron-Job einrichten, der das SSL-Zertifikat jeden Tag um 6:00 Uhr morgens automatisch erneuert, indem du die folgende Datei bearbeitest:

crontab -e

Füge die folgende Zeile hinzu:

00 06 * * *   root /usr/bin/certbot renew >/dev/null 2>&1

Speichere und schließe die Datei, wenn du fertig bist.

Fazit

Glückwunsch! Du hast DokuWiki erfolgreich installiert und mit Let’s Encrypt SSL auf Ubuntu 22.04 gesichert. Du kannst jetzt deine eigene Wiki-Seite mit DokuWiki erstellen. Wenn du noch Fragen hast, kannst du dich gerne an mich wenden.

Das könnte dich auch interessieren …