Beiträge von kk

    Die PHP-Pakete wurden erneut aktualisiert (5.6.37-5, 7.0.31-4, 7.1.20-4, 7.2.8-4).
    Folgende Änderungen gibt es mit dem Update:

    • für PHP-FPM-Logs wird Logrotate konfiguriert (/etc/logrotate.d/php##-fpm)
    • in die Lua-Konfigurationsdateien (/etc/liveconfig/lua.d/php##.lua) wurden die FPM-Parameter "start" und "stop" aufgenommen (in manchen Fällen muss LiveConfig die Prozesse ausdrücklich neu starten können)


    Das war's auch schon. :)

    Die Fehlermeldung ist ja ziemlich klar: die mysql-Extension ist nicht verfügbar (aus welchem Grund auch immer).


    Hatten Sie PHP-Pakete aus unseren "debian-test"-Repositories installiert? Wenn ja, dann einfach noch mal neu installieren, z.B.

    Code
    apt purge php-7.0-opt && apt install php-7.0-opt


    Ausführliche Infos zu unseren neuen PHP-Paketen: hier.

    LiveConfig speichert in der Tabelle MAILBOXES in der Spalte MB_PASSWORD die Passwörter der Mail-Benutzer ab.


    Ja, aber nur wenn entweder die "Selbstverwaltung"-Option aktiviert ist (also dass sich der Postfachbenutzer am LiveConfig anmelden darf), oder wenn das Postfach noch nicht auf dem Server angelegt ist. In allen anderen Fällen (also wenn LiveConfig selbst das Passwort nicht mehr braucht) wird es aus der Datenbank gelöscht. Prinzip Datensparsamkeit.


    Zitat

    Weiß jemand, in welchem Format (MD5, ...?) das Passwortformat ist?


    Wesentlich komplexer. Da für den Mail-Service das Passwort im Klartext vorliegen muss (sonst funktionieren keine Challenge-Response-Verfahren) wird es Blowfish-verschlüsselt gespeichert. Der Schlüssel dazu ist recht komplex und nur LiveConfig selbst zugänglich.


    Zitat

    Hintergrund ist, ich möchte diese Benutzernamen und Kennwörter mit einer anderen Anwendung auslesen und abgleichen. Oder gibt es eine andere Art, an das Kennwort zukommen?


    Über die Datenbank wird man (hoffentlich ;-)) nicht an das Passwort kommen, zudem es in vielen Fällen dort gar nicht für immer stehen wird.
    Der allersauberste Weg wäre, direkt den Authentifizierungsservice von Dovecot zu nutzen (SASL) - die SMTP-Authentifikation vom Postfix läuft schließlich genauso ab.

    Ich habe die "alten" Debian Packete unter "Ubuntu 14.04.5 LTS" genutzt.


    Für Ubuntu 14 haben wir nie PHP-Pakete angeboten - falls die da funktioniert haben sollten, war das purer Zufall (& viel Glück).
    Sie können durchaus versuchen, die neuen Pakete manuell zu installieren (das geht vermutlich nur mit Download der einzelnen .deb-Dateien und dann "dpkg -i", evtl mit einer --force-Option). Aber alles ohne Garantie - das wird von uns NICHT unterstützt.


    Compiliert wurden die "neuen" Pakete auf den selben Servern wie bisher. Das neue Packaging von Debian/Ubuntu nimmt die Abhängigkeiten allerdings viel genauer in die Paketinformationen mit auf.

    es dauert eine Weile die .conf-Datei zu schreiben (runde 3 Minuten, trotz SSD).


    Bitte? Da stimmt dann aber was mit der Hardware nicht...
    Wir fahren mit LiveConfig auch regelmäßig mal Lasttests mit >10.000 Domains in einem Vertrag, auch da dauert die Erstellung der .conf-Dateien keine Sekunde.
    Steht der Server vielleicht recht "unter Dampf"? Ein hoher I/O auf dem Server insgesamt wäre die enizige Erklärung, warum das so lange dauert.


    Zitat

    Deswegen ist meine Vermutung ein Timing-Problem, vermutlich wird die Verifizierung versucht wenn die Konfiguration noch nicht verfügbar ist.


    Nach dem Erstellen eines ACME-"Auftrags" werden automatisch ein CSR erzeugt sowie die ACME-Challenges beauftragt - das geschieht quasi in Echtzeit. Die Challenges werden anschließend in die Webserver-Konfigurationen übernommen und ein Reload angetriggert.
    Frühestens 90 Sekunden nach dem Aktualisieren der Konfigurationsdateien wird dann bei Let's Encrypt die Prüfung der Challenges angestoßen (der Apache-Reload findet ja "normalerweise" nach max. 60 Sekunden statt). Bei größeren Werten für RELOAD_MAX müsste das (wenn ich mich richtig erinnere) entsprechend auch höher sein (also RELOAD_MAX+30sek).
    In der Tat kann es dann also zu Timing-Problemen kommen, wenn der tatsächliche Reload entsprechend länger dauert. Wurde ein Challenge-Request mit einer endgültigen (also nicht temporären!) Fehlermeldung beantwortet, erfolgt keine automatische Wiederholung. In der Regel müsste es aber genügen, bei den Zertifikaten einfach erneut auf "speichern" zu klicken, dann müsste LC offene Challenges erneut anstoßen.


    Wir haben bereits einen Konfigurations-Prototypen entwickelt, mit dem die Challenges ohne Reload des Apache verwaltet werden können (während gleichzeitig sichergestellt ist, dass Challenges nur für die jeweiligen Domains erreichbar sind). In LiveConfig v2.7 werden wir das nicht mehr hinein bekommen, aber bis v2.8 (Herbst) sollte es fertig sein.

    Call to undefined function json_decode()


    Die Extension "json" scheint nicht geladen zu sein.
    Stammte die vorherige PHP-Version eventuell aus unserem "debian-test"-Repository?
    Welche PHP-Version ist betroffen, und auf welcher Distribution genau?
    Existiert die Datei /opt/php-#.#/etc/conf.d/json.ini?


    Falls nicht, dann deinstallieren Sie das betroffene Paket komplett ("apt purge php-#.#-opt") und installieren es anschließend erneut.


    Viele Grüße


    -Klaus Keppler

    Mangels pecl lässt sich so z.B. xdebug nicht mehr installieren. Gibt es dafür einen Grund bzw. einen workaround?


    Der Grund ist: pecl macht nur dann Sinn, wenn man auch Entwicklertools (gcc usw.) auf dem Server installiert hat. In manchen Hostingumgebungen ist das nicht erwünscht.
    Deshalb stecken pecl (sowie alle notwendigen Header etc.) nun in separaten "-dev"-Paketen, also z.B. "php-7.2-opt-dev". :cool:


    Viele Grüße


    -Klaus Keppler

    Nicht dass hier ein Mißverständnis vorliegt: wir reden hier nicht von Tests.


    Die neuen PHP-Pakete sind - wie bei uns üblich - zuerst im "debian-test"-Repository gelandet und wurden von dort aus durch uns und einige einzelne Kunden ausführlich durchgetestet.
    Nachdem wir keine Probleme haben feststellen können, haben wir die Pakete in das normale Repository übernommen.


    Die Hinweise sind nur für den Fall, dass irgendwo Probleme auftauchen sollten, die in unseren Umgebungen nicht aufgetreten sind.

    Hallo,


    ab sofort stehen neue Versionen unserer PHP-Pakete für Debian/Ubuntu zum Download bereit (PHP-Version 5.6.37, 7.0.31, 7.1.20 und 7.2.8).


    Bei diesen Paketen gibt es einige grundlegende Neuerungen:

    • die Pakete werden nun komplett als "ordentliche" PHP-Pakete gebaut, d.h. alle Konfigurationsdateien (u.a. /opt/php-X.X/etc/) werden als solche verwaltet.
      Während des Upgrades wird mittels Prüfsummen verglichen, ob die .ini-Dateien früherer Installationen unverändert sind und dann ggf. stillschweigend ersetzt, ansonsten wird während des Upgrades gefragt, ob eine neuere Version davon installiert werden soll.
    • die PHP-Pakete enthalten viele weitere Extensions, und viele bisherige Extensions sind nun als separate Module (Shared Objects) ausgelagert - die können somit einzeln aktiviert/deaktiviert werden.
    • PHP 5.6 steht nun auch für Ubuntu 16.04 und 18.04 bereit
    • APCu und ImageMagick steht nun auch für alle 7.x-Versionen zur Verfügung
    • alle Pakete ab PHP 5.6 registrieren sich nun selbständig am LiveConfig (via /etc/liveconfig/lua.d), ein Eintrag in die custom.lua ist somit nicht mehr notwendig. Für ältere Pakete (5.5, 5.4, 5.3, evtl 4.4) wird das voraussichtlich in den nächsten Wochen folgen.
    • die neuen Pakete (PHP 5.6/7.0/7.1/7.2) installieren nun ein Init-Script und ggf. einen systemd-Service, mit dem künftig PHP-FPM-Instanzen automatisch gestartet werden können. Die nächste LiveConfig-Version (v2.7) wird nämlich FPM unterstützen. :) (Daher ist dieses PHP-Update für LiveConfig wichtig, da für FPM eine etwas komplexere Registrierung an LiveConfig erforderlich ist)


    Im Wiki folgt in Kürze noch eine Beschreibung, wie man zusätzliche PHP-Versionen unter CentOS bequem hinzufügen kann.


    Sollte es während des Updates Probleme geben, schicken Sie uns bitte alle Bildschirmmeldungen die während des "apt upgrade" aufgetreten sind.
    Im Notfall hilft es, die jeweilige PHP-Version komplett vom Server zu entfernen ("apt purge php-X.X-opt") und neu zu installieren.
    Wir haben die Upgrades auf allen unterstützten Distributionen manuell durchgetestet und keine Fehler oder Warnungen dabei erhalten.
    AUSNAHME: wer vorher eine PHP-Version aus dem "debian-test"-Repository installiert hatte, muss i.d.R. nach dem Update die Datei /opt/php-X.X/etc/conf.d/xml.ini löschen.


    Um zu testen, ob eine bestimmte PHP-Version korrekt ausgeführt werden kann (inkl. aller Module), einfach wie folgt aufrufen: /opt/php-X.X/bin/php -v


    Viele Grüße


    -Klaus Keppler

    Das Paket aus stable php-7.0-opt-imagick_3.4.3-1+stretch1_amd64.deb steckt die imagick.so nach /opt/php-7.0/lib/imagick.so


    Ich habe das sicherheitshalber eben mal geprüft und kann das nicht bestätigen.
    Das Paket php-7.0-opt-imagick_3.4.3-1+stretch1_amd64.deb (MD5: c9f3406347d603983006d5d4274e92b0) installiert die imagick.so an den richtigen Ort:


    /opt/php-7.0/lib/php/extensions/no-debug-non-zts-20151012/imagick.so
    (MD5: 89a1531cc2d86cd620fd3950a80657bf)


    Handelt es sich vielleicht noch um eine veraltete Datei aus einer früheren Installation/Version?

    demnach ist es bekannt das ist mit den letzten Paketen Probleme gab/gibt?


    War die Antwort nicht eindeutig?


    Zitat

    Sie verwenden höchstwahrscheinlich ein PHP-Paket aus unserem "debian-test"-Repository. Die sind noch nicht stabil, der o.g. Fehler ist bekannt.


    Oder anders formuliert: in den Test-Repositories befinden sich unsere Test-Pakete - die wie also noch durchtesten bevor diese freigegeben werden. Daher kann es damit zu Problemen kommen. ;)


    Wir generieren unsere PHP-Pakete künftig komplett anders als bisher. Das bedeutet u.A., dass wir den Build-Prozess völlig umgestellt haben. Welchen Sinn und welche Vorteile das hat, erläutere ich dann sobald alles abgeschlossen ist in einem ausführlichen Beitrag.

    Sie verwenden höchstwahrscheinlich ein PHP-Paket aus unserem "debian-test"-Repository. Die sind noch nicht stabil, der o.g. Fehler ist bekannt.
    Verschieben Sie einfach die .so-Dateien:

    Code
    cd /opt/php-7.0/lib/php/extensions/no-debug-non-zts-20151012/
    mv *.so /opt/php-7.0/lib/extensions/no-debug-non-zts-20151012/


    Das Extension-Verzeichnis hat sich von /opt/php-X.X/lib/php/extensions nach /opt/php-X.X/lib/extensions geändert - also nicht mehr unterhalb von "php/"; ausführliche Beschreibung der neuen Pakete und aller Änderungen folgt voraussichtlich im Laufe dieses Tages, wenn alle neuen PHP-Pakete fertig sind.

    Finde ich nicht gut - Kunden wollen generell so wenig wie möglich mit der Technik zu tun haben. Das sagt die Erfahrung.


    Kann ich voll und ganz unterschreiben.


    Zitat

    Gäbe es ansonsten bei "sendmail_from" einen Platzhalter der Mailadresse, die bei LC für den jeweiligen Kunden hinterlegt ist?


    Genau das ist ja das Problem: es ist eben nicht unbedingt eine E-Mail-Adresse des LC-Kunden hinterlegt.


    Was ich mir vorstellen könnte, dass wir einen Platzhalter einführen, der - falls vorhanden - durch die E-Mail-Adresse des Hauptkontaktes (oder Tech-C) ersetzt wird. Falls keiner vorhanden ist, bleibt das Feld leer. Wir müssten aber noch testen, wie sich PHP bei einem leeren sendmail_from in der php.ini verhält (ich vermute aber, dass das funktionieren müsste). Als Zwangs-Option beim sendmail_path (-f) würde das aber garantiert Probleme geben, wenn dort keine Adresse drin steht.

    Zum Einen: Wenn ich mir anschaue, wie oft hier eine Verlängerung eines LC-Zertifikats nicht klappt und nachgearbeitet werden muss, dann setze ich ehr auf stabiles, bewährtes und gebe ein paar Cent dafür aus.


    Als wenn es da keine Probleme gäbe... ;) (Verlängerung schlichtweg vergessen weil manuell notwendig, CA inzwischen als "unsicher" gebrandmarkt, usw...)


    Zitat

    wenn ich in meiner eigenen -relevanten- Umgebung noch nicht einmal 10 Euro (brutto) für ein Zertifikat ausgeben will.


    Die Tatsache, dass man für ein SSL-Zertifikat Geld bezahlt, macht dieses per se doch nicht "besser".
    Let's Encrypt bedeutet, dass der Prozess für eine Basisverschlüsselung *voll automatisiert* ist. Das wäre mir persönlich wichtiger als ein Zertifkat, bei dem ich jährlich an die Verlängerung denken muss oder von der ausstellenden CA diesbezüglich zugespammt werde.


    Und wie unser gemeinsamer Freund eines (sehr empfehlenswerten) SSL-Anbieters sagt: "secure is not safe". Eine anständige Validierung (OV/EV) kostet natürlich Geld, aber vollautomatisierte DV-Zertifikate sind doch nur noch eine Gelddruckmaschine, die langsam zusammenbricht.

    Die werden auch vereinfacht, aber nicht über Wildcard-Zertifikate (das wäre der falsche Ansatz).
    Demnächst wird man beim Anlegen von (Sub-)Domains direkt SSL aktivieren können - also in einem einzigen Workflow.