Merge pull request #212 from junkpad92/master
Fixing deprecated Postfix templates & Providing Dovecot2 Sieve-Configs
This commit is contained in:
@@ -299,7 +299,7 @@ return array(
|
||||
'dovecot' => array(
|
||||
'label' => 'Dovecot',
|
||||
'commands_1' => array(
|
||||
'apt-get install dovecot-imapd dovecot-pop3d dovecot-postfix dovecot-mysql mail-stack-delivery'
|
||||
'apt-get install dovecot-imapd dovecot-pop3d dovecot-postfix dovecot-mysql dovecot-managesieved dovecot-sieve mail-stack-delivery'
|
||||
),
|
||||
'files' => array(
|
||||
|
||||
|
||||
@@ -299,7 +299,7 @@ return array(
|
||||
'dovecot' => array(
|
||||
'label' => 'Dovecot',
|
||||
'commands_1' => array(
|
||||
'apt-get install dovecot-imapd dovecot-pop3d dovecot-mysql'
|
||||
'apt-get install dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-managesieved dovecot-sieve'
|
||||
),
|
||||
'files' => array(
|
||||
'etc_dovecot_conf.d_10-auth.conf' => '/etc/dovecot/conf.d/10-auth.conf',
|
||||
@@ -308,6 +308,8 @@ return array(
|
||||
'etc_dovecot_conf.d_15-lda.conf' => '/etc/dovecot/conf.d/15-lda.conf',
|
||||
'etc_dovecot_conf.d_20-imap.conf' => '/etc/dovecot/conf.d/20-imap.conf',
|
||||
'etc_dovecot_conf.d_20-pop3.conf' => '/etc/dovecot/conf.d/20-pop3.conf',
|
||||
'etc_dovecot_conf.d_20-managesieve.conf' => '/etc/dovecot/20-managesieve.conf',
|
||||
'etc_dovecot_conf.d_90-sieve.conf' => '/etc/dovecot/90-sieve.conf',
|
||||
'etc_dovecot_dovecot.conf' => '/etc/dovecot/dovecot.conf',
|
||||
'etc_dovecot_dovecot-sql.conf.ext' => '/etc/dovecot/dovecot-sql.conf.ext'
|
||||
),
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -44,5 +44,5 @@ postmaster_address = postmaster@<SERVERNAME>
|
||||
|
||||
protocol lda {
|
||||
# Space separated list of plugins to load (default is global mail_plugins).
|
||||
mail_plugins = $mail_plugins quota
|
||||
mail_plugins = $mail_plugins quota sieve
|
||||
}
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
##
|
||||
## ManageSieve specific settings
|
||||
##
|
||||
|
||||
# Service definitions
|
||||
|
||||
service managesieve-login {
|
||||
inet_listener sieve {
|
||||
port = 4190
|
||||
}
|
||||
|
||||
#inet_listener sieve_deprecated {
|
||||
# port = 2000
|
||||
#}
|
||||
|
||||
# Number of connections to handle before starting a new process. Typically
|
||||
# the only useful values are 0 (unlimited) or 1. 1 is more secure, but 0
|
||||
# is faster. <doc/wiki/LoginProcess.txt>
|
||||
#service_count = 1
|
||||
|
||||
# Number of processes to always keep waiting for more connections.
|
||||
#process_min_avail = 0
|
||||
|
||||
# If you set service_count=0, you probably need to grow this.
|
||||
#vsz_limit = 64M
|
||||
}
|
||||
|
||||
service managesieve {
|
||||
# Max. number of ManageSieve processes (connections)
|
||||
#process_limit = 1024
|
||||
}
|
||||
|
||||
# Service configuration
|
||||
|
||||
protocol sieve {
|
||||
# Maximum ManageSieve command line length in bytes. ManageSieve usually does
|
||||
# not involve overly long command lines, so this setting will not normally
|
||||
# need adjustment
|
||||
#managesieve_max_line_length = 65536
|
||||
|
||||
# Maximum number of ManageSieve connections allowed for a user from each IP
|
||||
# address.
|
||||
# NOTE: The username is compared case-sensitively.
|
||||
#mail_max_userip_connections = 10
|
||||
|
||||
# Space separated list of plugins to load (none known to be useful so far).
|
||||
# Do NOT try to load IMAP plugins here.
|
||||
#mail_plugins =
|
||||
|
||||
# MANAGESIEVE logout format string:
|
||||
# %i - total number of bytes read from client
|
||||
# %o - total number of bytes sent to client
|
||||
#managesieve_logout_format = bytes=%i/%o
|
||||
|
||||
# To fool ManageSieve clients that are focused on CMU's timesieved you can
|
||||
# specify the IMPLEMENTATION capability that Dovecot reports to clients.
|
||||
# For example: 'Cyrus timsieved v2.2.13'
|
||||
#managesieve_implementation_string = Dovecot Pigeonhole
|
||||
|
||||
# Explicitly specify the SIEVE and NOTIFY capability reported by the server
|
||||
# before login. If left unassigned these will be reported dynamically
|
||||
# according to what the Sieve interpreter supports by default (after login
|
||||
# this may differ depending on the user).
|
||||
#managesieve_sieve_capability =
|
||||
#managesieve_notify_capability =
|
||||
|
||||
# The maximum number of compile errors that are returned to the client upon
|
||||
# script upload or script verification.
|
||||
#managesieve_max_compile_errors = 5
|
||||
|
||||
# Refer to 90-sieve.conf for script quota configuration and configuration of
|
||||
# Sieve execution limits.
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
##
|
||||
## Settings for the Sieve interpreter
|
||||
##
|
||||
|
||||
# Do not forget to enable the Sieve plugin in 15-lda.conf and 20-lmtp.conf
|
||||
# by adding it to the respective mail_plugins= settings.
|
||||
|
||||
plugin {
|
||||
# The path to the user's main active script. If ManageSieve is used, this the
|
||||
# location of the symbolic link controlled by ManageSieve.
|
||||
sieve = ~/sieve/.dovecot.sieve
|
||||
|
||||
# The default Sieve script when the user has none. This is a path to a global
|
||||
# sieve script file, which gets executed ONLY if user's private Sieve script
|
||||
# doesn't exist. Be sure to pre-compile this script manually using the sievec
|
||||
# command line tool.
|
||||
# --> See sieve_before fore executing scripts before the user's personal
|
||||
# script.
|
||||
#sieve_default = /var/lib/dovecot/sieve/default.sieve
|
||||
|
||||
# Directory for :personal include scripts for the include extension. This
|
||||
# is also where the ManageSieve service stores the user's scripts.
|
||||
sieve_dir = ~/sieve
|
||||
|
||||
# Directory for :global include scripts for the include extension.
|
||||
#sieve_global_dir =
|
||||
|
||||
# Path to a script file or a directory containing script files that need to be
|
||||
# executed before the user's script. If the path points to a directory, all
|
||||
# the Sieve scripts contained therein (with the proper .sieve extension) are
|
||||
# executed. The order of execution within a directory is determined by the
|
||||
# file names, using a normal 8bit per-character comparison. Multiple script
|
||||
# file or directory paths can be specified by appending an increasing number.
|
||||
#sieve_before =
|
||||
#sieve_before2 =
|
||||
#sieve_before3 = (etc...)
|
||||
|
||||
# Identical to sieve_before, only the specified scripts are executed after the
|
||||
# user's script (only when keep is still in effect!). Multiple script file or
|
||||
# directory paths can be specified by appending an increasing number.
|
||||
#sieve_after =
|
||||
#sieve_after2 =
|
||||
#sieve_after2 = (etc...)
|
||||
|
||||
# Which Sieve language extensions are available to users. By default, all
|
||||
# supported extensions are available, except for deprecated extensions or
|
||||
# those that are still under development. Some system administrators may want
|
||||
# to disable certain Sieve extensions or enable those that are not available
|
||||
# by default. This setting can use '+' and '-' to specify differences relative
|
||||
# to the default. For example `sieve_extensions = +imapflags' will enable the
|
||||
# deprecated imapflags extension in addition to all extensions were already
|
||||
# enabled by default.
|
||||
#sieve_extensions = +notify +imapflags
|
||||
|
||||
# Which Sieve language extensions are ONLY available in global scripts. This
|
||||
# can be used to restrict the use of certain Sieve extensions to administrator
|
||||
# control, for instance when these extensions can cause security concerns.
|
||||
# This setting has higher precedence than the `sieve_extensions' setting
|
||||
# (above), meaning that the extensions enabled with this setting are never
|
||||
# available to the user's personal script no matter what is specified for the
|
||||
# `sieve_extensions' setting. The syntax of this setting is similar to the
|
||||
# `sieve_extensions' setting, with the difference that extensions are
|
||||
# enabled or disabled for exclusive use in global scripts. Currently, no
|
||||
# extensions are marked as such by default.
|
||||
#sieve_global_extensions =
|
||||
|
||||
# The Pigeonhole Sieve interpreter can have plugins of its own. Using this
|
||||
# setting, the used plugins can be specified. Check the Dovecot wiki
|
||||
# (wiki2.dovecot.org) or the pigeonhole website
|
||||
# (http://pigeonhole.dovecot.org) for available plugins.
|
||||
#sieve_plugins =
|
||||
|
||||
# The separator that is expected between the :user and :detail
|
||||
# address parts introduced by the subaddress extension. This may
|
||||
# also be a sequence of characters (e.g. '--'). The current
|
||||
# implementation looks for the separator from the left of the
|
||||
# localpart and uses the first one encountered. The :user part is
|
||||
# left of the separator and the :detail part is right. This setting
|
||||
# is also used by Dovecot's LMTP service.
|
||||
#recipient_delimiter = +
|
||||
|
||||
# The maximum size of a Sieve script. The compiler will refuse to compile any
|
||||
# script larger than this limit. If set to 0, no limit on the script size is
|
||||
# enforced.
|
||||
#sieve_max_script_size = 1M
|
||||
|
||||
# The maximum number of actions that can be performed during a single script
|
||||
# execution. If set to 0, no limit on the total number of actions is enforced.
|
||||
#sieve_max_actions = 32
|
||||
|
||||
# The maximum number of redirect actions that can be performed during a single
|
||||
# script execution. If set to 0, no redirect actions are allowed.
|
||||
#sieve_max_redirects = 4
|
||||
|
||||
# The maximum number of personal Sieve scripts a single user can have. If set
|
||||
# to 0, no limit on the number of scripts is enforced.
|
||||
# (Currently only relevant for ManageSieve)
|
||||
#sieve_quota_max_scripts = 0
|
||||
|
||||
# The maximum amount of disk storage a single user's scripts may occupy. If
|
||||
# set to 0, no limit on the used amount of disk storage is enforced.
|
||||
# (Currently only relevant for ManageSieve)
|
||||
#sieve_quota_max_storage = 0
|
||||
}
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -34,9 +34,11 @@ userdb {
|
||||
|
||||
|
||||
plugin {
|
||||
|
||||
# put your plugins here
|
||||
|
||||
# Sieve-Configuration
|
||||
sieve = ~/sieve/.dovecot.sieve
|
||||
sieve_dir = ~/sieve
|
||||
}
|
||||
|
||||
|
||||
@@ -115,9 +117,6 @@ service managesieve-login {
|
||||
|
||||
|
||||
protocol sieve {
|
||||
|
||||
# not implemented yet
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -136,7 +135,7 @@ protocol imap {
|
||||
|
||||
protocol lmtp {
|
||||
|
||||
mail_plugins = $mail_plugins
|
||||
mail_plugins = $mail_plugins sieve
|
||||
postmaster_address = postmaster@<SERVERNAME>
|
||||
|
||||
}
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -5,7 +5,7 @@ listen = *
|
||||
mail_access_groups = vmail
|
||||
mail_debug = no
|
||||
|
||||
protocols = imap pop3
|
||||
protocols = imap pop3 sieve
|
||||
|
||||
### SSL Settings
|
||||
### After you obtained an SSL-certificate enable ssl here and
|
||||
@@ -21,6 +21,10 @@ passdb {
|
||||
|
||||
plugin {
|
||||
quota = maildir:User Quota
|
||||
|
||||
# Sieve-Configuration
|
||||
sieve = ~/sieve/.dovecot.sieve
|
||||
sieve_dir = ~/sieve
|
||||
}
|
||||
|
||||
service auth {
|
||||
@@ -36,6 +40,15 @@ service auth {
|
||||
}
|
||||
}
|
||||
|
||||
service managesieve-login {
|
||||
inet_listener sieve {
|
||||
port = 4190
|
||||
}
|
||||
}
|
||||
|
||||
service managesieve {
|
||||
}
|
||||
|
||||
userdb {
|
||||
driver = prefetch
|
||||
}
|
||||
@@ -72,10 +85,13 @@ protocol pop3 {
|
||||
pop3_logout_format = in=%i out=%o top=%t/%p retr=%r/%b del=%d/%m size=%s
|
||||
}
|
||||
|
||||
protocol sieve {
|
||||
}
|
||||
|
||||
lda_mailbox_autocreate = yes
|
||||
protocol lda {
|
||||
auth_socket_path = /var/run/dovecot/auth-master
|
||||
mail_plugins = quota
|
||||
mail_plugins = quota sieve
|
||||
# postmaster is the one in charge of the mail system. MUST be set to a valid address!
|
||||
postmaster_address = postmaster@<SERVERNAME>
|
||||
sendmail_path = /usr/sbin/sendmail
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select destination from mail_virtual where email = '%s' and trim(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND trim(destination) <> ''
|
||||
|
||||
@@ -2,5 +2,5 @@ user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
expansion_limit = 1
|
||||
query = select gid from mail_users where email = '%s'
|
||||
hosts = <SQL_HOST>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT gid FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select domain from panel_domains where domain = '%s' and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -2,5 +2,5 @@ user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
expansion_limit = 1
|
||||
query = select (quota*1024*1024) from mail_users where email = '%s'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT (quota*1024*1024) FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -2,5 +2,5 @@ user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
expansion_limit = 1
|
||||
query = select concat(homedir,maildir) from mail_users where email = '%s'
|
||||
hosts = <SQL_HOST>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT CONCAT(homedir,maildir) FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -2,5 +2,5 @@ user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
expansion_limit = 1
|
||||
query = select uid from mail_users where email = '%s'
|
||||
hosts = <SQL_HOST>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT uid FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select destination from mail_virtual where email = '%s' and trim(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND trim(destination) <> ''
|
||||
|
||||
@@ -2,5 +2,5 @@ user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
expansion_limit = 1
|
||||
query = select gid from mail_users where email = '%s'
|
||||
hosts = <SQL_HOST>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT gid FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select domain from panel_domains where domain = '%s' and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -2,5 +2,5 @@ user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
expansion_limit = 1
|
||||
query = select (quota*1024*1024) from mail_users where email = '%s'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT (quota*1024*1024) FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -2,5 +2,5 @@ user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
expansion_limit = 1
|
||||
query = select concat(homedir,maildir) from mail_users where email = '%s'
|
||||
hosts = <SQL_HOST>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT CONCAT(homedir,maildir) FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -2,5 +2,5 @@ user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
expansion_limit = 1
|
||||
query = select uid from mail_users where email = '%s'
|
||||
hosts = <SQL_HOST>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT uid FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
protocols = imap pop3 <SSLPROTOCOLS>
|
||||
protocols = imap pop3 <SSLPROTOCOLS> sieve
|
||||
listen = *
|
||||
mail_access_groups = vmail
|
||||
mail_debug = no
|
||||
@@ -45,10 +45,13 @@ protocol lda {
|
||||
# postmaster is the one in charge of the mail system. MUST be set to a valid address!
|
||||
postmaster_address = postmaster@<SERVERNAME>
|
||||
auth_socket_path = /var/run/dovecot/auth-master
|
||||
mail_plugins = quota
|
||||
mail_plugins = quota sieve
|
||||
sendmail_path = /usr/sbin/sendmail
|
||||
}
|
||||
|
||||
protocol sieve {
|
||||
}
|
||||
|
||||
auth default {
|
||||
mechanisms = plain login
|
||||
passdb sql {
|
||||
@@ -83,6 +86,20 @@ auth default {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
service managesieve-login {
|
||||
inet_listener sieve {
|
||||
port = 4190
|
||||
}
|
||||
}
|
||||
|
||||
service managesieve {
|
||||
}
|
||||
|
||||
plugin {
|
||||
quota = maildir:User quota
|
||||
|
||||
# Sieve-Configuration
|
||||
sieve = ~/sieve/.dovecot.sieve
|
||||
sieve_dir = ~/sieve
|
||||
}
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
dbname = <SQL_DB>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
dbname = <SQL_DB>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
dbname = <SQL_DB>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -43,17 +43,30 @@ protocol pop3 {
|
||||
|
||||
# LDA configuration
|
||||
protocol lda {
|
||||
postmaster_address = postmaster@<SERVERNAME>
|
||||
postmaster_address = postmaster@<SERVERNAME>
|
||||
mail_plugins = sieve quota
|
||||
quota_full_tempfail = yes
|
||||
deliver_log_format = msgid=%m: %$
|
||||
rejection_reason = Your message to <%t> was automatically rejected:%n%r
|
||||
quota_full_tempfail = yes
|
||||
deliver_log_format = msgid=%m: %$
|
||||
rejection_reason = Your message to <%t> was automatically rejected:%n%r
|
||||
}
|
||||
|
||||
# Sieve configuration
|
||||
protocol sieve {
|
||||
}
|
||||
|
||||
service managesieve-login {
|
||||
inet_listener sieve {
|
||||
port = 4190
|
||||
}
|
||||
}
|
||||
|
||||
service managesieve {
|
||||
}
|
||||
|
||||
# Plugins configuration
|
||||
plugin {
|
||||
sieve=~/.dovecot.sieve
|
||||
sieve_dir=~/sieve
|
||||
sieve = ~/sieve/.dovecot.sieve
|
||||
sieve_dir = ~/sieve
|
||||
quota = maildir
|
||||
}
|
||||
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
dbname = <SQL_DB>
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT destination FROM mail_virtual WHERE email = '%s' AND TRIM(destination) <> ''
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT domain FROM panel_domains WHERE domain = '%s' AND isemaildomain = '1'
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT maildir FROM mail_users WHERE email = '%s'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
query = select distinct username from mail_users where email in ((select mail_virtual.email_full from mail_virtual where mail_virtual.email = '%s' union select mail_virtual.destination from mail_virtual where mail_virtual.email = '%s'));
|
||||
hosts = <SQL_HOST>
|
||||
query = SELECT DISTINCT username FROM mail_users WHERE email in ((SELECT mail_virtual.email_full FROM mail_virtual WHERE mail_virtual.email = '%s' UNION SELECT mail_virtual.destination FROM mail_virtual WHERE mail_virtual.email = '%s'));
|
||||
|
||||
Reference in New Issue
Block a user