mirror of
https://github.com/docker-mailserver/docker-mailserver.git
synced 2024-01-19 02:48:50 +00:00
config: ensure SASL socket file is not inside a volume mount (#3131)
This commit is contained in:
parent
9a9380150e
commit
f0edcc28d9
|
@ -53,7 +53,7 @@ EOF
|
||||||
# --- Dovecot -----------------------------------
|
# --- Dovecot -----------------------------------
|
||||||
# -----------------------------------------------
|
# -----------------------------------------------
|
||||||
|
|
||||||
COPY target/dovecot/auth-passwdfile.inc target/dovecot/auth-master.inc target/dovecot/??-*.conf /etc/dovecot/conf.d/
|
COPY target/dovecot/*.inc target/dovecot/*.conf /etc/dovecot/conf.d/
|
||||||
COPY target/dovecot/sieve/ /etc/dovecot/sieve/
|
COPY target/dovecot/sieve/ /etc/dovecot/sieve/
|
||||||
COPY target/dovecot/dovecot-purge.cron /etc/cron.d/dovecot-purge.disabled
|
COPY target/dovecot/dovecot-purge.cron /etc/cron.d/dovecot-purge.disabled
|
||||||
RUN chmod 0 /etc/cron.d/dovecot-purge.disabled
|
RUN chmod 0 /etc/cron.d/dovecot-purge.disabled
|
||||||
|
|
|
@ -45,19 +45,7 @@ service pop3-login {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
service lmtp {
|
!include lmtp-master.inc
|
||||||
unix_listener lmtp {
|
|
||||||
mode = 0660
|
|
||||||
group = postfix
|
|
||||||
}
|
|
||||||
|
|
||||||
# Create inet listener only if you can't use the above UNIX socket
|
|
||||||
#inet_listener lmtp {
|
|
||||||
# Avoid making LMTP visible for the entire internet
|
|
||||||
#address =
|
|
||||||
#port =
|
|
||||||
#}
|
|
||||||
}
|
|
||||||
|
|
||||||
service imap {
|
service imap {
|
||||||
# Most of the memory goes to mmap()ing files. You may need to increase this
|
# Most of the memory goes to mmap()ing files. You may need to increase this
|
||||||
|
@ -100,10 +88,10 @@ service auth {
|
||||||
}
|
}
|
||||||
|
|
||||||
# Postfix smtp-auth
|
# Postfix smtp-auth
|
||||||
unix_listener /var/spool/postfix/private/auth {
|
unix_listener /dev/shm/sasl-auth.sock {
|
||||||
mode = 0666
|
mode = 0660
|
||||||
user = docker
|
user = postfix
|
||||||
group = docker
|
group = postfix
|
||||||
}
|
}
|
||||||
|
|
||||||
# Auth process is run as this user.
|
# Auth process is run as this user.
|
||||||
|
|
13
target/dovecot/lmtp-master.inc
Normal file
13
target/dovecot/lmtp-master.inc
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
service lmtp {
|
||||||
|
unix_listener lmtp {
|
||||||
|
mode = 0660
|
||||||
|
group = postfix
|
||||||
|
}
|
||||||
|
|
||||||
|
# Create inet listener only if you can't use the above UNIX socket
|
||||||
|
# and avoid making LMTP visible for the entire internet
|
||||||
|
#inet_listener lmtp {
|
||||||
|
# address = 127.0.0.1
|
||||||
|
# port = 24
|
||||||
|
#}
|
||||||
|
}
|
|
@ -77,7 +77,7 @@ postscreen_bare_newline_action = enforce
|
||||||
|
|
||||||
# SASL
|
# SASL
|
||||||
smtpd_sasl_auth_enable = no
|
smtpd_sasl_auth_enable = no
|
||||||
smtpd_sasl_path = /var/spool/postfix/private/auth
|
smtpd_sasl_path = /dev/shm/sasl-auth.sock
|
||||||
smtpd_sasl_type = dovecot
|
smtpd_sasl_type = dovecot
|
||||||
|
|
||||||
smtpd_sasl_security_options = noanonymous
|
smtpd_sasl_security_options = noanonymous
|
||||||
|
|
|
@ -19,7 +19,6 @@ submission inet n - n - - smtpd
|
||||||
-o smtpd_tls_security_level=encrypt
|
-o smtpd_tls_security_level=encrypt
|
||||||
-o smtpd_sasl_auth_enable=yes
|
-o smtpd_sasl_auth_enable=yes
|
||||||
-o smtpd_sasl_type=dovecot
|
-o smtpd_sasl_type=dovecot
|
||||||
-o smtpd_sasl_path=private/auth
|
|
||||||
-o smtpd_reject_unlisted_recipient=no
|
-o smtpd_reject_unlisted_recipient=no
|
||||||
-o smtpd_sasl_authenticated_header=yes
|
-o smtpd_sasl_authenticated_header=yes
|
||||||
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
|
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
|
||||||
|
@ -33,7 +32,6 @@ smtps inet n - n - - smtpd
|
||||||
-o smtpd_tls_wrappermode=yes
|
-o smtpd_tls_wrappermode=yes
|
||||||
-o smtpd_sasl_auth_enable=yes
|
-o smtpd_sasl_auth_enable=yes
|
||||||
-o smtpd_sasl_type=dovecot
|
-o smtpd_sasl_type=dovecot
|
||||||
-o smtpd_sasl_path=private/auth
|
|
||||||
-o smtpd_reject_unlisted_recipient=no
|
-o smtpd_reject_unlisted_recipient=no
|
||||||
-o smtpd_sasl_authenticated_header=yes
|
-o smtpd_sasl_authenticated_header=yes
|
||||||
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
|
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
|
||||||
|
|
|
@ -109,6 +109,9 @@ function _setup_apply_fixes_after_configuration
|
||||||
|
|
||||||
_log 'debug' 'Checking /var/mail permissions'
|
_log 'debug' 'Checking /var/mail permissions'
|
||||||
_chown_var_mail_if_necessary || _shutdown 'Failed to fix /var/mail permissions'
|
_chown_var_mail_if_necessary || _shutdown 'Failed to fix /var/mail permissions'
|
||||||
|
|
||||||
|
_log 'trace' 'Remove left-over files and directories from older versions'
|
||||||
|
rm -rf /var/spool/postfix/{dev,etc,lib,usr,private/auth}
|
||||||
}
|
}
|
||||||
|
|
||||||
function _run_user_patches
|
function _run_user_patches
|
||||||
|
|
|
@ -3,12 +3,17 @@
|
||||||
# This user script will be executed between configuration and starting daemons
|
# This user script will be executed between configuration and starting daemons
|
||||||
# To enable it you must save it in your config directory as "user-patches.sh"
|
# To enable it you must save it in your config directory as "user-patches.sh"
|
||||||
##
|
##
|
||||||
|
|
||||||
echo "[user-patches.sh] Changing Dovecot LMTP service listener from a unix socket to TCP on port 24"
|
echo "[user-patches.sh] Changing Dovecot LMTP service listener from a unix socket to TCP on port 24"
|
||||||
sedfile -i \
|
|
||||||
-e "s|unix_listener lmtp|inet_listener lmtp|" \
|
cat >/etc/dovecot/conf.d/lmtp-master.inc << EOF
|
||||||
-e "s|mode = 0660|address = 0.0.0.0|" \
|
service lmtp {
|
||||||
-e "s|group = postfix|port = 24|" \
|
inet_listener lmtp {
|
||||||
/etc/dovecot/conf.d/10-master.conf
|
address = 127.0.0.1
|
||||||
|
port = 24
|
||||||
|
}
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
### Before / After ###
|
### Before / After ###
|
||||||
|
|
||||||
|
@ -21,7 +26,7 @@ sedfile -i \
|
||||||
|
|
||||||
# service lmtp {
|
# service lmtp {
|
||||||
# inet_listener lmtp {
|
# inet_listener lmtp {
|
||||||
# address = 0.0.0.0
|
# address = 127.0.0.1
|
||||||
# port = 24
|
# port = 24
|
||||||
# }
|
# }
|
||||||
# }
|
# }
|
||||||
|
|
Loading…
Reference in a new issue