Lese-Ansicht

Es gibt neue verfügbare Artikel. Klicken Sie, um die Seite zu aktualisieren.

Neues Theme in WordPress neue Darkmode CSS

Im Frontend ändert sich mein Blog nur noch marginal. Jedoch musste ich mich aufgrund von Änderungen im Sourcecode von WordPress für ein anderes Theme entscheiden. Zuvor hatte ich ein Theme von einem deutschen bekannten Entwicklerpaar gekauft, aber leider endet hier der Support doch recht schnell. Auch Bugfixes, welche ich einmal auf Github eingereicht hatte, wurden ... Weiterlesen

Der Beitrag Neues Theme in WordPress neue Darkmode CSS erschien zuerst auf Got tty.

Entfernen des gist-Plugins und YouTube aus WordPress

Ich habe nun das nächste Plugin aus WordPress entfernt. Auch habe ich mir nochmals Gedanken über dieses Plugin gemacht und es ist definitiv nicht Datenschutz konform, wenn ich Daten aus Github nachgeladen habe. Ich hatte zwar somit immer die neueste Version des Codes eingebunden, aber es war eigentlich eine Faulheit auf Kosten der Lesenden. Im ... Weiterlesen

Der Beitrag Entfernen des gist-Plugins und YouTube aus WordPress erschien zuerst auf Got tty.

Plugin WP-Appbox für WordPress deaktiviert

WP-Appbox ist ein wunderbares Plugin, welches vielfältige Darstellungsmöglichkeiten für die Verlinkung verschiedener Apps bietet. Das Plugin war bei mir seit 2013 in Benutzung. Ich habe es erstmals bei dem Blogbeitrag Ownstagram ein eigenes Instagram verwendet. Das Plugin bindet verschiedene Stores anhand eines Shortcodes ein und zieht sich hier die gewünschten Daten aus dem Shop. Ein ... Weiterlesen

Der Beitrag Plugin WP-Appbox für WordPress deaktiviert erschien zuerst auf Got tty.

Cookieless WordPress seit heute

Ich habe nun meine Bannermeldung nach dem Telekommunikation-Telemedien-Datenschutz-Gesetz (TTDSG) abgeschaltet. Siehe hierzu auch das Urteil des Bundesgerichtshofs vom 28. Mai 2020, Aktenzeichen I ZR 7/16.Ich betrieb meine Installation von Matomo schon so, dass seitens Matomo keine Cookies gesetzt wurden. Durch das Abschalten der Kommentarefunktion in WordPress konnten auch hier auf Cookies verzichtet werden. Den letzten Teil ... Weiterlesen

Der Beitrag Cookieless WordPress seit heute erschien zuerst auf Got tty.

Auf ein Minimum in WordPress

Nach über 14 Jahren Gebrauch ist WordPress eine Art von Hassliebe. Es ist nicht so, dass ich nicht andere Plattform für das Schreiben im Netz ausprobiert hatte. Ich startete mit WordPress, besuchte Drupal,Octopress und Serendpity, um am Ende doch wieder bei WordPress zu landen. Somit sitze ich im Moment vor meinem, doch in die Jahre ... Weiterlesen

Der Beitrag Auf ein Minimum in WordPress erschien zuerst auf Got tty.

PHP Code entfernt Kommentarfunktion in WordPress

Ich habe mich entschlossen, die Kommentare in meinem Blog abzuschalten. Ursprung war wie immer der Frühjahrsputz in dem Blog. Hierzu habe ich eine Funktion genutzt, welche neben den Kommentaren auch die Trackbacks und Pings entfernt.Ein sehr großer Vorteil ist, dass ich die alten Kommentare hierdurch noch behalte. Früher übernahm das Plugin My Custom Functions von ... Weiterlesen

Der Beitrag PHP Code entfernt Kommentarfunktion in WordPress erschien zuerst auf Got tty.

WordPress-Plugin Fastest Cache ermöglicht SQL-Injection

Experten von WPScan haben während einer internen Überprüfung des WordPress Fastest Cache Plugins eine schwerwiegende SQL-Injection-Schwachstelle entdeckt.

Diese Schwachstelle ermögliche es nicht authentifizierten Angreifern unter Umständen, den gesamten Inhalt der WordPress-Datenbank mithilfe eines zeitbasierten blinden SQL-Injection-Payloads zu lesen, heißt es in der Mitteilung von WPScan.

Nach Entdecken der Schwachstelle habe man das Plugin-Entwicklungsteam alarmiert, das die Version 1.2.2 veröffentlicht habe, die das Problem behebe, teilen die Security-Experten mit. Administratoren sollten sicherstellen, dass ihre WordPress-Installationen vollständig aktualisiert sind, um sich vor dieser Sicherheitslücke zu schützen, heißt es weiter.

Der Beitrag WordPress-Plugin Fastest Cache ermöglicht SQL-Injection erschien zuerst auf Linux-Magazin.

WordPress 6.4 mit neuem Theme und Verbesserungen

Die neue Version 6.4 des Content-Management-Systems WordPress bietet ein neues Theme, eine verbesserte Symbolleiste und eine überarbeitete Befehlspalette. Vorlagen lassen sich in Kategorien sammeln, zudem haben die Entwickler bei den Bildern nachgelegt.

Das neue Standard-Theme Twenty Twenty-Four richtet sich vor allem an Autoren, Künstler und Unternehmen. Wie das breite Anwendungsspektrum zeigt, ist das Theme äußert flexibel einsetzbar.

