1
1
#! /bin/sh
2
2
3
- echo " Regenerating 'vmailbox' for given users"
4
-
3
+ echo " Regenerating postfix 'vmailbox' and 'virtual' for given users"
4
+ # rm /etc/postfix/virtual
5
+ # rm /etc/postfix/virtual.db
6
+ # rm /etc/postfix/vmailbox
7
+ # rm /etc/postfix/vmailbox.db
5
8
echo " # WARNING: this file is auto-generated. Do not modify locally" > /etc/postfix/vmailbox
6
- echo $docker_mail_users | sed -r ' s/\[|\]|\x27| //g' | sed -r ' s/,/\n/g' > /tmp/docker_mail_users
7
- while IFS=$' |' read -r login pass
9
+ while IFS=$' |' read -r login pass aliases
8
10
do
11
+
9
12
# Setting variables for better readability
10
13
user=$( echo ${login} | cut -d @ -f1)
11
14
domain=$( echo ${login} | cut -d @ -f2)
12
15
13
16
# Let's go!
14
- echo " user '${user} ' for domain '${domain} ' with password '${pass} '"
17
+ echo " user '${user} ' for domain '${domain} ' with password '******** '"
15
18
echo " ${login} ${domain} /${user} /" >> /etc/postfix/vmailbox
16
19
userdb ${login} set uid=5000 gid=5000 home=/var/mail/${domain} /${user} mail=/var/mail/${domain} /${user}
17
20
echo " ${pass} " | userdbpw -md5 | userdb ${login} set systempw
20
23
maildirmake /var/mail/${domain} /${user}
21
24
echo ${domain} >> /tmp/vhost.tmp
22
25
23
- done < /tmp/docker_mail_users
24
- rm /tmp/docker_mail_users
25
- makeuserdb
26
-
27
- echo " Regenerating 'virtual' for given aliases"
28
- echo $docker_mail_aliases | sed -r ' s/\[|\]|\x27|//g' | sed -r ' s/, /\n/g' > /tmp/docker_mail_aliases
29
- while IFS=$' |' read -r login aliases
30
- do
26
+ # Aliases
31
27
arr=$( echo $aliases | tr " ," " \n" )
32
28
for alias in $arr
33
29
do
34
- user=$( echo ${login} | cut -d @ -f1)
35
- domain=$( echo ${login} | cut -d @ -f2)
36
30
echo " $alias @$domain redirects to $login "
37
31
echo " $alias @$domain \t$login " >> /etc/postfix/virtual
38
32
done
39
- done < /tmp/docker_mail_aliases
40
- rm /tmp/docker_mail_aliases
33
+
34
+ done < /tmp/postfix/accounts.cf
35
+ makeuserdb
41
36
42
37
echo " Postfix configurations"
43
38
postmap /etc/postfix/vmailbox
44
- touch /etc/postfix/virtual && postmap /etc/postfix/virtual
39
+ postmap /etc/postfix/virtual
45
40
sed -i -r ' s/DOCKER_MAIL_DOMAIN/' " $docker_mail_domain " ' /g' /etc/postfix/main.cf
46
41
cat /tmp/vhost.tmp | sort | uniq >> /etc/postfix/vhost && rm /tmp/vhost.tmp
47
42
@@ -57,6 +52,7 @@ echo "required_hits 5.0" >> /etc/mail/spamassassin/local.cf
57
52
echo " report_safe 0" >> /etc/mail/spamassassin/local.cf
58
53
echo " required_score 5" >> /etc/mail/spamassassin/local.cf
59
54
echo " rewrite_header Subject ***SPAM***" >> /etc/mail/spamassassin/local.cf
55
+ cp /tmp/spamassassin/rules.cf /etc/spamassassin/
60
56
61
57
echo " Starting daemons"
62
58
/etc/init.d/rsyslog start
0 commit comments