Compare commits
3 Commits
302bcde43f
...
896399818a
Author | SHA1 | Date | |
---|---|---|---|
896399818a | |||
23f4ba72d2 | |||
41b5b9ae52 |
@ -38,6 +38,7 @@ services:
|
|||||||
dockerfile: Dockerfile.mail
|
dockerfile: Dockerfile.mail
|
||||||
restart: always
|
restart: always
|
||||||
ports:
|
ports:
|
||||||
|
- "25:25" # postfix smtp
|
||||||
- 143:143 # dovecot imap
|
- 143:143 # dovecot imap
|
||||||
- 993:993 # dovecot imaps
|
- 993:993 # dovecot imaps
|
||||||
- 465:465 # postfix smtps
|
- 465:465 # postfix smtps
|
||||||
@ -45,6 +46,7 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
# Dynamic data
|
# Dynamic data
|
||||||
- /home:/home:rw # User home directories for Maildir access
|
- /home:/home:rw # User home directories for Maildir access
|
||||||
|
- /home/jketreno/docker/webserver/mail/etc/postfix:/etc/postfix:rw
|
||||||
- /home/jketreno/docker/webserver/data/mailman/core/var/data/postfix_lmtp:/opt/mailman/postfix_lmtp # Used for LMTP to ketrenet-mailman-core (rw so it is dynamically updated)
|
- /home/jketreno/docker/webserver/data/mailman/core/var/data/postfix_lmtp:/opt/mailman/postfix_lmtp # Used for LMTP to ketrenet-mailman-core (rw so it is dynamically updated)
|
||||||
- /home/jketreno/docker/webserver/keys/cron/etc/letsencrypt/live:/etc/letsencrypt/live
|
- /home/jketreno/docker/webserver/keys/cron/etc/letsencrypt/live:/etc/letsencrypt/live
|
||||||
- /home/jketreno/docker/webserver/keys/cron/etc/letsencrypt/archive:/etc/letsencrypt/archive
|
- /home/jketreno/docker/webserver/keys/cron/etc/letsencrypt/archive:/etc/letsencrypt/archive
|
||||||
@ -54,7 +56,6 @@ services:
|
|||||||
- /home/jketreno/docker/webserver/data/mail/var/spool/mail:/var/spool/mail:rw
|
- /home/jketreno/docker/webserver/data/mail/var/spool/mail:/var/spool/mail:rw
|
||||||
- /home/jketreno/docker/webserver/data/mail/var/lib/clamav:/var/lib/clamav:rw
|
- /home/jketreno/docker/webserver/data/mail/var/lib/clamav:/var/lib/clamav:rw
|
||||||
- /home/jketreno/docker/webserver/keys/mail/etc/spamassassin/sa-update-keys/:/etc/spamassassin/sa-update-keys:rw
|
- /home/jketreno/docker/webserver/keys/mail/etc/spamassassin/sa-update-keys/:/etc/spamassassin/sa-update-keys:rw
|
||||||
- /home/jketreno/docker/webserver/mail/etc/postfix:/etc/postfix:rw
|
|
||||||
- /home/jketreno/docker/webserver/keys/mail/etc/opendkim:/etc/opendkim-private:rw
|
- /home/jketreno/docker/webserver/keys/mail/etc/opendkim:/etc/opendkim-private:rw
|
||||||
# Static data
|
# Static data
|
||||||
- /home/jketreno/docker/webserver/mail/etc/mailname:/etc/mailname:ro
|
- /home/jketreno/docker/webserver/mail/etc/mailname:/etc/mailname:ro
|
||||||
|
21
mail/etc/postfix/aliases
Normal file
21
mail/etc/postfix/aliases
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
# General redirections for pseudo accounts.
|
||||||
|
adm: root
|
||||||
|
bin: root
|
||||||
|
daemon: root
|
||||||
|
exim: root
|
||||||
|
lp: root
|
||||||
|
mail: root
|
||||||
|
named: root
|
||||||
|
nobody: root
|
||||||
|
postfix: root
|
||||||
|
abuse: root
|
||||||
|
ftp: root
|
||||||
|
hostmaster: root
|
||||||
|
news: root
|
||||||
|
noc: root
|
||||||
|
security: root
|
||||||
|
usenet: root
|
||||||
|
uucp: root
|
||||||
|
webmaster: root
|
||||||
|
www: root
|
||||||
|
|
@ -73,6 +73,7 @@ smtpd_tls_mandatory_ciphers = high
|
|||||||
# Alias maps and database
|
# Alias maps and database
|
||||||
alias_maps = hash:/etc/postfix/aliases
|
alias_maps = hash:/etc/postfix/aliases
|
||||||
alias_database = hash:/etc/postfix/aliases
|
alias_database = hash:/etc/postfix/aliases
|
||||||
|
virtual_alias_maps = hash:/etc/postfix/virtual_aliases
|
||||||
|
|
||||||
# Support multiple recipient delimiters (_ and +)
|
# Support multiple recipient delimiters (_ and +)
|
||||||
canonical_maps = regexp:/etc/postfix/canonical
|
canonical_maps = regexp:/etc/postfix/canonical
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
# service type private unpriv chroot wakeup maxproc command + args
|
# service type private unpriv chroot wakeup maxproc command + args
|
||||||
# (yes) (yes) (yes) (never) (100)
|
# (yes) (yes) (yes) (never) (100)
|
||||||
# ==========================================================================
|
# ==========================================================================
|
||||||
#smtp inet n - y - - smtpd
|
smtp inet n - y - - smtpd
|
||||||
# -o milter_macro_daemon_name=ORIGINATING
|
# -o milter_macro_daemon_name=ORIGINATING
|
||||||
# -o smtpd_client_restrictions=permit_sasl_authenticated,reject
|
# -o smtpd_client_restrictions=permit_sasl_authenticated,reject
|
||||||
# -o smtpd_relay_restrictions=permit_mynetworks,permit_sasl_authenticated,reject
|
# -o smtpd_relay_restrictions=permit_mynetworks,permit_sasl_authenticated,reject
|
||||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
66
mail/etc/postfix/virtual_aliases
Normal file
66
mail/etc/postfix/virtual_aliases
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
agape@ketrenos.com agape
|
||||||
|
grandma@ketrenos.com agape
|
||||||
|
mom@ketrenos.com agape
|
||||||
|
sheri@ketrenos.com agape
|
||||||
|
sherri@ketrenos.com agape
|
||||||
|
barry@ketrenos.com barry
|
||||||
|
dad@ketrenos.com barry
|
||||||
|
papa@ketrenos.com barry
|
||||||
|
bphipps@ketrenos.com bphipps
|
||||||
|
chelsea@ketrenos.com chelsea
|
||||||
|
chrisn@ketrenos.com chrisn
|
||||||
|
chris@ketrenos.com christopher
|
||||||
|
chrisk@ketrenos.com christopher
|
||||||
|
chrisotpher@ketrenos.com christopher
|
||||||
|
christopher@ketrenos.com christopher
|
||||||
|
colleen@ketrenos.com colleen
|
||||||
|
spinaker@ketrenos.com colleen
|
||||||
|
constantine@ketrenos.com constantine
|
||||||
|
demetrius@ketrenos.com demetrius
|
||||||
|
dolphin12@ketrenos.com dolphin12
|
||||||
|
elias@ketrenos.com elias
|
||||||
|
elcore@ketrenos.com george
|
||||||
|
george@ketrenos.com george
|
||||||
|
gketreno@ketrenos.com george
|
||||||
|
ketrenog@ketrenos.com george
|
||||||
|
git@ketrenos.com git
|
||||||
|
gitlab@ketrenos.com gitlab
|
||||||
|
jketreno@azurite.ketrenos.net jketreno
|
||||||
|
daddy@ketrenos.com jketreno
|
||||||
|
family-bounces@ketrenos.com jketreno
|
||||||
|
film@ketrenos.com jketreno
|
||||||
|
james@ketrenos.com jketreno
|
||||||
|
jketreno@ketrenos.com jketreno
|
||||||
|
ketrenoj@ketrenos.com jketreno
|
||||||
|
logics@ketrenos.com jketreno
|
||||||
|
logics_vcd_db@ketrenos.com jketreno
|
||||||
|
pair@ketrenos.com jketreno
|
||||||
|
robot@ketrenos.com jketreno
|
||||||
|
root@ketrenos.com jketreno
|
||||||
|
shaznat@ketrenos.com jketreno
|
||||||
|
slavod@ketrenos.com jketreno
|
||||||
|
julian@ketrenos.com julian
|
||||||
|
efax@ketrenos.com kathleen
|
||||||
|
flylady@ketrenos.com kathleen
|
||||||
|
glider@ketrenos.com kathleen
|
||||||
|
homestead@ketrenos.com kathleen
|
||||||
|
jamesdontread@ketrenos.com kathleen
|
||||||
|
kathleen@ketrenos.com kathleen
|
||||||
|
ketrenok2000@ketrenos.com kathleen
|
||||||
|
ketrenok@ketrenos.com kathleen
|
||||||
|
midwives@ketrenos.com kathleen
|
||||||
|
mommy@ketrenos.com kathleen
|
||||||
|
yahoo@ketrenos.com kathleen
|
||||||
|
ketrecam@ketrenos.com ketrecam
|
||||||
|
mailman@ketrenos.com mailman
|
||||||
|
marina@ketrenos.com marina
|
||||||
|
melissa@ketrenos.com melissa
|
||||||
|
solace@ketrenos.com melissa
|
||||||
|
michelle@ketrenos.com michelle
|
||||||
|
niamarie@ketrenos.com niamarie
|
||||||
|
mailer-daemon@ketrenos.com postmaster
|
||||||
|
clamav@ketrenos.com root
|
||||||
|
postmaster@ketrenos.com root
|
||||||
|
theo@ketrenos.com theo
|
||||||
|
zacharais@ketrenos.com zacharias
|
||||||
|
zacharias@ketrenos.com zacharias
|
66
migrate2-3
Executable file
66
migrate2-3
Executable file
@ -0,0 +1,66 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
declare src="/home/jketreno/mailman2"
|
||||||
|
declare dst="unset"
|
||||||
|
|
||||||
|
fail() {
|
||||||
|
echo "${*}" >&2
|
||||||
|
if [[ ! -d "${src}" ]] && [[ -d "${dst}" ]]; then
|
||||||
|
sudo mv "${dst}" "${src}"
|
||||||
|
fi
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Full set of lists to migrate
|
||||||
|
#lists=(family jcubed test mosj vansicklefamily )
|
||||||
|
|
||||||
|
# Everything has been migrated
|
||||||
|
lists=()
|
||||||
|
|
||||||
|
if [[ -d "${src}" ]]; then
|
||||||
|
sudo chown jketreno:jketreno -R "${src}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! ssh email.ketrenos.com \
|
||||||
|
"sudo rsync --delete -aprl --progress /var/lib/mailman/ ${src}/"; then
|
||||||
|
fail "rsync"
|
||||||
|
fi
|
||||||
|
|
||||||
|
dst="/home/jketreno/docker/webserver/data/mailman/core/mailman2"
|
||||||
|
if ! sudo mv "${src}" "${dst}"; then
|
||||||
|
fail "mv ${src} ${dst}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
for list in "${lists[@]}"; do
|
||||||
|
echo "Initializing $list"
|
||||||
|
if ! docker exec -it ketrenet-mailman-core \
|
||||||
|
mailman --run-as-root import21 "${list}@ketrenos.com" \
|
||||||
|
"/opt/mailman/mailman2/lists/${list}/config.pck"; then
|
||||||
|
fail "mailman --run-as-root import21 $list@ketrenos.com /opt/mailman/mailman2/lists/${list}/config.pck"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
new_dst="/home/jketreno/docker/webserver/data/mailman/web/config/mailman2"
|
||||||
|
if ! sudo mv "${dst}" "${new_dst}"; then
|
||||||
|
fail "mv ${dst} ${new_dst}"
|
||||||
|
fi
|
||||||
|
dst="${new_dst}"
|
||||||
|
|
||||||
|
for list in "${lists[@]}"; do
|
||||||
|
echo "Hyper Kitty archive $list"
|
||||||
|
if ! docker exec -it ketrenet-mailman-web \
|
||||||
|
python manage.py hyperkitty_import \
|
||||||
|
-l "${list}@ketrenos.com" \
|
||||||
|
"/opt/mailman-web/mailman2/archives/private/${list}.mbox/${list}.mbox"; then
|
||||||
|
fail "python manage.py hyperkitty_import"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! docker exec -it ketrenet-mailman-web \
|
||||||
|
python manage.py update_index_one_list "${list}@ketrenos.com"; then
|
||||||
|
fail "python manage.py update_index_one_list ${list}@ketrenos.com"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if ! sudo mv "${dst}" "${src}"; then
|
||||||
|
fail "mv ${dst} ${src}"
|
||||||
|
fi
|
Loading…
x
Reference in New Issue
Block a user