Bei der Eingabe von Text erscheint über ihm eine schwebende Symbolleiste mit häufig benötigten Formatierungsaktionen, wie etwa Fettdruck. In WordPress 6.4 verhält sie sich bei Navigation-, List- und Quote-Blöcken etwas anders: Dort schwebt sie ab sofort über dem ganzen Block und nicht mehr über dem gerade bearbeiteten Child-Block. Dies verbessert vor allem die Übersicht.

Autoren können direkt in der Link-Vorschau festlegen, dass sich die Seite in einem neuen Tab öffnen soll. Im Navigation-Block darf man zudem Schaltflächen hinzufügen. Listen lassen sich zudem jetzt einfacher zusammenführen.

Überarbeitet haben die Entwickler auch die Befehlspalette, die mit der Vorversion eingeführt wurde und über die man schnell eine gesuchte Aktion aufruft. In WordPress 6.4 präsentiert sie sich in einer aufgefrischten Optik und kennt Block-spezifische Aktionen.

Das CMS legt auch bei den Bildern nach: So darf man Group-Blöcke nicht nur umbenennen, sondern auch mit einem Hintergrundbild tapezieren. WordPress 6.4 bietet von Haus aus den Lightbox-Effekt – bisher musste man dazu auf Plugins zurückgreifen. Die List View bietet neue Vorschauen für Gallery- und Image-Blöcke und kennt neue Tastenkürzel.

Vorlagen darf man nicht nur in Kategorien gruppieren, sondern auch nach weiteren Kriterien filtern. Darüber hinaus lassen sich Vorlagen im JSON-Format exportieren und in einer anderen WordPress-Installation wieder importieren. Dies soll vor allem den Austausch von Vorlagen vereinfachen.

In frischen Installationen deaktiviert WordPress 6.4 standardmäßig die Anhang-Seiten. Sie präsentierten jeden hochgeladenen Anhang noch einmal auf einer eigenen Seite. Diese Seiten enthalten jedoch keine sinnvollen Informationen. Zudem landen sie im Index von Suchmaschinen, von wo aus Besucher dann auf den eher kargen Anhang-Seiten landen. Aus diesem Grund haben sich die WordPress-Entwickler dazu entschieden, sie nicht mehr standardmäßig generieren zu lassen. Bestehende WordPress-Installationen erzeugen die Anhang-Seiten nach einem Update jedoch weiterhin. WordPress 6.4 ist der Jazz-Musikerin Shirley Horn gewidmet.

Der Beitrag WordPress 6.4 mit neuem Theme und Verbesserungen erschien zuerst auf Linux-Magazin.

Campus Medien Tage 2023

Am 16. September 2023 fanden in Halle am Institut für Informatik der Martin-Luther-Universität die Campus Medien Tage 2023 statt.

Hierzu wurde ich von der Studierendenzeitschrift hastuzeit angefragt, einen kleinen Workshop zum Thema WordPress durchzuführen. Da dies eine gute Plattform bot, die freie Software WordPress vorzustellen, habe ich nicht lange überlegt und ja gesagt. Ich wusste zu diesem Zeitpunkt nicht, in wie weit das Puplikum schon mit diesem Content-Management-System gearbeitet hat, deshalb habe ich mich kurzerhand dazu entschieden auf die Grundlagen von WordPress einzugehen und die Basics etwas näher zu beleuchten.

Instagram-Post cameta_halle
Flyer der Campus Medien-Tage 2023
Campus Medien Tage 2023

Da tatsächlich nur ein Viertel der anwesenden Studierenden mit WordPress (aus administrativer Sicht) bisher in Berührung kam, lag ich mit meinem Gefühl hier durchaus richtig. Einige Fragen konnten in der anschließenden Diskussion noch beantwortet werden.

Neben meinem Vortrag gab es viele weitere interessante Themen, wie Grafikbearbeitung, die richtige Verwendung von Suchmaschinen, Künstliche Intelligenz, Fotografie, Tipps zum redaktionellen Schreiben und Rechtliches, in Form von Vorträgen und Workshops.

Geöffnetes Notebook im Workshop CaMeTa
Workshop CaMeTa

Alles in allem war es eine sehr gute Veranstaltung, organisiert und durchgeführt von engagierten jungen und wissbegierigen Menschen.

Gruppenfoto der Studierenden
Gruppenfoto

WordPress 6.3.2 schließt Lücken

Die aktuelle WordPress-Version bringt diverse Updates, darunter auch Patches für acht Sicherheitsprobleme.

Produktpflege und Sicherheit sind die Hauptmerkmale von WordPress 6.3.2. Eines der genannten Sicherheitsprobleme könne dafür sorgen, dass Kommentare zu privaten Beiträgen an andere Nutzer weitergegeben werden könnten. Weiterhin haben Experten eine Lücke entdeckt, die es einem angemeldeten Benutzer erlaubt einen beliebigen Shortcode auszuführen. XSS-Schwachstellen in der Passwortseite der Anwendung und im Fußnotenblock sind ebenfalls genannt.

Mit dem Maintenance-Teil von WordPress 6.3.2 behebt das Wartungs-Team zudem 22 Bugs im Block-Editor und 19 Fehler im Core. Das komplette Changelog steht derzeit noch aus.

Der Beitrag WordPress 6.3.2 schließt Lücken erschien zuerst auf Linux-Magazin.

Ninja Forms macht WordPress unsicher

Drei Sicherheitslücken haben die Experten von Patchstack im WordPress-Plugin Ninja Forms entdeckt. Damit sei eine Ausweitung der Rechte und ein damit möglicher Datenklau verbunden, berichten die Sicherheitsexperten.

