ISPConfig 3 issueshttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues2023-05-21T20:09:01Zhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6466Wrong Database Right when using auto-installer + Correction2023-05-21T20:09:01ZMonet GuillaumeWrong Database Right when using auto-installer + CorrectionWhen you use a multi-servers installation :
Since the last patch of auto-installer you have this error :
```
ERROR 1142 (42000) at line 1: INSERT command denied to user 'ispcsrvXX'@'XXX' for table `dbispconfig`.`server_php`
[ERROR] Exc...When you use a multi-servers installation :
Since the last patch of auto-installer you have this error :
```
ERROR 1142 (42000) at line 1: INSERT command denied to user 'ispcsrvXX'@'XXX' for table `dbispconfig`.`server_php`
[ERROR] Exception occured: ISPConfigOSException -> Command mysql --host=XXXXX --user=ispcsrvXX --password=XXX -e 'INSERT IGNORE INTO `dbispconfig`.`server_php`
```
It can be resolve by adding insert right for slave user in **installer_base.lib.php** line 809
```
$query = "GRANT SELECT, INSERT ON ?? TO ?@?";
if ($verbose){
echo $query ."\n";
}
if(!$this->dbmaster->query($query, $value['db'] . '.server_php', $value['user'], $host)) {
$this->warning('Unable to set rights of user in master database: '.$value['db']."\n Query: ".$query."\n Error: ".$this->dbmaster->errorMessage);
}
```3.2.10https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6463PHP Warning: Undefined variable $new_lines in /usr/local/ispconfig/server/li...2023-03-24T17:59:07ZHelmoPHP Warning: Undefined variable $new_lines in /usr/local/ispconfig/server/lib/classes/file.inc.php on line 126When creating a new shell user:
```
DEBUG [shelluser base plugin.inc:432] - ssh-rsa setup shelluser_base
PHP Warning: Undefined variable $new_lines in /usr/local/ispconfig/server/lib/classes/file.inc.php on line 126
PHP Stack trace:
PHP...When creating a new shell user:
```
DEBUG [shelluser base plugin.inc:432] - ssh-rsa setup shelluser_base
PHP Warning: Undefined variable $new_lines in /usr/local/ispconfig/server/lib/classes/file.inc.php on line 126
PHP Stack trace:
PHP 1. {main}() /usr/local/ispconfig/server/server.php:0
PHP 2. modules->processDatalog() /usr/local/ispconfig/server/server.php:180
PHP 3. modules->raiseTableHook($table_name = 'shell_user', $action = 'u', $data = [...
PHP 4. web_module->process($tablename = 'shell_user', $action = 'u', $data = [...
PHP 5. plugins->raiseEvent($event_name = 'shell_user_update', $data = [...
PHP 6. shelluser_base_plugin->update($event_name = 'shell_user_update', $data = [...
PHP 7. shelluser_base_plugin->_setup_ssh_rsa() /usr/local/ispconfig/server/plugins-available/shelluser_base_plugin.inc.php:286
PHP 8. file->remove_blank_lines($input = '', $file = 0) /usr/local/ispconfig/server/plugins-available/shelluser_base_plugin.inc.php:463
DEBUG [shelluser base plugin.inc:529] - ssh-rsa key updated in /var/www/clients/client1/web27/home/testclientzfcbvz/.ssh/authorized_keys
```https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6462account root should be owned by root2023-04-14T12:25:07ZHelmoaccount root should be owned by rootWhen you create a shell account it depends on the selection of jailkit if the dir such as `/var/www/clients/client1/web42` get's chowned to be owned by root or the user being created.
Jailkit depends on it being owned by root. So when y...When you create a shell account it depends on the selection of jailkit if the dir such as `/var/www/clients/client1/web42` get's chowned to be owned by root or the user being created.
Jailkit depends on it being owned by root. So when you first create a shelluser with jailkit enabled, and then one without it the first user becomes inaccessible.
`jk_chrootsh[XXX]: abort, /var/www/clients/client1/web42 is not a safe jail, check ownership and permissions.`
See [shelluser_base_plugin.inc.php](https://git.ispconfig.org/ispconfig/ispconfig3/-/blob/develop/server/plugins-available/shelluser_base_plugin.inc.php#L150) and [create_jailkit_chroot.sh](https://git.ispconfig.org/ispconfig/ispconfig3/-/blob/develop/server/scripts/create_jailkit_chroot.sh#L21)
I see no reason why the user should own that dir himself, we make it read only with chattr anyway.3.2.10HelmoHelmohttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6459regex for dkim selector matches invalid entries2023-08-04T16:30:28ZPyte Cregex for dkim selector matches invalid entriesThe regex for dkim_selector validation in mail_domain.tform.php matches invalid entries, which result in .err dns zones.
`'regex' => '/^[a-z0-9]{0,63}$/'`
This matches entries with a number in front and empty entires.The regex for dkim_selector validation in mail_domain.tform.php matches invalid entries, which result in .err dns zones.
`'regex' => '/^[a-z0-9]{0,63}$/'`
This matches entries with a number in front and empty entires.3.2.10https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6458Let's Encrypt SSL certs not issued due to changed cert path for ECC certs2023-02-08T20:28:13ZTill BrehmLet's Encrypt SSL certs not issued due to changed cert path for ECC certsAcme.sh has changed the default for newly issued SSL certs to be ECC certs, but these certs are stored in a different path, so the ISPConfig installer cannot locate them anymore. See this thread for details:
https://forum.howtoforge.com...Acme.sh has changed the default for newly issued SSL certs to be ECC certs, but these certs are stored in a different path, so the ISPConfig installer cannot locate them anymore. See this thread for details:
https://forum.howtoforge.com/threads/acme-sh-ecc-sufix.90093/3.2.9p1Till BrehmTill Brehmhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6456Follow-up to #5588 - Change the required FQDN for "Sectigo / Comodo"2023-05-09T19:53:04ZCarsten BrennerFollow-up to #5588 - Change the required FQDN for "Sectigo / Comodo"## Summary
In #5588 you already changed the name of the Comodo-CAA-Template to "Sectigo/Comodo".
Now, according to [this KB-Article](https://sectigo.com/knowledge-base/detail/CAA-Record-Certification-Authority-Authorization-152707609149...## Summary
In #5588 you already changed the name of the Comodo-CAA-Template to "Sectigo/Comodo".
Now, according to [this KB-Article](https://sectigo.com/knowledge-base/detail/CAA-Record-Certification-Authority-Authorization-1527076091491/kA01N000000zFMO) Sectigo doesn't accept the old "comodoca.com"-FQDN as Issuer, but wants you to set it to one of those options:
- sectigo.com
- trust-provider.com
- usertrust.com
Additionally, when trying to edit the template for "Sectigo/Comodo" in the ISPConfig Systemconfiguration, the value set for "issue" won't be saved and my changes will be reverted.
## Steps to reproduce
1. Add a CAA-Record for "Sectigo/Comodo" to your domain
2. Try to acquire a certificate from them
3. Receive a mail, that the cert cannot be issued because of missing CAA-Records
## Correct behaviour
With a correctly set issuer, it would work.
## Environment
Server OS + version: Ubuntu 20.04.5 LTS (Focal Fossa)
ISPConfig version: ISPConfig 3.2.9
## Proposed fix
Replace
```
comodoca.com
```
with
```
sectigo.com
```
## References
#5588
[https://sectigo.com/knowledge-base/detail/CAA-Record-Certification-Authority-Authorization-1527076091491/kA01N000000zFMO](https://sectigo.com/knowledge-base/detail/CAA-Record-Certification-Authority-Authorization-1527076091491/kA01N000000zFMO)3.2.10ThomThomhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6453Website quota notification plugin accidentially reconfigures all sites every ...2023-05-17T07:40:55ZTill BrehmWebsite quota notification plugin accidentially reconfigures all sites every nighthttps://forum.howtoforge.com/threads/apache-restarts-200-times-every-week.90056/https://forum.howtoforge.com/threads/apache-restarts-200-times-every-week.90056/3.2.10https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6452Uncaught TypeError: array_merge(): Argument 1 must be of type array, bool giv...2023-03-24T18:29:32ZTill BrehmUncaught TypeError: array_merge(): Argument 1 must be of type array, bool given in shelluser_base_plugin.inc.php:480```
WARNING - There is already a lockfile set, but no process running with this pid (59889). Continuing.
useradd: user 'usrftp' already exists
PHP Warning: Undefined variable $new_lines in /usr/local/ispconfig/server/lib/classes/file.inc...```
WARNING - There is already a lockfile set, but no process running with this pid (59889). Continuing.
useradd: user 'usrftp' already exists
PHP Warning: Undefined variable $new_lines in /usr/local/ispconfig/server/lib/classes/file.inc.php on line 126
PHP Fatal error: Uncaught TypeError: array_merge(): Argument #1 must be of type array, bool given in /usr/local/ispconfig/server/plugins-available/shelluser_base_plugin.inc.php:480
Stack trace:
#0 /usr/local/ispconfig/server/plugins-available/shelluser_base_plugin.inc.php(480): array_merge()
#1 /usr/local/ispconfig/server/plugins-available/shelluser_base_plugin.inc.php(157): shelluser_base_plugin->_setup_ssh_rsa()
#2 /usr/local/ispconfig/server/lib/classes/plugins.inc.php(120): shelluser_base_plugin->insert()
#3 /usr/local/ispconfig/server/mods-available/web_module.inc.php(150): plugins->raiseEvent()
#4 /usr/local/ispconfig/server/lib/classes/modules.inc.php(302): web_module->process()
#5 /usr/local/ispconfig/server/lib/classes/modules.inc.php(235): modules->raiseTableHook()
#6 /usr/local/ispconfig/server/server.php(180): modules->processDatalog()
#7 {main}
thrown in /usr/local/ispconfig/server/plugins-available/shelluser_base_plugin.inc.php on line 480
```
Plus some additional notices and one error in another file.
```
20.01.2023-10:06 - WARNING - There is already a lockfile set, but no process running with this pid (6349). Continuing.
useradd: Benutzer »dummy_username« existiert bereits
PHP Warning: Undefined variable $new_lines in /usr/local/ispconfig/server/lib/classes/file.inc.php on line 126
PHP Warning: Undefined variable $options in /usr/local/ispconfig/server/plugins-available/shelluser_jailkit_plugin.inc.php on line 340
PHP Warning: Undefined variable $options in /usr/local/ispconfig/server/plugins-available/shelluser_jailkit_plugin.inc.php on line 343
usermod: user pchelp_kempten_ssh_mp is currently used by process 25079
failed to execute usermod -d /var/www/clients/xxx/xxx/./home/dummy_username -s /usr/sbin/jk_chrootsh dummy_username
failed to modify user dummy_username
PHP Warning: Undefined variable $new_lines in /usr/local/ispconfig/server/lib/classes/file.inc.php on line 126
PHP Fatal error: Uncaught TypeError: array_merge(): Argument #1 must be of type array, bool given in /usr/local/ispconfig/server/plugins-available/shelluser_jailkit_plugin.inc.php:530
Stack trace:
#0 /usr/local/ispconfig/server/plugins-available/shelluser_jailkit_plugin.inc.php(530): array_merge()
#1 /usr/local/ispconfig/server/plugins-available/shelluser_jailkit_plugin.inc.php(135): shelluser_jailkit_plugin->_setup_ssh_rsa()
#2 /usr/local/ispconfig/server/lib/classes/plugins.inc.php(120): shelluser_jailkit_plugin->insert()
#3 /usr/local/ispconfig/server/mods-available/web_module.inc.php(150): plugins->raiseEvent()
#4 /usr/local/ispconfig/server/lib/classes/modules.inc.php(302): web_module->process()
#5 /usr/local/ispconfig/server/lib/classes/modules.inc.php(235): modules->raiseTableHook()
#6 /usr/local/ispconfig/server/server.php(180): modules->processDatalog()
#7 {main}
thrown in /usr/local/ispconfig/server/plugins-available/shelluser_jailkit_plugin.inc.php on line 530
```3.2.10Till BrehmTill Brehmhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6447DKIM key can not be generated without saving email domain first2023-07-17T18:49:14ZTill BrehmDKIM key can not be generated without saving email domain firsthttps://forum.howtoforge.com/threads/cant-generate-dkim-private-key-in-domain-creation-page.90006/https://forum.howtoforge.com/threads/cant-generate-dkim-private-key-in-domain-creation-page.90006/https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6446Useless warning when no domains remain for LE request2023-04-14T06:34:42ZHelmoUseless warning when no domains remain for LE requestWhen I create a site and check the Lets Encrypt box for a domain that still points elsewere in the DNS I get 4 warnings.(in 4 mails)
```
WARNING - Could not verify domain example.com, so excluding it from letsencrypt request.
WARNING - ...When I create a site and check the Lets Encrypt box for a domain that still points elsewere in the DNS I get 4 warnings.(in 4 mails)
```
WARNING - Could not verify domain example.com, so excluding it from letsencrypt request.
WARNING - Could not verify domain www.example.com, so excluding it from letsencrypt request.
WARNING -
WARNING - Let's Encrypt SSL Cert for: example.com could not be issued.
```
The last two are not needed.HelmoHelmohttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6444PHP 8.2 deprecation warnings installer2023-04-12T09:57:35ZHelmoPHP 8.2 deprecation warnings installerThis one ... (and more of those in the same file)
```
PHP Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /tmp/ispconfig3-stable-helmo/install/lib/installer_base.lib.php on line 841
```This one ... (and more of those in the same file)
```
PHP Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /tmp/ispconfig3-stable-helmo/install/lib/installer_base.lib.php on line 841
```3.2.10HelmoHelmohttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6442Failed message symbol in auth.log2023-04-30T10:35:41ZOttFailed message symbol in auth.logAfter upgrade to 3.2.9 version failed message has \ not ' after username.
Successful log message is correct.
Message: "Failed login for user 'username\ from IP at date time" but it should be "Failed login for user 'username' from IP at ...After upgrade to 3.2.9 version failed message has \ not ' after username.
Successful log message is correct.
Message: "Failed login for user 'username\ from IP at date time" but it should be "Failed login for user 'username' from IP at date time"3.2.10ThomThomhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6438PHP 8.1 deprecation warnings2023-04-14T12:24:53ZHelmoPHP 8.1 deprecation warningsI noticed a few `PHP Deprecated` messages in the cron.log on my dev server..
MR coming...I noticed a few `PHP Deprecated` messages in the cron.log on my dev server..
MR coming...3.2.10HelmoHelmohttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6437backup_download_dir variable not defined in /usr/local/ispconfig/server/lib/c...2023-04-19T21:02:27ZChristian Bretterhoferbackup_download_dir variable not defined in /usr/local/ispconfig/server/lib/classes/backup.inc.php on line 1311<!-- Before creating a bug report, please:
- Read the contribution guidelines: https://git.ispconfig.org/ispconfig/ispconfig3/-/blob/develop/CONTRIBUTING.md
- Do not ask support questions here. If you are unsure if your problem is a bug,...<!-- Before creating a bug report, please:
- Read the contribution guidelines: https://git.ispconfig.org/ispconfig/ispconfig3/-/blob/develop/CONTRIBUTING.md
- Do not ask support questions here. If you are unsure if your problem is a bug, post a thread on the forum: https://www.howtoforge.com/community/#ispconfig-3.23
- Make sure to remove any content from the description that you did not add. For example, if there are no related log entries, remove the whole "Related log entries" part.
-->
## Summary
<!-- What is happening and what is wrong with that? -->
## Steps to reproduce
1. just run ISPConfig Version: 3.2.9 an monitor /var/log/ispconfig/cron.log
## Correct behaviour
<!-- What should happen instead? -->
## Environment
Server OS + version: (Ubuntu 22.04)
ISPConfig version: ISPConfig Version: 3.2.9
/var/log/ispconfig/cron.log:Mo 26 Dez 2022 11:28:46 CET PHP Warning: Undefined variable $backup_download_dir in /usr/local/ispconfig/server/lib/classes/backup.inc.php on line 13113.2.10HelmoHelmohttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6436Make the records tab default for DNS zones when using search2023-04-14T12:23:58ZHelmoMake the records tab default for DNS zones when using searchIn !1154 we tried to make the records tab default for existing DNS zones.
However when using the global search to find a dns zone, you still end up on thge 'zone settings' tab.In !1154 we tried to make the records tab default for existing DNS zones.
However when using the global search to find a dns zone, you still end up on thge 'zone settings' tab.3.2.10HelmoHelmohttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6434Vim insertmode i left behind2023-03-09T10:04:03ZHelmoVim insertmode i left behindI found an extra `i` chacter in interface/web/mail/templates/mail_user_mailbox_edit.htm, added by me in !1543
![image](/uploads/f5a34497de5cbb62a19c0935256681d4/image.png)I found an extra `i` chacter in interface/web/mail/templates/mail_user_mailbox_edit.htm, added by me in !1543
![image](/uploads/f5a34497de5cbb62a19c0935256681d4/image.png)3.2.10HelmoHelmohttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6433Safedelete warning when dir does not exist2023-03-06T21:44:41ZHelmoSafedelete warning when dir does not exist
The code from !1454 needs an extra check to see if the maildomain directory actually exists.
`mv: cannot stat '/var/vmail/example.com': No such file or directory`
Patch comming...
The code from !1454 needs an extra check to see if the maildomain directory actually exists.
`mv: cannot stat '/var/vmail/example.com': No such file or directory`
Patch comming...3.2.10HelmoHelmohttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6432Rspamd: SQL error after server settings update2023-04-01T21:20:09ZDaniel JagszentRspamd: SQL error after server settings update
## Summary
SQL Error when Rspamd plugin handles server table updates.
## Steps to reproduce
1. Have an ISPConfig with Mail&RSpamd configured
2. Go to the server settings (System -> Server Config -> server name)
3. Change anything and s...
## Summary
SQL Error when Rspamd plugin handles server table updates.
## Steps to reproduce
1. Have an ISPConfig with Mail&RSpamd configured
2. Go to the server settings (System -> Server Config -> server name)
3. Change anything and save
4. Wait for the datalog to be processed
5. You will get an email with
```
ispconfig.server - 19.12.2022-20:58 - WARNING - Falsche Anfrage / Wrong QuerySQL-Query = SELECT `ip_address`, `ip_type` FROM .server_ip WHERE `server_id` = 1 -> 1064 (You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.server_ip WHERE `server_id` = 1' at line 1)
```
## Correct behaviour
No SQL error.
## Environment
Server OS + version: Ubuntu 20.04
ISPConfig version: 3.2.9 / develop
Software version of the related software (Rspamd): 3.4-1~focal3.2.10ThomThomhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6431Rspamd User Config deleted on mail user changes2023-04-14T12:22:42ZDimitriRspamd User Config deleted on mail user changesFor some long time I noticed, that spam filter settings are sometimes not being applied properly and these days I took a look into it.
So what I found was, that ISPConfig was dropping existing `/etc/rspamd/local.d/users/user_domain_tld.c...For some long time I noticed, that spam filter settings are sometimes not being applied properly and these days I took a look into it.
So what I found was, that ISPConfig was dropping existing `/etc/rspamd/local.d/users/user_domain_tld.conf` files when something was changed in for the mail user.
**Steps to reproduce**
- Create a mail account and set a spam filter for it (the `normal` one will do it).
- The config file in `/etc/rspamd/local.d/users/user_domain_tld.conf` should now exist.
- Now change something for the mail account
- The file should be deleted
- In order to get ISPConfig to write the config file again, just change something that triggers `spamfilter_user` in `user_settings_update()` function in the rspamd plugin.
I was able to fix this `quick and dirty` for myself by adding `&& $type == 'spamfilter_user'` to the if in [rspamd_plugin.inc.php#L284](https://git.ispconfig.org/ispconfig/ispconfig3/-/blob/develop/server/plugins-available/rspamd_plugin.inc.php#L284)
My Setup:
- Ubuntu 22.04
- php 7.4.33
- rspamd 3.2-1~bionic3.2.10DimitriDimitrihttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6430PHP8: Unable to add database on multiserver setup withs eparate DB server2022-12-16T17:50:55ZTill BrehmPHP8: Unable to add database on multiserver setup withs eparate DB serverError message:
```
[Fri Dec 16 15:18:06.151694 2022] [fcgid:warn] [pid 1039:tid 139904281384512] [client xxx:59996] mod_fcgid: stderr: PHP Fatal error: Uncaught TypeError: in_array(): Argument #2 ($haystack) must be of type array, null ...Error message:
```
[Fri Dec 16 15:18:06.151694 2022] [fcgid:warn] [pid 1039:tid 139904281384512] [client xxx:59996] mod_fcgid: stderr: PHP Fatal error: Uncaught TypeError: in_array(): Argument #2 ($haystack) must be of type array, null given in /usr/local/ispconfig/interface/web/sites/database_edit.php:462, referer: https://xxx:8080/index.php
```3.2.10