From 8d88617351beb676cb04f75264ebbffc93375bc2 Mon Sep 17 00:00:00 2001 From: Fernando Alegre Date: Sat, 6 Jun 2020 20:49:32 +0000 Subject: [PATCH 1/6] Made server mailtest instead of mail --- src/mailsrv/assets/postfix/main.cf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mailsrv/assets/postfix/main.cf b/src/mailsrv/assets/postfix/main.cf index 40cd54b..7c50134 100644 --- a/src/mailsrv/assets/postfix/main.cf +++ b/src/mailsrv/assets/postfix/main.cf @@ -17,12 +17,12 @@ compatibility_level = 2 ### Domains ### # primary name of server -myhostname = mail.alemor.org +myhostname = mailtest.alemor.org myorigin = $mydomain # domains to consider primary (local) endpoints mydestination = $myhostname, $mydomain, localhost.localdomain, localhost # domains to consider secondary (virtual) endpoints -virtual_alias_domains = epic.alemor.org, mail.alemor.org, home.alemor.org, alegre.alemor.org, daniel.alemor.org, fernando.alemor.org, juana.alemor.org, mario.alemor.org, moreno.alemor.org, mbox.alemor.org, pirealps.org +virtual_alias_domains = epic.alemor.org, home.alemor.org, alegre.alemor.org, daniel.alemor.org, fernando.alemor.org, juana.alemor.org, mario.alemor.org, moreno.alemor.org ### Users ### # get list of valid users from here instead of /etc/passwd From 3b0c19fffb9e927be864ec01702ba4e54cd3dec0 Mon Sep 17 00:00:00 2001 From: Fernando Alegre Date: Sat, 20 Jun 2020 19:06:30 +0000 Subject: [PATCH 2/6] Added processing of sieve files and changed format of maildir --- src/mailsrv/assets/bin/mkvirt | 10 ++++++++++ src/mailsrv/assets/dovecot/conf.d/10-mail.conf | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/mailsrv/assets/bin/mkvirt b/src/mailsrv/assets/bin/mkvirt index 975ec5d..45f9b7e 100755 --- a/src/mailsrv/assets/bin/mkvirt +++ b/src/mailsrv/assets/bin/mkvirt @@ -19,3 +19,13 @@ postmap /etc/postfix/users cd /etc/postfix cat /vol/db/aliases.d/*.list > aliases postmap aliases + +### Sieve ### + +# copy users sieve to mail +cd /vol/db/sieve.d +for user in * ; do + rsync -vaSH ${user} /vol/mail/${user}/.dovecot.sieve +done + +chown -R vmail:vmail /vol/mail diff --git a/src/mailsrv/assets/dovecot/conf.d/10-mail.conf b/src/mailsrv/assets/dovecot/conf.d/10-mail.conf index 98a397e..4df36e8 100644 --- a/src/mailsrv/assets/dovecot/conf.d/10-mail.conf +++ b/src/mailsrv/assets/dovecot/conf.d/10-mail.conf @@ -27,7 +27,7 @@ # # # -mail_location = maildir:~/Maildir:LAYOUT=fs +mail_location = maildir:~/Maildir # If you need to set multiple mailbox locations or want to change default # namespace settings, you can do it by defining namespace sections. @@ -46,7 +46,7 @@ namespace inbox { # Hierarchy separator to use. You should use the same separator for all # namespaces or some clients get confused. '/' is usually a good one. # The default however depends on the underlying mail storage format. - separator = / + separator = . # Prefix required to access this namespace. This needs to be different for # all namespaces. For example "Public/". From 9e449976d6c0a5be3c58c8a2232c4ac309480c0b Mon Sep 17 00:00:00 2001 From: Fernando Alegre Date: Sat, 20 Jun 2020 19:12:59 +0000 Subject: [PATCH 3/6] Replaced volumes with vol --- src/mailsrv/Containerfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mailsrv/Containerfile b/src/mailsrv/Containerfile index 7a97424..6ed718e 100644 --- a/src/mailsrv/Containerfile +++ b/src/mailsrv/Containerfile @@ -10,9 +10,9 @@ LABEL deployopts="\ -p 587:587 \ -p 143:143 \ -p 993:993 \ --v /srv/volumes/mailsrv/db:/vol/db \ --v /srv/volumes/mailsrv/mail:/vol/mail \ --v /srv/volumes/mailsrv/ssl:/vol/ssl:ro" +-v /srv/vol/mailsrv/db:/vol/db \ +-v /srv/vol/mailsrv/mail:/vol/mail \ +-v /srv/vol/mailsrv/ssl:/vol/ssl:ro" # Build Variables # uid that the files owner user should have @@ -70,4 +70,4 @@ RUN ln -s /vol/mail /var/mail/virtual RUN mkdir -p /vol/db # set /vol/db as working directory -WORKDIR /vol/db \ No newline at end of file +WORKDIR /vol/db From 657faa6d0e3ebc8f4fd4eb141fc58f59acd715b8 Mon Sep 17 00:00:00 2001 From: Fernando Alegre Date: Sat, 20 Jun 2020 19:31:59 +0000 Subject: [PATCH 4/6] copy sieve using cp instead of rsync --- src/mailsrv/assets/bin/mkvirt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/mailsrv/assets/bin/mkvirt b/src/mailsrv/assets/bin/mkvirt index 45f9b7e..5042b76 100755 --- a/src/mailsrv/assets/bin/mkvirt +++ b/src/mailsrv/assets/bin/mkvirt @@ -25,7 +25,8 @@ postmap aliases # copy users sieve to mail cd /vol/db/sieve.d for user in * ; do - rsync -vaSH ${user} /vol/mail/${user}/.dovecot.sieve + mkdir -p /vol/mail/${user} + chown vmail:vmail /vol/mail/${user} + chown vmail:vmail ${user} + cp -p ${user} /vol/mail/${user}/.dovecot.sieve done - -chown -R vmail:vmail /vol/mail From 04d3af9fdbb1bde64419df845443be5bc65cf72e Mon Sep 17 00:00:00 2001 From: Fernando Alegre Date: Sat, 20 Jun 2020 20:05:24 +0000 Subject: [PATCH 5/6] Moved db to etc --- src/mailsrv/Containerfile | 10 +++++----- src/mailsrv/assets/bin/mkvirt | 8 ++++---- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/mailsrv/Containerfile b/src/mailsrv/Containerfile index 6ed718e..8e74fb7 100644 --- a/src/mailsrv/Containerfile +++ b/src/mailsrv/Containerfile @@ -10,7 +10,7 @@ LABEL deployopts="\ -p 587:587 \ -p 143:143 \ -p 993:993 \ --v /srv/vol/mailsrv/db:/vol/db \ +-v /srv/vol/mailsrv/etc:/vol/etc \ -v /srv/vol/mailsrv/mail:/vol/mail \ -v /srv/vol/mailsrv/ssl:/vol/ssl:ro" @@ -66,8 +66,8 @@ RUN ln -s /vol/mail /var/mail/virtual ### Working Directory ### -# make sure /vol/db exists -RUN mkdir -p /vol/db +# make sure /vol/etc exists +RUN mkdir -p /vol/etc -# set /vol/db as working directory -WORKDIR /vol/db +# set /vol/etc as working directory +WORKDIR /vol/etc diff --git a/src/mailsrv/assets/bin/mkvirt b/src/mailsrv/assets/bin/mkvirt index 5042b76..4c07ae0 100755 --- a/src/mailsrv/assets/bin/mkvirt +++ b/src/mailsrv/assets/bin/mkvirt @@ -6,24 +6,24 @@ set -e ### Users ### # copy users db to dovecot config -cp /vol/db/users /etc/dovecot/users +cp /vol/etc/users /etc/dovecot/users chown dovecot:dovecot /etc/dovecot/users # copy users db to postfix config, but without passwords -cat /vol/db/users | cut -d':' -f1 | perl -pe 's/(.*)/\1 ./' > /etc/postfix/users +cat /vol/etc/users | cut -d':' -f1 | perl -pe 's/(.*)/\1 ./' > /etc/postfix/users postmap /etc/postfix/users ### Aliases ### # copy aliases to postifx config cd /etc/postfix -cat /vol/db/aliases.d/*.list > aliases +cat /vol/etc/aliases.d/*.list > aliases postmap aliases ### Sieve ### # copy users sieve to mail -cd /vol/db/sieve.d +cd /vol/etc/sieve.d for user in * ; do mkdir -p /vol/mail/${user} chown vmail:vmail /vol/mail/${user} From 52d39f1b76de9f43c3e04d7bb6bc454426545782 Mon Sep 17 00:00:00 2001 From: Fernando Alegre Date: Sat, 20 Jun 2020 21:27:43 +0000 Subject: [PATCH 6/6] Moved from mailtest to mail.alemor.org --- src/mailsrv/assets/postfix/main.cf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mailsrv/assets/postfix/main.cf b/src/mailsrv/assets/postfix/main.cf index 7c50134..7852c86 100644 --- a/src/mailsrv/assets/postfix/main.cf +++ b/src/mailsrv/assets/postfix/main.cf @@ -17,7 +17,7 @@ compatibility_level = 2 ### Domains ### # primary name of server -myhostname = mailtest.alemor.org +myhostname = mail.alemor.org myorigin = $mydomain # domains to consider primary (local) endpoints mydestination = $myhostname, $mydomain, localhost.localdomain, localhost