Nutzer von WordPress und dem sehr populären Formulartool Ninja Forms sollten das Plugin auf Version 3.6.26 aktualisieren. In dieser Version seien die Probleme behoben, alle früheren Versionen

Bei der ersten Schwachstelle handelt es sich laut Mitteilung von Patchstack um ein POST-basiertes reflektiertes XSS. Diese Lücke könnte es jedem nicht authentifizierten Benutzer ermöglichen, sensible Informationen zu stehlen, um in diesem Fall die Rechte auf der WordPress-Website zu erweitern, indem er privilegierte Benutzer dazu bringt, die manipulierte Website zu besuchen. Die beschriebene Sicherheitslücke sei in Version 3.6.26 behoben und mit CVE-2023-37979 gekennzeichnet.

Bei der zweiten und dritten Sicherheitslücke handle es sich um eine nicht funktionierende Zugriffskontrolle für die Exportfunktion von Formularübermittlungen. Diese Schwachstelle ermöglicht es Benutzern mit der Rolle Abonnent und Mitwirkender, alle Ninja Forms-Eingaben auf einer WordPress-Website zu exportieren. Die beschriebene Sicherheitslücken seien in Version 3.6.26 behoben und mit CVE-2023-38393 und CVE-2023-38386 gekennzeichnet.

Der Beitrag Ninja Forms macht WordPress unsicher erschien zuerst auf Linux-Magazin.

WordPress: Exploit-Kampagne gegen WooCommerce Payments

Das WordPress-Plugin WooCommerce Payments weist eine Sicherheitslücke auf, die nach den Erkenntnissen der Sicherheitsexperten von Wordfence derzeit massiv angegriffen wird.

Da das Plugin bei rund 600.000 WordPress-Seiten installiert ist, wird die Sicherheitslücke in großem Stil ausgenutzt. Wordfence spricht von einer gezielten Exploit-Kampagne.

Die Sicherheitslücke ermöglicht es laut Wordfence nicht authentifizierten Angreifern, administrative Rechte auf anfälligen Websites zu erlangen, was mit einem kritischen CVSS-Wert von 9,8 bewertet werde. Die Lücke ist als CVE-2023-28121 gekennzeichnet. Nach den Beobachtungen von Wordfence haben die Angriffe am Donnerstag, den 14. Juli 2023 begonnen und sich über das Wochenende fortgesetzt. Am Samstag, den 16. Juli habe die Attacke mit 1,3 Millionen Angriffen auf 157.000 Websites ihren Höhepunkt erreicht.

Den Anbietern von WooCommerce kann man dabei keinen Vorwurf machen, die Sicherheitslücke war mit einem Update auf Version 5.6.2 des Woocommerce Payments-Plug-ins schon im März 2023 geschlossen worden. Administratoren sollten also dringend ein Update einspielen. In der Analyse von Wordfence lassen sich weitere Informationen zum Aufspüren von Angriffen und der Funktionsweise des Exploits nachlesen.

Der Beitrag WordPress: Exploit-Kampagne gegen WooCommerce Payments erschien zuerst auf Linux-Magazin.

WP fail2ban: Gutes Plugin mit ausbaufähiger Dokumentation

WP fail2ban ist ein Plugin zum Schutz von WordPress-Installationen vor Brute-Force-Angriffen. Installation und Konfiguration habe ich bereits im Artikel WordPress mit Fail2Ban vor Brute-Force-Angriffen schützen dokumentiert. Dieser Text beschäftigt sich mit der offiziellen Dokumentation des Plugins, bzw. dem Text, der sich als Dokumentation ausgibt.

Ich stelle hier meine Erwartung an eine Dokumentation heraus, zeige die Schwächen der exemplarisch ausgewählten Dokumentation heraus und gebe einen Tipp, wie man weniger schlechte Dokus schreibt. Ich schließe mit Fragen an meine Leserinnen und Leser und freue mich auf eure Rückmeldungen.

In meinen Augen sind folgende drei Abschnitte zwingender Bestandteil einer jeden Dokumentation:

  1. Was ist dies für eine Anwendung? Wofür wird sie verwendet und wofür nicht?
  2. Wie wird diese Anwendung installiert?
  3. Wie wird diese Anwendung konfiguriert?

Die ersten beiden Punkte mag ich als erfüllt betrachten. Beim dritten Punkt sehe ich ein Problem.

Bildschirmfoto der WP fail2ban-Installationsanleitung. Zeitstempel 2023-06-04T20:54+02

Die Installationsanleitung ist prägnant. Sie enthält einen Link, der suggeriert, zur Konfigurationsanleitung zu führen. Dort erwartet den neugierigen Leser folgendes Bild.

Bildschirmfoto vom Einstieg in die WB fail2ban-Konfigurationsanleitung. Zeitstempel 2023-06-04T20:59+02

Hier gibt es noch keine nützlichen Informationen zu sehen. Die Seite ist in meinen Augen überflüssig. Aber gut, ein Satz tut nicht weh. Mit einem Klick auf „Next“ geht es weiter.

Bildschirmfoto WP fail2ban-Dokumentation. Zeitstempel 2023-06-04T21:04+02

Hier steht im Wesentlichen, dass Nutzer, welche sich bereits auskennen, zum nächsten Abschnitt gehen können. Leider finden sich für neue Nutzer hier kaum brauchbare Informationen. Der Hinweis, die Datei wp-config.php zu sichern, bevor man diese bearbeitet, ist nett, mehr nicht. Es wird erwähnt, dass die freie (im Sinne von Freibier) Version des Plugins durch Definition von Konstanten in der Datei wp-config.php konfiguriert wird. Wie so eine Konstante aussieht oder wo man weiterführende Informationen dazu findet, steht hier nicht. Ich habe an dieser Stelle entsprechende Hinweise erwartet. Gut, ich kann ja noch auf „Next“ klicken.

