ISPConfig 3 issueshttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues2022-08-30T14:17:24Zhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/5124sieve filter files content order / sieve filter management issue2022-08-30T14:17:24ZG.sieve filter files content order / sieve filter management issue### Issue:
adding new mail filters through remote user (or presumably directly in ispconfig cp, however we didn't test the latter yet) puts the new filter at the top of the users' sieve script.
Same happens regarding activating the auto...### Issue:
adding new mail filters through remote user (or presumably directly in ispconfig cp, however we didn't test the latter yet) puts the new filter at the top of the users' sieve script.
Same happens regarding activating the automatic "move spam to junk folder" filter.
Unfortunately sieve requires all *require* statements at the top of the file.
When using a custom filter with a *require* statement (in our case it's ***require "envelope";*** ), current behaviour leads to the sieve compiler failing, hence disabling all filters.
### Solution proposal:
Add new filter snippets behind the custom filter content or at the end of the sieve file instead, keeping the custom filter content at the top right behind the default require statement.
Alternate solution proposal:
Make initial require statement editable
That way one could add more complicated custom rules and keep the user able to add standard filters without breaking mail filtering.https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/5118Site backup - cannot input all wildcard characters into Excluded Directories2020-03-21T08:05:39ZMartin KokešSite backup - cannot input all wildcard characters into Excluded Directories## short description
Cannot input wildcard like
web/wp-content/uploads/20[0-2][0-9]/[0-1][1-9]/*-[1-9][0-9]*x[1-9][0-9]*.[jp]*g
into Excluded Directories
Error message is: The excluded directories contain invalid characters.
## correct...## short description
Cannot input wildcard like
web/wp-content/uploads/20[0-2][0-9]/[0-1][1-9]/*-[1-9][0-9]*x[1-9][0-9]*.[jp]*g
into Excluded Directories
Error message is: The excluded directories contain invalid characters.
## correct behaviour
allow input all unix wildcards
## environment
ISPConfig version: (3.1.12)https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/5091show reseller in client template list2020-02-29T12:27:21ZFlorian Schaalshow reseller in client template listhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/5089Add option to "name" default php-version for websites per server2020-02-26T18:18:46ZFlorian SchaalAdd option to "name" default php-version for websites per serverhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/5028jailkit section changes don't get propagated when re-syncing shell accounts2020-09-18T12:47:55ZJustinjailkit section changes don't get propagated when re-syncing shell accountsI discovered I forgot to add a jailkit section to the server config.
After adding it, removing a shell user and recreating the shell user the section (files) was added to the chroot.
Now I started a re-sync for all shell users on that s...I discovered I forgot to add a jailkit section to the server config.
After adding it, removing a shell user and recreating the shell user the section (files) was added to the chroot.
Now I started a re-sync for all shell users on that server expecting to get this new section for all shell accounts.
This is not the case.
## correct behaviour
I expected the newly added section to become active for all exiting shell users on re-sync.
## environment
Server OS: Centos
Server OS version: 7
ISPConfig version: 3.1.11
## proposed fix
for sure, but now I use the following as a work around on the commandline.
```
!#/bin/bash
for PATH in `grep jk_chrootsh /etc/passwd |grep ^web | cut -f1 -d\. | cut -f2- -d\/`; do
/usr/local/ispconfig/server/scripts/create_jailkit_chroot.sh /$PATH 'basicshell editors extendedshell netutils ssh sftp scp groups jk_lsh extra_section'
done
```3.2https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/5014Support for Knot DNS server2020-11-01T11:05:59ZHarvieSupport for Knot DNS serverWould it be hard to add support for Knot DNS? I am planning to move from bind to knot as their implementation of DNSSEC tends to be more up to date and it seems gaining on popularity.Would it be hard to add support for Knot DNS? I am planning to move from bind to knot as their implementation of DNSSEC tends to be more up to date and it seems gaining on popularity.https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/5013Use /etc/cron.d/ispconfig rather than /var/spool/cron/crontabs/root ?2020-09-25T22:06:28ZHarvieUse /etc/cron.d/ispconfig rather than /var/spool/cron/crontabs/root ?When installing ispconfig, it adds following lines into `/var/spool/cron/crontabs/root` . I guess it's not really nice place for scripts to automaticaly put their crons into. Stuff like this should be put in `/etc/crond.d/[package_name]`...When installing ispconfig, it adds following lines into `/var/spool/cron/crontabs/root` . I guess it's not really nice place for scripts to automaticaly put their crons into. Stuff like this should be put in `/etc/crond.d/[package_name]`, therefore `/etc/cron.d/ispconfig` would make more sense for me.
What do you think?
```
* * * * * /usr/local/ispconfig/server/server.sh 2>&1 | while read line; do echo `/bin/date` "$line" >> /var/log/ispconfig/cron.log; done
* * * * * /usr/local/ispconfig/server/cron.sh 2>&1 | while read line; do echo `/bin/date` "$line" >> /var/log/ispconfig/cron.log; done
```https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/5006adding revers dns zones for IPV62020-06-01T16:57:53ZChristian Bretterhoferadding revers dns zones for IPV6dns_wizard.php
if(isset($_POST['domain']) && $_POST['domain'] == '') $error .= $app->lng('error_domain_empty').'<br />';
elseif(isset($_POST['domain']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9\-]{2,30}$/', $_POST['domain'])) $error ...dns_wizard.php
if(isset($_POST['domain']) && $_POST['domain'] == '') $error .= $app->lng('error_domain_empty').'<br />';
elseif(isset($_POST['domain']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9\-]{2,30}$/', $_POST['domain'])) $error .= $app->lng('error_domain_regex').'<br />';
How would a vaild domain name for x.x.x.x.x.x.x.x.ip6.arpa. pass this regex?3.3https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4999Allow emails with "+" in email catchall address2020-07-20T14:36:40ZMarin BînzariAllow emails with "+" in email catchall address## short description
I triend to create a catchall email for a domain and send it to myemail+server1@exaple.com. I got the error `Destination is no valid email address.`. I searched the code and found that in https://git.ispconfig.org/is...## short description
I triend to create a catchall email for a domain and send it to myemail+server1@exaple.com. I got the error `Destination is no valid email address.`. I searched the code and found that in https://git.ispconfig.org/ispconfig/ispconfig3/blob/master/interface/lib/classes/tform_base.inc.php#L1044 there is a validation check to not allow "+" signs in the email. I suppose it is for the moment when you create a mailbox on the server.
## correct behaviour
Allow "+" sign in emails that are as recipients, in Email Catchall, Email forwarding and others.
## proposed fix
Add a parrameter that will allow skipping of the check. We have a `separator` parameter so I think it's possible to add another one.3.2https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4987user-friendly labels for "Redirect Type"2020-10-22T09:57:41ZJesse Norelluser-friendly labels for "Redirect Type"Please put user friendly labels for the options in "Redirect Type" select list; anyone not familiar with apache's rewrite module syntax won't likely know what "L", "R", "R,L", etc. mean.Please put user friendly labels for the options in "Redirect Type" select list; anyone not familiar with apache's rewrite module syntax won't likely know what "L", "R", "R,L", etc. mean.3.2.1ThomThomhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4982Disable monitoring only for insecure email protocols2021-02-19T14:51:39ZFrederikDisable monitoring only for insecure email protocols## short description
More and more providers disable unsecured protocols for email communication and offer only IMAPS, POP3S or SMTPS.
By disabling the ports (e.g. IMAP) ISPConfig monitoring reports those services as being offline.
Th...## short description
More and more providers disable unsecured protocols for email communication and offer only IMAPS, POP3S or SMTPS.
By disabling the ports (e.g. IMAP) ISPConfig monitoring reports those services as being offline.
The only way to solve this is to completely disable the monitoring function for email.
## feature request
- There should be an option to separate those ports and disable monitoring for insecure (or selected) protocols.
- This might be extended to other services as well, which are monitored (HTTPS, MySQL).
## misc
To me it seems like the monitoring function in `ispconfig3/server/lib/classes/monitor_tools.inc.php` checks only the standard ports. There is no monitoring for smtps/465, imaps/993 or 995/pop3s.
Firstly those other protocols probably need to be added here. Next would be to separate _email monitoring_ into _secure_ and _insecure_.
Any other thoughts about this?https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4964make session.save_path overridable in apache + fcgi2020-12-26T10:06:14ZAlexmake session.save_path overridable in apache + fcgiI needed it, so I made changes needed. I want you to pull this into sources, so my local changes dont get overwritten with update of ipsconfig (and maybe smb else will need it). I did changes based on 9fd93035 , basically changing one li...I needed it, so I made changes needed. I want you to pull this into sources, so my local changes dont get overwritten with update of ipsconfig (and maybe smb else will need it). I did changes based on 9fd93035 , basically changing one line in template for fcgi-launcher, and adding bunch of lines to pass php-ini settings (why not to user parse_ini_file()? ). Probably the right way to generalize code for passing custom php-ini settings, so you dont have duplicate code.
```
┗━━ # diff -u apache2_plugin.inc.php.bak apache2_plugin.inc.php
--- apache2_plugin.inc.php.bak 2018-01-06 09:35:50.000000000 +0000
+++ apache2_plugin.inc.php 2018-02-25 01:42:26.695968483 +0000
@@ -1431,6 +1431,31 @@
$default_fastcgi_php = true;
}
+ $custom_php_ini_settings = trim($data['new']['custom_php_ini']);
+ $custom_session_save_path = false;
+ if($custom_php_ini_settings != ''){
+ // Make sure we only have Unix linebreaks
+ $custom_php_ini_settings = str_replace("\r\n", "\n", $custom_php_ini_settings);
+ $custom_php_ini_settings = str_replace("\r", "\n", $custom_php_ini_settings);
+ $ini_settings = explode("\n", $custom_php_ini_settings);
+ if(is_array($ini_settings) && !empty($ini_settings)){
+ foreach($ini_settings as $ini_setting){
+ $ini_setting = trim($ini_setting);
+ if(substr($ini_setting, 0, 1) == ';') continue;
+ if(substr($ini_setting, 0, 1) == '#') continue;
+ if(substr($ini_setting, 0, 2) == '//') continue;
+ list($key, $value) = explode('=', $ini_setting, 2);
+ $value = trim($value);
+ if($value != ''){
+ $key = trim($key);
+ if($key == 'session.save_path') $custom_session_save_path = true;
+ }
+ }
+ }
+ }
+
+ $fcgi_tpl->setVar('custom_session_save_path', ($custom_session_save_path ? 'y' : 'n'));
+
if($has_custom_php_ini) {
$fcgi_tpl->setVar('php_ini_path', escapeshellcmd($custom_php_ini_dir));
} else {
```
```
┗━━ # diff -u php-fcgi-starter.master.bak php-fcgi-starter.master
--- php-fcgi-starter.master.bak 2018-02-25 01:31:37.262979300 +0000
+++ php-fcgi-starter.master 2018-02-25 01:32:12.419899333 +0000
@@ -15,6 +15,6 @@
exec <tmpl_var name='php_fcgi_bin'> \
<tmpl_if name="security_level" op="==" value="20"> -d open_basedir="<tmpl_var name='open_basedir'>" \
-d upload_tmp_dir=<tmpl_var name='document_root'>/tmp \
--d session.save_path=<tmpl_var name='document_root'>/tmp \}
+<tmpl_if name='custom_session_save_path' op='!=' value='y'>-d session.save_path=<tmpl_var name='document_root'>/tmp </tmpl_if> \
-d sendmail_path="/usr/sbin/sendmail -t -i -f webmaster@<tmpl_var name='domain'>" \
```https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4961Locking a user through the API should also deactivate their services2021-04-25T15:30:19ZGhost UserLocking a user through the API should also deactivate their servicesIn https://git.ispconfig.org/ispconfig/ispconfig3/issues/1159 a feature was implemented which meant that 'locking' a client would also de-activate all their services (website, ftp user, mail, ...). Locking a client through the API does n...In https://git.ispconfig.org/ispconfig/ispconfig3/issues/1159 a feature was implemented which meant that 'locking' a client would also de-activate all their services (website, ftp user, mail, ...). Locking a client through the API does not do this. Perhaps this is expected behaviour, since the 'locked' and 'canceled' attributes are not documented in `/remoting_client/API-docs/client_update.html`. But imho the API should mimic the web interface behaviour here, so that means:
- document parameters 'locked' and 'canceled' in /remoting_client/API-docs/client_update.html
- when locking a client, also deactivate all their stuff
- when unlocking a client, also activate all their stuff
@tbrehm if you agree, I could send a PRhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4927Icon on top navigation bar2020-08-28T12:39:19ZZironda SrlIcon on top navigation barHi, in developing a module for ispconfig we realized that it is not possible to specify the icon to be displayed in the module.conf.php file, but it is "chosen" according to the module name.
In future releases it may be possible to choos...Hi, in developing a module for ispconfig we realized that it is not possible to specify the icon to be displayed in the module.conf.php file, but it is "chosen" according to the module name.
In future releases it may be possible to choose it by set an option like this ?
`$module['nav'][] = array( 'title' => 'Audit',
'open' => 1,
'items' => $items
**'icon' => [name/path to icon]**);`
Thankyou!3.3https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4921+ sign in email creates error2020-07-20T18:04:43ZChris Kessler+ sign in email creates errori am having an issue accepting new clients that have a + sign in the email address.
An example of a valid address is blah+blah@gmail.com, which is a valid gmail address.
the error being thrown is:
SOAP Error: email_error_isemail<br />i am having an issue accepting new clients that have a + sign in the email address.
An example of a valid address is blah+blah@gmail.com, which is a valid gmail address.
the error being thrown is:
SOAP Error: email_error_isemail<br />3.2https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4918welcome_email customization2018-06-26T10:39:56ZGhost Userwelcome_email customizationHi, in order to create a better service to my customers, i'd like know if in next release you can add "variables" (as {email}, {domain},...) in
welcome_email_[lang].txt
Thankyou!Hi, in order to create a better service to my customers, i'd like know if in next release you can add "variables" (as {email}, {domain},...) in
welcome_email_[lang].txt
Thankyou!https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4908More diskspace details2020-12-29T15:23:14ZSteffen NielsenMore diskspace detailsIt would be neat if clients are able to see their total amount of diskspace assigned/unassigned on both web and email, and how much that are in use totally.
Scenario: Once in a while clients are in doubt how much diskspace are unassigne...It would be neat if clients are able to see their total amount of diskspace assigned/unassigned on both web and email, and how much that are in use totally.
Scenario: Once in a while clients are in doubt how much diskspace are unassigned when creating new mailboxes. Having a grand total would solve that problem.https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4839[Feature Request] Multiple Clients (per site)2020-12-26T10:06:13ZRon Granger[Feature Request] Multiple Clients (per site)*Hey, I am using ISPConfig for a few days and already found some limits so I can't replace my dirty-coded Admin-System yet.*
For some projects I got a lot of clients for one site so I would need to **connect something with more than...*Hey, I am using ISPConfig for a few days and already found some limits so I can't replace my dirty-coded Admin-System yet.*
For some projects I got a lot of clients for one site so I would need to **connect something with more than one client** - that seems impossible at the moment.
My Idea would be to create a **group of clients** (let's call it 'project' for now, 'team' would also be a fitting name).
Let's imagine there are 5 persons working on my 'project'. I create the first site for this 'project' and instead of a client I connect the 'project' with it so **every client connected to this project can access the connected stuff**.
Later I want to create a second site (may be another subdomain) and I connect it to the 'project' as well. Everything works fine ;-)
I think this would be the easiest solution because manually adding all the clients is a waste of time and seems harder to implement in the code.https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4835More backup intervals with xdelta3 request2020-12-26T10:06:13ZMartin KokešMore backup intervals with xdelta3 requestI was wondering how to save the space needed for backup and do not confuse the user so much. I suggest adding the "Weekly with daily diffs" and "Monthly with daily diffs" options to the Backup interval and use week/month master backup wi...I was wondering how to save the space needed for backup and do not confuse the user so much. I suggest adding the "Weekly with daily diffs" and "Monthly with daily diffs" options to the Backup interval and use week/month master backup with "tar --use-compress-program=xdelta3" to generate new daily tar.gz.vcdiff. Download would take week/month master or week/month master with daily tar.gz.vcdiff and create new full tar.gz in user's backup directory.https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/4821OpenDKIM DNS entries2018-12-12T17:36:53ZNinosOpenDKIM DNS entriesTo increase usability of opendkim, it would be nice, if the DNS entries are set automatically. So customer does not need to set the entry into ispconfig DNS. Also the entry must be blocked, so customers can only remove this entry by disa...To increase usability of opendkim, it would be nice, if the DNS entries are set automatically. So customer does not need to set the entry into ispconfig DNS. Also the entry must be blocked, so customers can only remove this entry by disabling opendkim for that domain.