-
Posts
10473 -
Joined
-
Last visited
-
Days Won
43
Community Answers
-
d00p's post in Hilfe bei 2FA-Login-Problemen benötigt was marked as the answer
höchstwahrscheinlich ein zeitproblem, probiere mal folgende Änderung in der index.php:
diff --git a/index.php b/index.php index dd3f2673..2bedb9a8 100644 --- a/index.php +++ b/index.php @@ -84,7 +84,8 @@ if ($action == '2fa_entercode') { // verify code set to user's data_2fa field $sel_stmt = Database::prepare("SELECT `data_2fa` FROM " . $table . " WHERE `" . $field . "` = :uid"); $userinfo_code = Database::pexecute_first($sel_stmt, ['uid' => $uid]); - $result = $tfa->verifyCode($userinfo_code['data_2fa'], $code); + // 60sec discrepancy (possible slow email delivery) + $result = $tfa->verifyCode($userinfo_code['data_2fa'], $code, 60); } else { $result = $tfa->verifyCode($_SESSION['secret_2fa'], $code, 3); }
-
d00p's post in "System default"-PHP-FPM Konfiguration stört was marked as the answer
Es ist einfach fix das die config mit ID=1 nicht gelöscht werden kann, das hat u.a. Fallback Gründe.
Es verbietet dir aber doch niemand diese fpm version anzupassen und eine der von dir eingesetzten PHP Versionen zu setzen (natürlich darf diese dann nicht schon existieren).
-
d00p's post in Nach "apt upgrade": Table 'froxlor.panel_sessions' doesn't exist was marked as the answer
Steht alles in den announcements...froxlor hat mit 2.0 das homedir auf /var/www/html/froxlor geändert.
Wenn es nicht gerade Version 0.9 ist dann geht das problemlos
Müsste man im Zweifel manuell schauen wo das Update hängengeblieben ist
-
d00p's post in `froxlor:update --database`: Call to undefined function Froxlor\Cli\lng() was marked as the answer
if you've updated via apt, just login and let the webui handle the database update. Alternatively, test the following fix:
diff --git a/lib/Froxlor/Cli/UpdateCommand.php b/lib/Froxlor/Cli/UpdateCommand.php index d7a255eb..bca38420 100644 --- a/lib/Froxlor/Cli/UpdateCommand.php +++ b/lib/Froxlor/Cli/UpdateCommand.php @@ -58,6 +58,7 @@ final class UpdateCommand extends CliCommand if ($input->getOption('database')) { $result = $this->validateRequirements($output, true); if ($result == self::SUCCESS) { + require Froxlor::getInstallDir() . '/lib/functions.php'; if (Froxlor::hasUpdates() || Froxlor::hasDbUpdates()) { $output->writeln('<info>' . lng('updates.dbupdate_required') . '</>'); if ($input->getOption('check-only')) {
-
d00p's post in PHP "System default" ändern/löschen was marked as the answer
Die erste Config (id=1) kann nicht gelöscht werden (dient ggfls als Fallbackl). Du kannst die aber natürlich anpassen wie du möchtest, z.B. auf php8.3 setzen oder so
-
d00p's post in Froxlor 2 (2.1.7), LetsEncrypt und Mailserver (dovecot / postfix) was marked as the answer
Aktuell handlet das froxlor nicht, denn Let's Encrypt auch in postfix/dovecot zu nutzen ist natürlich möglich, aber admin-Entscheidung - da hat froxlor keine Finger drin. Ändert sich mit 2.2, siehe https://github.com/froxlor/Froxlor/issues/1186
-
d00p's post in FTP User Upload Limit erhören was marked as the answer
Du hast dem Kunden ein Kontingent von 5000 MB für disk/webspace zugewiesen....wenn es voll ist, macht der FTP dicht
-
d00p's post in DNS Editor? was marked as the answer
Die empfohlenen Standardeinstellungen beinhalten keinen Nameserver...
Wie bereits gesagt: Settings -> Nameserver settings -> "Enable Nameserver" und "Enable DNS editor" aktivieren, und entsprechend den gewünschten Kunden bearbeiten und "Enable DNS editor?" auf Ja stellen
Taucht selbstverständlich auch nur bei Domains auf, die ein Häkchen bei "Create dns zone for domain" haben, da sie sonst vom Nameserver garnicht verarbeitet werden
-
d00p's post in Fedora - PHP-FPM - cannot get uid for user was marked as the answer
Du brauchst natürlich eine sql config die die user aus der froxlor Datenbank ausliest.
Da könntest du in älteren froxlor.versionen (0.9.x) auf GitHub glücken haben und in /lib/configfiles noch was zu finden.
Nscd ist in soweit sinnvoll/notwendig damit nicht jedesmal eine sql query.via libnss-mysql ausgeführt wird beim auslesen der User/group Infos. Mir ist.auf die schnelle kein Ersatz bekannt. Wenn die nsswitch.conf entsprechend auf libnss-mysql verweist sollte es aber auch ohne nscd gehen (geht halt auf die Datenbank ohne Ende)
-
d00p's post in Froxlor > Wechsel Apache PHP > PHP_FPM > ob_flush etc. geht nicht mehr - Was ist fehlerhaft konfiguriert was marked as the answer
Folgendes Beispiel funktioniert bei mir unter nginx genauso wie unter apache mit php-fpm:
<?php function doFlush() { if (!headers_sent()) { // Disable gzip in PHP. ini_set('zlib.output_compression', 0); // Force disable compression in a header. // Required for flush in some cases (Apache + mod_proxy, nginx, php-fpm). header('Content-Encoding: none'); } // Fill-up 4 kB buffer (should be enough in most cases). echo str_pad('', 4 * 1024); // Flush all buffers. do { $flushed = @ob_end_flush(); } while ($flushed); @ob_flush(); flush(); } // In a real app, we have this turned on. ob_start(); $i = 0; while ($i++ < 10) { usleep(500000); // Real output. echo $i . "\n<br>"; doFlush(); }
-
d00p's post in Froxlor upgrade cannot be completed (Froxlor: 0.10 -> 2.1.6-1 | Ubuntu 18.04 -> 20.04 -> 22.04) was marked as the answer
no, it has not
so, a local cache thing then....aight
-
d00p's post in Email Passwort Verschlüsselung was marked as the answer
Auf 2.1.6 updaten. Das war ein Bug in der 2.1.5 (die es nur einen Tag lang gab)
-
d00p's post in unerwartetes Feedback vom cron (traffic-task) was marked as the answer
Gerne testen, ich kam noch nicht dazu:
diff --git a/lib/Froxlor/Cron/Traffic/TrafficCron.php b/lib/Froxlor/Cron/Traffic/TrafficCron.php index 421505e3..b764b0d3 100644 --- a/lib/Froxlor/Cron/Traffic/TrafficCron.php +++ b/lib/Froxlor/Cron/Traffic/TrafficCron.php @@ -618,7 +618,7 @@ class TrafficCron extends FroxlorCron $format = Settings::Get('system.logfiles_type') == '2' ? 'VCOMBINED' : 'COMBINED'; $monthyear = $monthyear_arr['month'] . '/' . $monthyear_arr['year']; $return_value = false; - FileDir::safe_exec("grep '" . $monthyear . "' " . escapeshellarg($logfile) . " | goaccess " . $keep_params . " --db-path=" . escapeshellarg($outputdir) . " -o " . escapeshellarg($outputdir . '.tmp.json') . " -o " . escapeshellarg($outputdir . 'index.html') . " --html-report-title=" . escapeshellarg($caption) . " --log-format=" . $format . " - ", $return_value, ['|']); + FileDir::safe_exec("grep '" . $monthyear . "' " . escapeshellarg($logfile) . " | goaccess " . $keep_params . " --db-path=" . escapeshellarg($outputdir) . " -o " . escapeshellarg($outputdir . '.tmp.json') . " -o " . escapeshellarg($outputdir . 'index.html') . " --html-report-title=" . escapeshellarg($caption) . " --log-format=" . $format . " --no-parsing-spinner --no-progress - ", $return_value, ['|']); if (file_exists($outputdir . '.tmp.json')) { // need jq here because of potentially LARGE json files
-
d00p's post in Froxlor selbst: Unterstützte PHP-Versionen was marked as the answer
Die Infos kommen mit der v2.1 - siehe https://docs.froxlor.org/v2.1/general/installation/
Und nein, php-8.3 habe ich noch nicht getestet, wir konzentrieren uns im normalfall auf die default php versionen der unterrstützten Distros
-
d00p's post in Subdomain direkt einrichten lassen was marked as the answer
doch sicher...du weist doch dem kunden eine Subdomain zu, setz halt da den Server-Alias auf "kein Alias" oder "www-Alias" und dann kannst du wunderbar auch Let's Encrypt verwenden
edit: du sollst ja nicht in froxlor einen Wildcard-Alias erstellen, sondern in der DNS Zone ...z.B.
@ IN A 123.123.123.123 * IN A 123.123.123.123 Damit zeigt: "domain.tld" auf 123.123.123.123 genauso wie auch "irgendwas.domain.tld" oder "wasanderes.domain.tld" oder was auch immer
-
d00p's post in froxlor-cli froxlorcron 'tasks' wirft "no such file or directory" bei "checking froxlor file permissions" was marked as the answer
ah du bist im ordner "/var/www/php-fcgi-scripts/ckt/tools.***.de" - die php-fcgi-scripts ordner werden vom cron komplett geleert und neuerstellt...daher der fehler.
-
d00p's post in Internal PHP error: #2 Undefined array key "groups" was marked as the answer
if you want, try the following patch, it should resolve the behavior:
diff --git a/lib/Froxlor/SImExporter.php b/lib/Froxlor/SImExporter.php index a40e24bb..f823f295 100644 --- a/lib/Froxlor/SImExporter.php +++ b/lib/Froxlor/SImExporter.php @@ -65,7 +65,7 @@ class SImExporter public static function export() { $settings_definitions = []; - foreach (PhpHelper::loadConfigArrayDir('./actions/admin/settings/')['groups'] as $group) { + foreach (PhpHelper::loadConfigArrayDir(Froxlor::getInstallDir() . '/actions/admin/settings/')['groups'] as $group) { foreach ($group['fields'] as $field) { $settings_definitions[$field['settinggroup']][$field['varname']] = $field; }
-
d00p's post in Create e-mail address on subdomain was marked as the answer
Edit main-domain, select "emaildomain = yes", and also select something other than "Never" in the setting "Subdomains as email-domains"
-
d00p's post in OpenSSL variuos erros was marked as the answer
ah, wordpress itself okay. that *might* be due to a disabled *curl_exec* function in the corresponding php.ini (not entirely sure, but looks like it)
-
d00p's post in PHP Fatal error: Uncaught Error: Call to undefined function curl_exec() was marked as the answer
Validate that the function "curl_exec" is not in the list of disabled_functions in the corresponding php.ini (it is by default)
-
d00p's post in How to use froxlor-cli for api-calls / how to provide parameters? was marked as the answer
As stated in the --help output of the command:
parameters Paramaters to pass to the command as JSON array Dont see where you are doing anything wrong, looks ok to me (and you've stated that the following works...)
-
d00p's post in Update 2.0.21 to 2.0.22 failed Sql Exception was marked as the answer
Hm it's related to the navigation menu and it checks for customer stuff but you're admin, can you try this patch:
diff --git a/lib/navigation/00.froxlor.main.php b/lib/navigation/00.froxlor.main.php index f322fe85..9863ce54 100644 --- a/lib/navigation/00.froxlor.main.php +++ b/lib/navigation/00.froxlor.main.php @@ -38,7 +38,7 @@ return [ 'url' => 'customer_email.php?page=emails', 'label' => lng('menue.email.emails'), 'required_resources' => 'emails', - 'add_shortlink' => CurrentUser::canAddResource('emails') ? 'customer_email.php?page=email_domain&action=add' : null, + 'add_shortlink' => !CurrentUser::isAdmin() && CurrentUser::canAddResource('emails') ? 'customer_email.php?page=email_domain&action=add' : null, ], [ 'url' => Settings::Get('panel.webmail_url'), @@ -60,7 +60,7 @@ return [ 'url' => 'customer_mysql.php?page=mysqls', 'label' => lng('menue.mysql.databases'), 'required_resources' => 'mysqls', - 'add_shortlink' => CurrentUser::canAddResource('mysqls')? 'customer_mysql.php?page=mysqls&action=add' : null, + 'add_shortlink' => !CurrentUser::isAdmin() && CurrentUser::canAddResource('mysqls')? 'customer_mysql.php?page=mysqls&action=add' : null, ], [ 'url' => Settings::Get('panel.phpmyadmin_url'), @@ -81,7 +81,7 @@ return [ [ 'url' => 'customer_domains.php?page=domains', 'label' => lng('menue.domains.settings'), - 'add_shortlink' => CurrentUser::canAddResource('subdomains') ? 'customer_domains.php?page=domains&action=add' : null, + 'add_shortlink' => !CurrentUser::isAdmin() && CurrentUser::canAddResource('subdomains') ? 'customer_domains.php?page=domains&action=add' : null, ], [ 'url' => 'customer_domains.php?page=sslcertificates', @@ -98,7 +98,7 @@ return [ [ 'url' => 'customer_ftp.php?page=accounts', 'label' => lng('menue.ftp.accounts'), - 'add_shortlink' => CurrentUser::canAddResource('ftps') ? 'customer_ftp.php?page=accounts&action=add' : null, + 'add_shortlink' => !CurrentUser::isAdmin() && CurrentUser::canAddResource('ftps') ? 'customer_ftp.php?page=accounts&action=add' : null, ], [ 'url' => Settings::Get('panel.webftp_url'),
-
d00p's post in Ändern des ServerAdmin in den automatisch erstellten vHosts was marked as the answer
Es wird die E-Mail Adresse des entsprechenden Kunden verwendet
-
d00p's post in SSL Froxlor Host was marked as the answer
Solange die acme.conf für den Webserver eingerichtet ist besteht ein globaler alias für .well-known und dann sollte das ebenso auch via certbot gehen.
Würde allerdings empfehlen hier let's encrypt in froxlor auch für den froxlor vhost zu aktivieren damit alles von froxlor verwaltet wird.
Zusätzlich kannst du mittels https://docs.froxlor.org/latest/admin-guide/cli-scripts/#validate-acme-webroot auch prüfen, ob da alles ok ist
-
d00p's post in PHP for admin interface not working after initial setup was marked as the answer
The froxlor setup automatically sets up your ip/port entries using default/standard ports.
You might need to adjust these in the table `panel_ipsandports` in froxlor's database and re-run the cronjob