Bildschirmfoto WP fail2ban-Dokumentation, Abschnitt Logging. Zeitstempel 2023-06-04T21:14+02

Auch in diesem Abschnitt findet sich keine Information, was man nun mit der Datei wp-config.php soll. Immerhin gibt es in Abschnitt 4.2.1. einen Link, der Nutzer, welche nicht mit der Konfiguration vertraut sind, zur Konfigurationsanleitung führen soll. Ich habe ein Déja Vu und fühle mich langsam ver…hohnepiepelt. Also klicke ich auf den nächsten LInk. Es heißt ja schließlich: „Was lange währt, wird endlich gut.“

TL;DR: Auch auf der nächsten Seite erfahren wir nichts über die wp-config.php.

Bildschirmfoto der URL: https://docs.wp-fail2ban.com/en/5.0/configuration/fail2ban.html#configuration-fail2ban. Zeitstempel 2023-06-04T21:21+02

Zur Erinnerung: Ich nutze die freie Version des Plugins WP fail2ban, welches angeblich durch die Definition von Konstanten in der Datei wp-config.php konfiguriert wird. Welche Konstanten dies sind und wie man diese konfiguriert, wird auch auf Seite 4 immer noch nicht mit einem Wort erklärt.

Stattdessen lernt man in Abschnitt „4.3.1.1. Typical Settings“, dass die Dateien wordpress-hard.conf und wordpress-soft.conf in das Verzeichnis fail2ban/filters.d zu kopieren sind. Hier wurden in meinen Augen zwei Fehler gemacht:

  1. Es wird nicht erwähnt, wie man die Dateien wordpress-,{hard,soft}.conf erhält bzw. erstellt. Als unerfahrener Nutzer strandet man hier. Zum Glück hatte ich mir das damals aufgeschrieben.
  2. Es wird eine relative Pfadangabe fail2ban/filters.d genutzt. Dies ist nicht ganz so wild, ich persönlich bevorzuge es, wenn vollständige Pfadangaben genutzt werden, damit Nutzer das entsprechende Verzeichnis sicher finden.

Fazit

Eine Dokumentation sollte die notwendigen Informationen bereitstellen, mit denen auch neue Nutzer eine Anwendung installieren und konfigurieren können. Dies ist nicht so leicht, wie es auf den ersten Blick erscheint, leiden Autoren, welche die Anwendung bereits kennen, doch häufig unter Betriebsblindheit und können sich nur schwer in die Rolle des unerfahrenen Nutzers versetzen.

Wenn ich selbst Dokumentationen schreibe, gebe ich diese meist Kolleginnen und Kollegen zu lesen und arbeite deren Rückmeldungen mit ein. Dies hat in der Vergangenheit zu deutlich besseren Ergebnissen geführt.

Die hier kritisierte Dokumentation ist ein Beispiel dafür. Sie befindet sich damit leider in guter Gesellschaft im Internet.

Ohne meinen Eingangs erwähnten Artikel hier im Blog wäre ich nicht in der Lage gewesen, mir dieses Plugin wieder einzurichten. Nun werde ich einige Tage prüfen, ob es wie erhofft arbeitet und dann ggf. einen Merge-Request mit einigen Verbesserungsvorschlägen einreichen.

Fragen an meine Leserinnen und Leser

Wie steht ihr zu Dokumentation? Ist das eher etwas für alte weiße Männer mit grauen Bärten? Oder wünscht ihr euch ebenfalls belastbare und ausführliche Dokumentationen zu den von euch verwendeten Anwendungen?

Tragt ihr selbst zu Dokumentationen bei? Welche Erfahrungen habt ihr dabei gemacht? Welche Tipps könnt ihr Schreiberlingen geben, die ihr Projekt dokumentieren möchten?

Bitte hinterlasst mir eure Antworten in den Kommentaren oder im Chat.

WordPress-Installation unter RHEL 9 bzw. AlmaLinux 9

Sie wollen WordPress auf einem Server mit RHEL 9 oder einem Klon installieren? Diese Anleitung fasst alle erforderlichen Schritte zusammen. Dabei gehe ich davon aus, dass Sie über eine minimale Installation auf einem Root-Server oder in einer virtuellen Maschine verfügen. Ich habe meine Tests mit AlmaLinux 9 in einer Hetzner-Cloud-Instanz durchgeführt.

DNS-Einträge

Nachdem Sie Ihren Server in Betrieb genommen und sich mit SSH eingeloggt haben, ermitteln Sie die IP-Adressen, unter denen der Server nach außen hin erreichbar ist. Beachten Sie, dass das an sich nützliche Kommando hostname -I nicht in jedem Fall zielführend ist. Wenn Ihre virtuelle Maschine als EC2-Instanz in der Amazon Cloud (AWS) läuft, liefert das Kommando eine Adresse in einem privaten Netzwerk. Diese Adresse gilt aber nur AWS-intern! Sie müssen in der AWS-Konsole ergründen, welche IP-Adresse nach außen gilt.

Ich gehe hier davon aus, dass Ihre WordPress-Installation unter den Adressen example.com und www.example.com zugänglich sein soll und dass Sie IPv4 und IPv6 unterstützen. Dann müssen Sie für Ihre Domain example.com vier DNS-Einträge definieren. Naturgemäß müssen Sie die Beispiel-IP-Adressen durch Ihre echten IP-Adressen ersetzen. Normalerweise dauert es eine Weile (fünf Minuten bis hin zu mehreren Stunden), bis diese DNS-Änderungen wirksam werden.

