-
Posts
10611 -
Joined
-
Last visited
-
Days Won
43
Everything posted by d00p
-
macht froxlor doch genauso...oder was meinst du jetzt?
-
kontext? Wo muss da was in anführungszeichen gesetzt werden? Redest du von froxlor oder deiner eigenen anwendung? Ein - im db/usernamen ist ja was komplett anderes, das hat nix damit zu tun ob extern oder nicht...
-
https://linuxize.com/post/mysql-remote-access/
-
Because there wasnt any milter-config-template in froxlor for years, hence it was never used. Also it's not only in the documentation, it's also in RED in the announcement: Well, it would have been converted for you if you've enabled "antispam" in the updater...the alternative is: i don't want antispam and thus froxlor cleans its own tables. It's not meant for third-party usage and it's not supported. I cannot guarantee that dkim related fields in the tables will never be touched again...sorry. Enable antispam feature and activate dkim for each domain... You may try, but as said, I cannot guarantee or support third party / custom solutions
-
Kannst du mit serverseitigen filtern (Sieve) ganz einfach machen
-
Die allerwenigsten betreiben selbst einen DNS Server, daher ist das alles eher "rudimentär" implementiert und nicht für alle use-cases ausgelegt - Verbesserungsvorschläge oder noch besser pull-requests via GitHub sind gern gesehen
-
Beachte das froxlor halt auch das pdns reload command nutzt sofern nicht z.b. auf "/bin/true" gesetzt. Ansonsten was die DB angeht nimmt froxlor für die Einträge das was du als db-credentials angibst, alles andere ist einfach eine Sache des Probierens
-
release froxlor 2.2 - New Antispam feature, API enhancements and SSL improvements
d00p replied to d00p's topic in Announcements
Update: froxlor 2.2.2 - 2.2.4 New: [config-services] add validation for empty or non-existing configuration template xml files [antispam] add rewrite-subject flag to email-edit form; hide spam-related settings if 'bypass_spam' is activated; add possibility to disable rejection of spam-mails, refs #1282 [updater] add possibility to ask for potential update question in CLI updater and also pass them as options to override them Fixes: fix timestamp matching regex, add lmtp to receving service regex and skip lines not including the main target service name in maillog parser fix successful login when using email 2fa fix language replacement and fix 'sending messages' after successfully sending prior, thx to Davidd [php-fpm] remove 'date.timezone' from php_admin_values (superfluous as it is in php_values) [antispam] set rewrite_subject to a slighty higher score then used for add_header, fixes #1275 exchange toggler-links with checkboxes in email edit form to be able to adjust all parameters at once, fixes #1277 store IDN email-usernames in ACE, as dovecot/postfix need them this way do not issue let's encrypt for email_only domains (in case they were web-enabled prior, we do not unset former settings to ease reverting back when disabling email_only) fix incorrect width of APCu Hit/Miss bar (#1283) check whether mysql-user exists prior to DROP USER for mysql < 5.7 fix wrong fieldname in email-domain-overview -
Kann ich dir nicht sagen, noch nie gehabt das Szenario. Lösch halt und stell neu aus: acme.sh --remove -d lexco.at acme.sh --issue -d lexco.at -w /var/www/html/froxlor/
-
Error renewing lexco.at... steht doch da. Also muss ja irgendwas nich stimmen. Versuch doch mal ein renew auf die domain via acme.sh und debug flag, dann weisste was los is
-
Kannst du bitte etwas mehr Kontext geben was genau gemacht wurde/wird und woher genau diese Fehlermeldung kommt? Normal macht froxlor ein issue mit der webroot option, das sind alles feste werte, da kann eigentlich nichts leer sein, ohne mehr Kontext kann ich dir nix dazu sagen, außer das vermutlich irgendwas manuell gemacht wurde
-
You know you can change that directory in the settings right? It's just a default, you may adjust in settings -> php-fpm -> fastcgi ipcdir
-
Customer cannot be deleted / Kundenkonto kann nicht gelöscht werden
d00p replied to Yahal's question in General Discussion
Database: 5.5.5-10.5.26-MariaDB-0+deb11u2 Recht altes System, MySQL unterstützt "IF EXISTS" bei einem "DROP USER" erst ab 5.7, probier mal folgende Anpassung in der `lib/Froxlor/Database/Manager/DbManagerMySQL.php`: public function deleteUser(string $username, string $host) { + if ($this->userExistsOnHost($username, $host)) { if (version_compare(Database::getAttribute(PDO::ATTR_SERVER_VERSION), '5.0.2', '<')) { // Revoke privileges (only required for MySQL 4.1.2 - 5.0.1) $stmt = Database::prepare("REVOKE ALL PRIVILEGES ON * . * FROM `" . $username . "`@`" . $host . "`"); Database::pexecute($stmt); } // as of MySQL 5.0.2 this also revokes privileges. (requires MySQL 4.1.2+) if (version_compare(Database::getAttribute(PDO::ATTR_SERVER_VERSION), '5.7.0', '<')) { $stmt = Database::prepare("DROP USER :username@:host"); } else { $stmt = Database::prepare("DROP USER IF EXISTS :username@:host"); } Database::pexecute($stmt, [ "username" => $username, "host" => $host ]); + } } -
Customer cannot be deleted / Kundenkonto kann nicht gelöscht werden
d00p replied to Yahal's question in General Discussion
nein, ein drop wird immer auf den exakten user + alle hinterlegten mysql-access-hosts gefahren, niemals wildcard -
Customer cannot be deleted / Kundenkonto kann nicht gelöscht werden
d00p replied to Yahal's question in General Discussion
Danke fürs Feedback, wir schauen uns das mal an und gucken ob wir das reproduzieren können -
Updateroutine Froxlor Version 2.1.9 auf 2.2.1 inkl. rspamd
d00p replied to sd97's question in General Discussion
Wenn du magst, schau doch mal bei uns im Discord vorbei (https://discord.froxlor.org) - ich hab da was, wenn du testen möchtest -
Updateroutine Froxlor Version 2.1.9 auf 2.2.1 inkl. rspamd
d00p replied to sd97's question in General Discussion
Der Updater kann noch keine Optionen abfragen und nimmt im CLI daher, sofern "Datenbank update" gewählt wird, immer die defaults. Gib mir mal ein bisschen zeit, vllt fällt mir was gutes ein, wie wir das noch im Updater abfragen/übergeben können, ich wollte am freitag sowieso die 2.2.2 releasen -
Oh fies, muss man erstmal finden
-
Du müsstest die generierten Konfigurationsdateien in /etc/bind/ (/etc/bind/froxlor_bind.conf und /etc/bind/domains/*) auf dem einen Server zusammenführen/regelmäßig synchronisieren. Mit ein bisschen scripting sollte das kein Problem sein.
-
Solang ich keine eindeutige beschreibung finde, was per definition dort als "name" gültig ist, bzw was ungültig ist, wird es schwer hier was zu finden
-
konnte dazu leider auch nichts finden, vorallem da ich es nicht reproduzieren kann, sorry
-
Weird, I'm not aware of any restrictions for attachments...need to check. In the meatime here: diff --git a/lib/Froxlor/Api/Commands/Customers.php b/lib/Froxlor/Api/Commands/Customers.php index ccbef644..f0492ed2 100644 --- a/lib/Froxlor/Api/Commands/Customers.php +++ b/lib/Froxlor/Api/Commands/Customers.php @@ -738,11 +738,12 @@ class Customers extends ApiCommand implements ResourceEntity 'adminid' => $this->getUserDetail('adminid'), 'docroot' => $documentroot, 'phpenabled' => $phpenabled, - 'openbasedir' => '1' + 'openbasedir' => '1', + 'is_stdsubdomain' => 1 ]; $domainid = -1; try { - $std_domain = $this->apiCall('Domains.add', $ins_data); + $std_domain = $this->apiCall('Domains.add', $ins_data, true); $domainid = $std_domain['id']; } catch (Exception $e) { $this->logger()->logAction(FroxlorLogger::ADM_ACTION, LOG_ERR, "[API] Unable to add standard-subdomain: " . $e->getMessage()); diff --git a/lib/Froxlor/Api/Commands/Domains.php b/lib/Froxlor/Api/Commands/Domains.php index 2dfbfb94..0ed0fbc9 100644 --- a/lib/Froxlor/Api/Commands/Domains.php +++ b/lib/Froxlor/Api/Commands/Domains.php @@ -274,7 +274,8 @@ class Domains extends ApiCommand implements ResourceEntity * $override_tls is true * @param string $description * optional custom description (currently not used/shown in the frontend), default empty - * + * @param bool $is_stdsubdomain (internally) + * optional whether this is a standard subdomain for a customer which is being added so no usage is decreased * @access admin * @return string json-encoded array * @throws Exception @@ -282,7 +283,8 @@ class Domains extends ApiCommand implements ResourceEntity public function add() { if ($this->isAdmin()) { - if ($this->getUserDetail('domains_used') < $this->getUserDetail('domains') || $this->getUserDetail('domains') == '-1') { + $is_stdsubdomain = $this->isInternal() ? $this->getBoolParam('is_stdsubdomain', true, 0) : false; + if ($is_stdsubdomain || $this->getUserDetail('domains_used') < $this->getUserDetail('domains') || $this->getUserDetail('domains') == '-1') { // parameters $p_domain = $this->getParam('domain'); @@ -795,12 +797,15 @@ class Domains extends ApiCommand implements ResourceEntity $ins_data['id'] = $domainid; unset($ins_data); - $upd_stmt = Database::prepare(" - UPDATE `" . TABLE_PANEL_ADMINS . "` SET `domains_used` = `domains_used` + 1 - WHERE `adminid` = :adminid"); - Database::pexecute($upd_stmt, [ - 'adminid' => $adminid - ], true, true); + if (!$is_stdsubdomain) { + $upd_stmt = Database::prepare(" + UPDATE `" . TABLE_PANEL_ADMINS . "` SET `domains_used` = `domains_used` + 1 + WHERE `adminid` = :adminid + "); + Database::pexecute($upd_stmt, [ + 'adminid' => $adminid + ], true, true); + } $ins_stmt = Database::prepare(" INSERT INTO `" . TABLE_DOMAINTOIP . "` SET
-
I agree, there should be an active display of "issues" when creating a customer which not directly affects the resource "customer" (e.g. std-subdomain could not be added, or similar). For the main issue, as any admin who can create users should be able to create std-subdomains, you might want to test the following patch: NoResourceCheckIfStandardSubdomain.patch