Wie man DokuWiki auf Ubuntu 20.04 LTS installiert
DokuWiki ist eine freie, quelloffene und äußerst vielseitige Wiki-Anwendung, die in PHP geschrieben wurde. Sie ist einfach und leichtgewichtig und verwendet ein einfaches Dateiformat zur Speicherung ihrer Daten, so dass sie keine Datenbank benötigt. Es ist bekannt für seine saubere und lesbare Syntax und erlaubt Ihnen die einfache Skalierung und Optimierung mit vielen fortgeschrittenen Funktionen. Sie können Ihre persönlichen oder geschäftlichen Websites erstellen, indem Sie einfach ihren Inhalt auf Ihren Server hochladen. Es wird mit einem reichhaltigen Satz von Funktionen geliefert, darunter WYSIWYG-Unterstützung, SEO-freundlich, integrierte Zugriffskontrollen und Authentifizierungskonnektoren, flexibles CSS-Framework und vieles mehr.
In diesem Tutorial zeigen wir Ihnen, wie Sie DokuWiki mit Apache und Letsencrypt SSL-Zertifikat unter Ubuntu 20.04 installieren.
Voraussetzungen
- Ein Server, auf dem Ubuntu 20.04 läuft.
- Ein gültiger Domain-Name, der auf Ihren Server verweist.
- Ein Root-Passwort ist auf Ihrem Server konfiguriert.
Aktualisieren Sie die Systempakete
Bevor Sie beginnen, wird empfohlen, Ihre Systempakete auf die neueste Version zu aktualisieren. Sie können dies mit dem folgenden Befehl tun:
apt-get update -y apt-get upgrade -y
Sobald Ihr System aktualisiert ist, starten Sie es neu, um die Änderungen zu implementieren.
Apache und PHP installieren
DokuWiki ist in PHP geschrieben und läuft auf dem Webserver. Sie müssen also den Apache-Webserver, PHP und andere PHP-Bibliotheken auf Ihrem System installieren. Sie können sie alle installieren, indem Sie den folgenden Befehl ausführen:
apt-get install apache2 php php-gd php-xml php-json -y
Wenn alle Pakete installiert sind, starten Sie den Apache-Dienst und aktivieren ihn beim Booten mit dem folgenden Befehl:
systemctl start apache2 systemctl enable apache2
Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
DokuWiki herunterladen
Gehen Sie zunächst auf die offizielle DokuWiki-Download-Seite und laden Sie die neueste Version des DokuWiki mit dem folgenden Befehl herunter:
wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-rc.tgz
Sobald der Download abgeschlossen ist, erstellen Sie ein DokuWiki-Verzeichnis innerhalb des Apache-Web-Stammverzeichnisses und entpacken Sie das DokuWiki:
mkdir /var/www/html/dokuwiki tar -xvzf dokuwiki-rc.tgz -C /var/www/html/dokuwiki/ --strip-components=1
Kopieren Sie anschließend die Beispieldatei .htaccess mit folgendem Befehl:
cp /var/www/html/dokuwiki/.htaccess{.dist,}
Als nächstes ändern Sie den Eigentümer des DokuWiki in www-data:
chown -R www-data:www-data /var/www/html/dokuwiki
Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Apache für DokuWiki konfigurieren
Als nächstes erstellen Sie eine Apache-Konfigurationsdatei für virtuelle Hosts, um die DokuWiki-Website bereitzustellen:
nano /etc/apache2/sites-available/dokuwiki.conf
Fügen Sie die folgenden Zeilen hinzu:
<VirtualHost *:80> ServerName dokuwiki.linuxbuz.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>
Speichern und schließen Sie die Datei, wenn Sie fertig sind. Aktivieren Sie dann die DokuWiki-Website und laden Sie den Apache-Dienst mit dem folgenden Befehl neu:
a2ensite dokuwiki.conf systemctl reload apache2
Zu diesem Zeitpunkt ist der Apache-Webserver so konfiguriert, dass er die DokuWiki-Site bedient. Sie können nun mit der Installation von Let’s Encrypt SSL auf Ihrer Website fortfahren.
Sicheres DokuWiki mit Let’s Encrypt SSL
Zunächst müssen Sie den Certbot-Client in Ihrem System installieren. Der Certbot ist ein einfach zu bedienender Client, der ein Zertifikat von Let’s Encrypt, einer offenen Zertifizierungsstelle, die von der EFF, Mozilla und anderen gestartet wurde, abruft und auf einem Webserver einsetzt. Mit dem Certbot Let’s Encrypt-Client können Sie das SSL-Zertifikat für Ihre Domain einfach herunterladen, installieren und erneuern.
Sie können den Certbot mit dem folgenden Befehl installieren:
apt-get install certbot python3-certbot-apache -y
Wenn der Certbot-Client erfolgreich installiert wurde, führen Sie den folgenden Befehl aus, um Let’s Encrypt SSL für Ihre Website zu installieren:
certbot --apache -d dokuwiki.linuxbuz.com
Sie werden aufgefordert, Ihre gültige E-Mail einzugeben und die Servicebedingungen wie unten dargestellt 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): 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
Wählen Sie als nächstes aus, ob HTTP-Datenverkehr zu HTTPS umgeleitet werden soll oder nicht, oder konfigurieren Sie Nginx so, dass der gesamte Datenverkehr zum sicheren HTTPS-Zugriff umgeleitet wird, wie in der folgenden Ausgabe gezeigt:
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 den Prozess zu starten. Sobald die Installation abgeschlossen ist, sollten Sie 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 Ihre Dokuwiki-Site mit Let’s Encrypt SSL gesichert. Sie können jetzt sicher auf Ihre Site über das HTTPS-Protokoll zugreifen.
Zugang zum DokuWiki
Öffnen Sie nun Ihren Webbrowser und geben Sie die URL https://dokuwiki.linuxbuz.com/install.php ein. Sie sollten den Installationsbildschirm des DokuWiki sehen:
Geben Sie Ihren Wikinamen, Ihren Administrator-Benutzernamen, Ihr Passwort und Ihre E-Mail-Adresse an, wählen Sie Ihre Richtlinie und klicken Sie auf die Schaltfläche Speichern. Sie werden auf die folgende Seite umgeleitet:
Klicken Sie auf„Ihr neues DokuWiki„. Sie sollten den folgenden Bildschirm sehen:
Klicken Sie auf die Schaltfläche Login. Sie werden zum DokuWiki-Anmeldebildschirm wie unten gezeigt weitergeleitet:
Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf die Schaltfläche Anmelden. Sie sollten das DokuWiki-Dashboard auf dem folgenden Bildschirm sehen:
Einrichten von Let’s Encrypt SSL Certificate Auto-Renewal
Standardmäßig sind Let’s Encrypt-Zertifikate 90 Tage lang gültig. Sie müssen also 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 Sie das SSL-Zertifikat manuell erneuern möchten, führen Sie den folgenden Befehl aus:
certbot renew --dry-run
Sie können einen Cron-Job einrichten, um das SSL-Zertifikat jeden Tag um 10:00 Uhr automatisch zu erneuern, indem Sie die folgende Datei bearbeiten:
crontab -e
Fügen Sie die folgende Zeile hinzu:
00 10 * * * root /usr/bin/certbot renew >/dev/null 2>&1
Speichern und schließen Sie die Datei, wenn Sie fertig sind.
Schlussfolgerung
Herzlichen Glückwunsch! Sie haben DokuWiki erfolgreich installiert und mit Let’s Encrypt SSL auf Ubuntu 20.04 gesichert. Sie können Ihr DokuWiki auch mit Theme, Plugins und Templates erweitern. Wenn Sie Fragen haben, können Sie mich gerne fragen.