Typ    Name      Zieladresse
-----  -------   -------------------
A       @        1.2.3.4
A       www      1.2.3.4
AAAA    @        2345:1234:1234::1
AAAA    www      2345:1234:1234::1

Software-Installation

Auf Ihrem Server müssen Sie nun einen Webserver, einen Datenbank-Server sowie PHP installieren. Ich gehe hier davon aus, dass Sie Apache und MySQL verwenden. Statt Apache wäre natürlich auch NGINX denkbar, statt MySQL auch MariaDB. (Beachten Sie aber, dass die mit RHEL 9 uralte MariaDB-Versionen ausgeliefert werden. Wenn Sie MariaDB einsetzen möchten, sollten Sie den Datenbank-Server aus dem Repository von MariaDB installieren, siehe https://mariadb.org/download/?t=repo-config.)

dnf install epel-release httpd mod_ssl mysql-server
dnf module install php:8.1
dnf install php-mysqlnd

Mit systemctl starten Sie den Web- und Datenbank-Server:

systemctl enable --now httpd   
systemctl enable --now mysqld

Firewall

Falls Sie auf einem Root-Server arbeiten, müssen Sie die Firewall für die Protokolle HTTP und HTTPS (also Port 80 und 443) freischalten:

firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

Bei Cloud-Instanzen entfällt dieser Schritt normalerweise: Die meisten Cloud-Anbieter haben in ihren Instanzen die RHEL-interne Firewall deaktiviert und verwenden stattdessen Firewalls auf Cloud-Ebene, die über die Web-Oberfläche des Cloud-Systems konfiguriert werden muss.

Apache ausprobieren

Um zu testen, dass Ihre Website im Internet zugänglich ist, schreiben Sie »Hello World« in eine Datei im Webverzeichnis /var/www/html:

echo "Hello World" > /var/www/html/index.html

Nun öffnen Sie im Webbrowser auf Ihrem Notebook die Adresse www.example.com oder example.com. Statt »Hello World« wird der Webbrowser eine Sicherheitswarnung anzeigen, weil Ihr Server noch über kein richtiges Zertifikat verfügt. Das ist ein gutes Zeichen: Der Web-Server an sich funktioniert. Ihr Webbrowser erkennt, dass Ihr Server HTTPS unterstützt und will dieses verwenden.

Let’s-Encrypt-Zertifikat für HTTPS einrichten

Es gibt verschiedene Tools, um Zertifikate von Let’s Encrypt zu installieren. Meiner Ansicht nach funktioniert acme.sh am besten. Zur Installation führen Sie die folgenden Kommandos aus:

dnf install tar socat
curl https://get.acme.sh -o acme-setup
less acme-setup                             (kurze Kontrolle)
sh acme-setup email=admin@example.com

An die E-Mail-Adresse werden Warnungen verschickt, sollte in Zukunft die automatische Erneuerung von Zertifikaten nicht funktionieren. Damit Sie das frisch installierte Script verwenden können, müssen Sie sich aus- und neu einloggen. Jetzt fordern Sie das gewünschte Zertifikat an, wobei Sie natürlich example.com wieder durch Ihren tatsächlichen Hostnamen ersetzen:

acme.sh --issue -d --server letsencrypt example.com -d www.example.com -w /var/www/html

  Your cert is in
    /root/.acme.sh/example.com/example.com.cer 
  ...

acme.sh speichert das Zertifikat also vorerst in Ihrem Heimatverzeichnis. Sie könnten die Zertifikatsdateien einfach in das /etc-Verzeichnis kopieren, aber das wäre keine gute Idee: Das Zertifikat muss regelmäßig erneuert werden, und acme.sh muss wissen, wohin die neuen Zertifikate dann kopiert werden müssen. Daher weisen Sie acme.sh an, die Zertifikate in das Verzeichnis /etc/mycert zu kopieren:

mkdir /etc/mycert

acme.sh --install-cert -d example.com \
  --cert-file      /etc/mycert/example.com.cert \
  --key-file       /etc/mycert/example.com.key \
  --fullchain-file /etc/mycert/example.com.fullchain

acme.sh merkt sich den Installationsort und berücksichtigt ihn in Zukunft automatisch bei Updates der Zertifikate. Für diese Updates ist das Kommando acme.sh --cron zuständig, das automatisch einmal täglich durch /var/spool/cron/root ausgeführt wird.

Die Zertifikatsdateien sind nun im /etc-Verzeichnis, aber Apache weiß noch nichts davon. Sie müssen also in der Webserver-Konfiguration angeben, wo sich die Verzeichnisse befinden. Dazu verändern Sie zwei Zeilen in ssl.conf:

# in /etc/httpd./conf.d/ssl.conf zwei Zeilen ändern
SSLCertificateFile    /etc/mycert/example.com.fullchain
SSLCertificateKeyFile /etc/mycert/example.com.key

Jetzt starten Sie Apache neu:

systemctl restart httpd

Danach versuchen Sie nochmals, die Seite example.com im Webbrowser zu öffnen. Jetzt sollte alles klappen, d.h. »Hello World« wird verschlüsselt vom Webserver zum Webbrowser übertragen und der Webbrowser ist mit dem Zertifikat zufrieden.

MySQL absichern

Unbegreiflicherweise ist die MySQL-Installation von RHEL 9 und all seinen Klonen offen wie ein Scheunentor. Jeder Benutzer, der sich auf dem Linux-System anmelden kann, erhält mit mysql -u root ohne Passwort Root-Rechte für MySQL. Abhilfe schafft das Kommando mysql_secure_installation. Die folgenden Zeilen fassen stark gekürzt die wichtigsten Eingaben zusammen:

mysql_secure_installation 

Would you like to setup VALIDATE PASSWORD  component?      n

New password:          xxxxxx
Re-enter new password: xxxxxx

Remove anonymous users?                 y
Disallow root login remotely?           y
Remove test database and access to it?  y
Reload privilege tables now?            y

MySQL-Datenbank einrichten

WordPress braucht eine Datenbank, in der Ihre Einstellungen, den HTML-Code Ihrer Blog-Beiträge, die Kommentare anderer Benutzer usw. speichern kann. Diese Datenbank sowie ein Datenbank-Nutzer, der darauf zugreifen darf, wird jetzt eingerichtet. Ich habe für die Datenbank und den Benutzer jeweils den Namen wp verwendet, aber natürlich sind Sie bei der Namenswahl frei.

mysql -u root -p
Password: xxxxxxx   (gleiches Passwort wie bei mysql_secure_installation)

mysql> CREATE DATABASE wp;
mysql> CREATE USER wp@localhost IDENTIFIED BY 'strengGeheim';
mysql> GRANT ALL ON wp.* TO wp@localhost; 
mysql> exit

WordPress-Dateien installieren

WordPress steht nicht als Paket zur Verfügung, sondern muss manuell installiert werden. Dazu laden Sie die Dateien herunter, packen Sie aus und weisen Ihnen die richtigen Zugriffsrechte samt SELinux-Kontext zu.

cd /var/www/html
rm index.html
wget https://de.wordpress.org/latest-de_DE.tar.gz
tar xzf latest-de_DE.tar.gz
chown -R apache wordpress
chcon -R system_u:object_r:httpd_sys_content_rw_t:s0 wordpress
rm latest-de_DE.tar.gz

Mit der Installation der WordPress-Dateien in /var/www/html/wordpress soll dieses Verzeichnis der Startpunkt für die Dateien in Apache sein. Daher mussdie Variable DocumentRoot von /var/www/html auf /var/www/html/wordpress umgestellt werden. Bei der Gelegenheit können Sie auch gleich den Server-Namen einstellen:

# in /etc/httpd/conf/httpd.conf zwei Zeilen ändern
DocumentRoot "/var/www/html/wordpress"
ServerName example.com

Damit die Einstellungen wirksam werden, ist das folgende Kommando notwendig:

systemctl reload httpd

WordPress konfigurieren

Damit ist es endlich soweit. Sie können nun mit der WordPress-Konfiguration beginnen. Dazu öffnen Sie die Seite example.com/wp-admin/setup-config.php. Im ersten Schritt müssen Sie den Namen der Datenbank, den Datenbank-User sowie dessen Passwort angeben.

Konfiguration des Datenbankzugriffs für WordPress

Im nächsten Schritt legen Sie den Namen Ihrer Website sowie einen Benutzernamen und ein Passwort für die WordPress-Administration fest. Mit diesen Daten können Sie sich danach bei Ihrer neuen Seite anmelden und die mit Inhalten füllen.

Fine Tuning

Wenn alles funktioniert, sollten Sie sich noch um die folgenden Details kümmern:

  • SSH absichern (z.B. mit Fail2Ban)
  • Paket-Updates automatisieren (Paket dnf-automatic)
  • automatische Umleitung HTTP -> HTTPS sowie Optimierung der HTTPS-Optionen (siehe https://ssl-config.mozilla.org)
  • Backup-System einrichten

Kritische Lücke in WordPress-Plugin Essentials Addon for Elementor

Das WordPress-Plugin Essentials Addon for Elementor bringt eine kritische Sicherheitslücke mit. Angreifer könnten so eine WordPress-Instanz kompromittieren. Das Plugin bringt es auf rund eine Million aktiver Installationen.

In einem Update des Plugins auf Version 5.7.2 ist die Lücke geschlossen. Admins sollten rasch ein Update machen. Die Entdecker der Lücke, Experten vom WordPress-Sicherheitsanbieter Patchstack schreiben von einer Rechteausweitung, die ohne vorherige Authentifizierung möglich ist. Sie ermögliche es jedem nicht authentifizierten Benutzer, seine Rechte auf die Rechte eines beliebigen Benutzers auf der WordPress-Site auszuweiten, heißt es im Bericht zum Sicherheitsproblem.

Es sei etwa möglich, das Passwort jedes Benutzers zurückzusetzen, solange sein Benutzername bekannt sei, sodass man auch das Passwort des Administrators zurücksetzen und sich bei seinem Konto anmelden könne. Diese Sicherheitslücke trete auf, weil die Funktion zum Zurücksetzen des Passworts einen Passwort-Reset-Schlüssel nicht validiere, sondern stattdessen das Passwort des angegebenen Benutzers direkt ändere.

Der Beitrag Kritische Lücke in WordPress-Plugin Essentials Addon for Elementor erschien zuerst auf Linux-Magazin.

WordPress 6 – Das umfassende Handbuch

WordPress 6 – Das umfassende Handbuch“ von Richard Eisenmenger und Florian Brinkmann ist 2022 in der 2. aktualisierten und erweiterten Auflage im Rheinwerk Verlag erschienen und umfasst 955 Seiten.

Dieses Buch basiert auf der Arbeit von Richard Eisenmenger, der 2021 nach schwerer Krankheit verstarb und mit „WordPress 5 – Das umfassende Handbuch“ den Grundstein zu dieser Neuerscheinung legte. Florian Brinkmann konnte dieses Werk weitgehend überarbeiten, aktualisieren und erweitern. Die Teile dieses Buches bauen didaktisch aufeinander auf und sind somit für Neulinge und Fortgeschrittene gleichermaßen interessant.

Auch in dieser Ausgabe geht der Autor einleitend und ausführlich auf zwei entscheidende Unterschiede zum Betrieb von WordPress ein; will man die Seite selbst hosten oder hosten lassen. Ob Dot-org oder Dot-com entscheidet oft der Preis, aber auch die Frage, wie weit sich der Nutzer auf die Technik und die Vorzüge Freier Software selbst einlassen möchte.

Das Buch ist in vier Teile gegliedert.

TEIL I WordPress installieren und bedienen gibt dem Leser einen Einblick über die Möglichkeit einer lokalen Installation auf dem PC in einer Virtualisierungsumgebung zum Testen, aber auch zur finalen Installation bei einem Webhoster seiner Wahl. Als erste Anlaufstelle wird hier auf den Open-Source-Spezialisten Bitnami verwiesen, von dem man sich ein vorkonfiguriertes Anwendungspaket herunterladen kann, um WordPress auf einem PC oder Notebook auszuprobieren. Begrifflichkeiten, wie Frontend und Backend werden hinreichend besprochen. Weiterhin werden ausreichende Tipps und Hinweise zur Administration, Konfiguration und Absicherung der eigenen Webseite gegeben. Diese Erläuterungen setzt der Autor anhand des Themes Twenty Twenty-Two praxisnah um.

Mit WordPress 5.0 wurde im Jahre 2018 der neue Block-Editor Gutenberg eingeführt, auf den in diesem Teil sehr ausführlich eingegangen wird. Dies dient nicht nur dazu Kritiker dieses Editors zu überzeugen, sondern gibt einen Einblick in die vielfältigen Gestaltungsmöglichkeiten dieses Werkzeugs.

TEIL II WordPress-Website anpassen und erweitern geht auf die neuen Möglichkeiten des mit WordPress 6 eingeführten Full Site Editing ein. Hiermit wird dem Anwender eine Möglichkeit gegeben, die neuen Block-Themes noch freier und umfangreicher zu gestalten als im bekannten Customizer.

Weiterhin zeigt dieser Teil des Handbuches, wie man mit WordPress einen Blog, eine statische Webseite, eine Community-Seite oder einen Online-Shop mit WooCommerce aufbauen kann.

TEIL III WordPress optimieren und warten behandelt Themen wie Updates, Updateverhalten, Backups, Wartung, Suchmaschinenoptimierung und Umzug einer WordPress-Seite auf eine andere. Der Leser findet viele nützliche Tipps und Hinweise rund um die Sicherheit sowie den reibungslosen Betrieb der eigenen Webseite. Themen wie die Optimierung der Zugriffsgeschwindigkeit über Aktivierung eines Caches als Erweiterung, aber auch die Option, die Seite über ein Plugin bei Bedarf in einen Wartungsmodus zu versetzen, sind hinreichend beschrieben.

TEIL IV WordPress für Entwicklerinnen und Entwickler ist für diejenigen interessant, die noch tiefer in das Content Management System einsteigen möchten, um eventuell Plugins oder Themes selbst zu entwickeln bzw. die eigene Webseite noch individueller zu gestalten.

Das Buch umfasst 21 Kapitel.

  • Was Sie mit WordPress vorhaben und wo Sie jetzt weiterlesen
  • WordPress-Installation in wenigen Minuten
  • WordPress-Installation – flexibel
  • Online-Installation beim Webhoster
  • Administration und Konfiguration von WordPress
  • Inhalte veröffentlichen
  • Benutzer und Besucher
  • Design anpassen
  • Neue WordPress-Funktionen mit Plugins hinzufügen
  • Das Blog
  • Die Community
  • Einen Online-Shop mit WooCommerce betreiben
  • WordPress-Wartung und Pflege
  • Migrationen, Synchronisationen und Deployments
  • Sicherheit ausbauen
  • Performance- und Suchmaschinenoptimierung
  • Notfallmaßnahmen
  • Grundwissen für WordPress-Entwicklerinnen und Entwickler
  • Theme entwickeln
  • Plugin und Block entwickeln
  • Rechtliche Aspekte: Newsletter, Datenschutz und Cookies

Leseproben und Downloads

Fazit

„WordPress 6 – Das umfassende Handbuch“ ist, wie der Name schon verrät, ein ideales Nachschlagewerk für Einsteiger und versierte WordPress-Nutzer gleichermaßen. Florian Brinkmann geht in der fast tausendseitigen Überarbeitung dieses Werkes so ziemlich auf jedes Szenario ein und hilft dem Leser beim Auf- bzw. Ausbau der eigenen Webseite mit dem Content Management System WordPress. Zahlreiche Beispiele in Form von Code-Schnipseln helfen, dabei Fehler beim Abtippen zu vermeiden.

Dieses ausführliche Handbuch ist aus den zuvor genannten Gründen eine klare Empfehlung.

Zugang über YubiKey zu WordPress verweigert

Wer wie ich seine WordPress-Seite über das beliebte Plugin Two-Factor absichert, wird bestimmt bemerkt haben, dass man mit den neuen Versionen 112 von Firefox und Google Chrome über seinen U2F-Token keinen Zugang mehr zum Backend bekommt. Wohl dem, der bei der Einrichtung zusätzlich auf TOTP gesetzt hat und sich vom System Backup-Codes erstellen ließ. Über diese Hintertüren erhält man trotz Verweigerung des Hardware-Keys Zugang zur eigenen Webseite.

Was ist passiert?

Ich vermute, dass die neuen Browserversionen die Nutzung von FIDO verweigern und nur noch den neueren Standard FIDO2 bzw. Webauthn zulassen, was zur Folge hat, dass einige Dienste im herkömmlichen Sinne den aktivierten Zugang über USB-Token, wie u.a. YubiKey verweigern. Ein weiteres Indiz hierfür wäre, die kaputte Webauthn-Anmeldung in Nextcloud 26, welche heute mit Version 26.0.1 gefixt wurde.

Wie kann WordPress nun wieder via YubiKey abgesichert werden?

Eine einfache Lösung wäre vorerst das Plugin WebAuthn Provider for Two Factor zu installieren, welches auf dem Plugin Two-Factor aufsetzt, bis der Entwickler dieses an die neuen Gegebenheiten angepasst hat. Hierbei wird die weitere Auswahlmöglichkeit Webauthn in der Einstellung des Profils hinzugefügt. Der zuvor aktivierte FIDO-Token wird automatisch übernommen und unter FIDO2 genutzt. Somit ist die Webseite wieder über den zweiten Faktor abgesichert.

Eine passwortlose Anmeldung wie in der Nextcloud ist aber leider nicht möglich.

Webauthn in WordPress

Viel Spaß!

WordPress-Plugin Elementor Pro wird aktiv angegriffen

Mit der Version 3.11.7 des WordPress-Plugins Elementor Pro beheben die Entwickler eine kritische Sicherheitslücke, die es Angreifern unter Umständen erlaubt, WordPress sich als Administrator auszuführen.

Mit der Kombination Elementor Pro und dem auf der Website laufenden WooCommerce-Plugin sei es jedem authentifizierten Benutzer, etwa in der Rolle als “Abonnent” oder “Kunde” – möglich, beliebige WordPress-Einstellungen auf der Website zu aktualisieren, teilen die Entdecker der Lücke vom Sicherheitsanbieter Patchstack mit. Verantwortlich für die Lücke sei eine AJAX-Aktion von Elementor Pro, die nicht über eine angemessene Berechtigungskontrolle verfüge. Die Elementor-Pro-Versionen 3.11.6 und darunter seien von dieser Sicherheitslücke betroffen.

Die mangelhafte Kontrolle ermögliche es einem böswilligen Angreifer, die Registrierungsseite zu aktivieren – falls sie deaktiviert sei – und die Standardbenutzerrolle auf Administrator zu setzen, so dass er ein Konto erstellen könne, das über Administratorrechte verfüge. Danach sei es wahrscheinlich, dass er die Website entweder auf eine bösartige Domain umleite oder ein sonstige schädliche Aktionen ausführe, etwa ein bösartiges Plugin oder eine Backdoor zu installieren, um die Website weiter ausnutzen zu können.

Mit dem kürzlich veröffentlichten Elementor Pro 3.11.7 werde das Problem behoben. Da die Lücke bereits aktiv ausgenutzt werde, sei ein rasches Update nötig, teilt Patchstack in seinem Beitrag zur Lücke mit.

Der Beitrag WordPress-Plugin Elementor Pro wird aktiv angegriffen erschien zuerst auf Linux-Magazin.

WordPress 6.2 bietet rund 300 Verbesserungen

Wie bei jeder neuen Version bringt auch die jüngste Fassung 6.2 des Content-Management-Systems WordPress zahlreiche kleinere Änderungen an den Blöcken mit. Weitere Neuerungen betreffen den Site-Editor.

In ihm erlaubt jetzt die linke Seitenleiste den Wechsel zwischen Templates und Template-Teilen, ohne dafür die Vorschau schließen zu müssen. Des Weiteren bietet der Site-Editor ein Stilbuch an. Dieses wiederum zeigt an, wie alle Blöcke im derzeit aktiven Theme aussehen. Den Stil eines Blocks kann man zudem mit wenigen Mausklicks auf einen anderen Block übertragen.

Die Menüs im Navigations-Block lassen sich über eine Baumstruktur in der Block-Seitenleiste einfacher bearbeiten. Für Header- und Footer hat WordPress 6.2 neue Block-Vorlagen im Gepäck.

Beim Block-Inserter zeigt das Register für die Block-Vorlagen eine Liste mit Kategorien sowie nach einem Mausklick darauf die zugehörigen Vorlagen. Des Weiteren lässt sich aus dem Medien-Tab die Mediathek aufrufen. Obendrauf gibt es noch eine Integration von Openverse, einer Bilder- und Audio-Sammlung. Alle über diese Plattform angebotenen Medien lassen sich zwar kostenlos nutzen, dennoch müssen Seitenbetreiber die Lizenzen beachten.

Der Block-Editor lässt sich in einen ablenkungsfreien Modus schalten, in dem er sämtliche Bedienelemente ausblendet. Auf diese Weise können sich Autoren auf den eigentlichen Text konzentrieren. Fügt man Gruppen-Blöcke auf der obersten Ebene ein, lassen sie sich als „sticky“ kennzeichnen. WordPress klebt sie dann an den oberen (Viewport-)Rand, wenn die Besucher auf der Seite scrollen.

Die Standard-Themes bringen die genutzten Google-Fonts jetzt direkt mit und setzen nicht nur Links auf die Google-Server. Damit erhöhen die WordPress-Entwickler den Datenschutz.

Die Version 6.2 ist dem Jazz-Musiker Eric Allan Dolphy Jr. gewidmet.

Der Beitrag WordPress 6.2 bietet rund 300 Verbesserungen erschien zuerst auf Linux-Magazin.

❌